рдХрд┐рддрд╛рдм рдХрд╛рдлреНрдХрд╛ рд╕реНрдЯреНрд░реАрдореНрд╕ рдЗрди рдПрдХреНрд╢рдиред рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдФрд░ microservices ┬╗

рдЫрд╡рд┐ рд╣рд╛рдп, рд╣рдмреНрд░реЛрдЬрд╝рд┐рддреЗрд▓реА! рдпрд╣ рдкреБрд╕реНрддрдХ рдХрд┐рд╕реА рднреА рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИ рдЬреЛ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреЛ рд╕рдордЭрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИред рд╡рд┐рддрд░рд┐рдд рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЛ рд╕рдордЭрдиреЗ рд╕реЗ рдЖрдкрдХреЛ рдХрд╛рдлреНрдХрд╛ рдФрд░ рдХрд╛рдлреНрдХрд╛ рдзрд╛рд░рд╛рдУрдВ рдХреЛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рд╕рдордЭрдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓реЗрдЧреАред рдХрд╛рдлреНрдХрд╛ рдХреА рд░реВрдкрд░реЗрдЦрд╛ рдХреЛ рдЬрд╛рдирдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ: рдореИрдВ рдЖрдкрдХреЛ рд╡рд╣ рд╕рдм рдХреБрдЫ рдмрддрд╛рдКрдВрдЧрд╛ рдЬрд┐рд╕рдХреА рдЖрдкрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕ рдкреБрд╕реНрддрдХ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдЕрдиреБрднрд╡реА рдХрд╛рдлреНрдХрд╛ рдбреЗрд╡рд▓рдкрд░реНрд╕, рдиреМрд╕рд┐рдЦрд┐рдпреЛрдВ рдХреА рддрд░рд╣, рдХрд╛рдлреНрдХрд╛ рдзрд╛рд░рд╛рдУрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рджрд┐рд▓рдЪрд╕реНрдк рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдирд╛ рд╕реАрдЦреЗрдВрдЧреЗред рдЗрдВрдЯрд░рдореАрдбрд┐рдПрдЯ рдФрд░ рдЙрдЪреНрдЪ рд╕реНрддрд░ рдХреЗ рдЬрд╛рд╡рд╛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдкрд░рд┐рдЪрд┐рдд рд╣реИрдВ рдЬреИрд╕реЗ рдХрд┐ рдзрд╛рд░рд╛рд╡рд╛рд╣рд┐рдХреАрдХрд░рдг рд╕реАрдЦреЗрдВрдЧреЗ рдХрд┐ рдХрд╛рдлреНрдХрд╛ рд╕реНрдЯреНрд░реАрдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдХреМрд╢рд▓ рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдкреБрд╕реНрддрдХ рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб рдЬрд╛рд╡рд╛ 8 рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдЬрд╛рд╡рд╛ 8 рдХреЗ рд▓реИрдореНрдмреНрдбрд╛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд╡рд╛рдХреНрдп рд╡рд┐рдиреНрдпрд╛рд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд▓реИрдореНрдмрдбрд╛ рдлрд╝рдВрдХреНрд╢рди (рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рдЕрдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдореЗрдВ) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред

рдЕрдВрд╢ред 5.3ред рдПрдХрддреНрд░реАрдХрд░рдг рдФрд░ рдЦрд┐рдбрд╝рдХреА рд╕рдВрдЪрд╛рд▓рди


рдЗрд╕ рдЦрдВрдб рдореЗрдВ, рд╣рдо рдХрд╛рдлреНрдХрд╛ рдзрд╛рд░рд╛рдУрдВ рдХреЗ рд╕рдмрд╕реЗ рдЖрд╢рд╛рдЬрдирдХ рднрд╛рдЧреЛрдВ рдХреА рдУрд░ рдмрдврд╝рддреЗ рд╣реИрдВред рдЕрдм рддрдХ рд╣рдордиреЗ рдХрд╛рдлреНрдХрд╛ рдзрд╛рд░рд╛рдУрдВ рдХреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд╣рд▓реБрдУрдВ рдХреЛ рдХрд╡рд░ рдХрд┐рдпрд╛ рд╣реИ:

  • рдПрдХ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдЯреЛрдкреЛрд▓реЙрдЬреА рдмрдирд╛рдирд╛;
  • рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рд░рд╛рдЬреНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ;
  • рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░реАрдо рдХрдиреЗрдХреНрд╢рди рдмрдирд╛рдирд╛;
  • рдШрдЯрдирд╛ рдзрд╛рд░рд╛рдУрдВ (KStream) рдФрд░ рдЕрджреНрдпрддрди рдзрд╛рд░рд╛рдУрдВ (KTable) рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ, рд╣рдо рдЗрди рд╕рднреА рддрддреНрд╡реЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рд░рдЦреЗрдВрдЧреЗред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЛ рд╡рд┐рдВрдбреЛ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдкреЗрд╢ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ - рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдПрдХ рдФрд░ рд╢рд╛рдирджрд╛рд░ рд╡рд┐рд╢реЗрд╖рддрд╛ред рд╣рдорд╛рд░рд╛ рдкрд╣рд▓рд╛ рдЙрджрд╛рд╣рд░рдг рд╕рд░рд▓ рдПрдХрддреНрд░реАрдХрд░рдг рд╣реЛрдЧрд╛ред

5.3.1ред рдЙрджреНрдпреЛрдЧ рджреНрд╡рд╛рд░рд╛ рд╕реНрдЯреЙрдХ рдХреА рдмрд┐рдХреНрд░реА рдХрд╛ рдПрдХрддреНрд░реАрдХрд░рдг


рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХрддреНрд░реАрдХрд░рдг рдФрд░ рд╕рдореВрд╣реАрдХрд░рдг рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЙрдкрдХрд░рдг рд╣реИрдВред рдкреНрд░рд╡реЗрд╢ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░рд┐рдХреЙрд░реНрдб рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдЕрдХреНрд╕рд░ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдбреЗрдЯрд╛ рд╕реЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдирдХрд╛ рд╕рдореВрд╣рди рдФрд░ рд╕рдВрдпреЛрдЬрди рдЖрд╡рд╢реНрдпрдХ рд╣реИред

рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдЖрдкрдХреЛ рдПрдХ рдЗрдВрдЯреНрд░рд╛рдбреЗ рд╡реНрдпрд╛рдкрд╛рд░реА рдХреЗ рд╕реВрдЯ рдкрд░ рдкреНрд░рдпрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬрд┐рд╕реЗ рдХрдИ рдЙрджреНрдпреЛрдЧреЛрдВ рдореЗрдВ рдХрдВрдкрдирд┐рдпреЛрдВ рдХреЗ рд╢реЗрдпрд░реЛрдВ рдХреА рдмрд┐рдХреНрд░реА рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЖрдк рдкреНрд░рддреНрдпреЗрдХ рдЙрджреНрдпреЛрдЧ рдореЗрдВ рд╕рдмрд╕реЗ рдмрдбрд╝реА рд╢реЗрдпрд░ рдмрд┐рдХреНрд░реА рдХреЗ рд╕рд╛рде рдкрд╛рдВрдЪ рдХрдВрдкрдирд┐рдпреЛрдВ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВред

рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдбреЗрдЯрд╛ рдХреЛ рд╡рд╛рдВрдЫрд┐рдд рд░реВрдк рдореЗрдВ (рд╕рд╛рдорд╛рдиреНрдп рд╢рдмреНрджреЛрдВ рдореЗрдВ) рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдЪрд░рдгреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

  1. рдПрдХ рд╡рд┐рд╖рдп-рдЖрдзрд╛рд░рд┐рдд рд╕реНрд░реЛрдд рдмрдирд╛рдПрдВ рдЬреЛ рдХрдЪреНрдЪреЗ рд╕реНрдЯреЙрдХ рдЯреНрд░реЗрдбрд┐рдВрдЧ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред рд╣рдореЗрдВ ShareVolume рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреА рд╡рд╕реНрддреБ рдХреЗ рд▓рд┐рдП StockTransaction рдХрд╛ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдореИрдк рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ StockTransaction рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдмрд┐рдХреНрд░реА рдореЗрдЯрд╛рдбреЗрдЯрд╛ рд╣реИ, рдФрд░ рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдмреЗрдЪреЗ рдЧрдП рд╢реЗрдпрд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рдбреЗрдЯрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
  2. рд╕реНрдЯреЙрдХ рдкреНрд░рддреАрдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЧреНрд░реБрдк рд╢реЗрдпрд░рд╡реЛрд▓реНрдпреВрдо рдбреЗрдЯрд╛ред рдкреНрд░рддреАрдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдореВрд╣реАрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдЗрд╕ рдбреЗрдЯрд╛ рдХреЛ рд╕реНрдЯреЙрдХ рдХреА рдмрд┐рдХреНрд░реА рдХреЗ рд╕рдмрдЯреЛрдЯрд▓реНрд╕ рдореЗрдВ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ KStream.groupBy рдкрджреНрдзрддрд┐ KGroupedStream рдХрд╛ рдПрдХ рдкреНрд░рдХрд╛рд░ рджреЗрддрд╛ рд╣реИред рдФрд░ рдЖрдк рдмрд╛рдж рдореЗрдВ KGroupedStream.reduce рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░рдХреЗ рдПрдХ KTable рдЙрджрд╛рд╣рд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

KGroupedStream рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреНрдпрд╛ рд╣реИ

KStream.groupBy рдФрд░ KStream.groupByKey рд╡рд┐рдзрд┐рдпрд╛рдБ KGroupedStream рдХреА рдПрдХ рдЖрд╡реГрддреНрддрд┐ рд▓реМрдЯрд╛рддреА рд╣реИрдВред KGroupedStream рдХреБрдВрдЬреА рджреНрд╡рд╛рд░рд╛ рд╕рдореВрд╣реАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдИрд╡реЗрдВрдЯ рд╕реНрдЯреНрд░реАрдо рдХрд╛ рдПрдХ рдордзреНрдпрд╡рд░реНрддреА рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рд╣реИред рдЗрд╕рдХреЗ рд╕рд╛рде рд╕реАрдзреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, KGroupedStream рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣рдореЗрд╢рд╛ KTable рд╣реЛрддрд╛ рд╣реИред рдФрд░ рдЪреВрдВрдХрд┐ рдПрдХрддреНрд░реАрдХрд░рдг рд╕рдВрдЪрд╛рд▓рди рдХрд╛ рдкрд░рд┐рдгрд╛рдо KTable рд╣реИ рдФрд░ рд╡реЗ рд░рд╛рдЬреНрдп рднрдВрдбрд╛рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╕рднреА рдЕрдкрдбреЗрдЯ рдЖрдЧреЗ рдирд╣реАрдВ рднреЗрдЬреЗ рдЬрд╛рдПрдВред

KTable.groupBy рд╡рд┐рдзрд┐ рдПрдХ рд╕рдорд╛рди KGroupedTable рд▓реМрдЯрд╛рддреА рд╣реИ - рдХреБрдВрдЬреА рджреНрд╡рд╛рд░рд╛ рдлрд┐рд░ рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЧрдП рдЕрдкрдбреЗрдЯ рдХреА рдзрд╛рд░рд╛ рдХрд╛ рдПрдХ рдордзреНрдпрд╡рд░реНрддреА рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ред

рдЖрдЗрдП рдПрдХ рдЫреЛрдЯрд╛ рдмреНрд░реЗрдХ рд▓реЗрдВ рдФрд░ рдЕрдВрдЬреАрд░ рдХреЛ рджреЗрдЦреЗрдВред 5.9, рдЬреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рд╣рдордиреЗ рдХреНрдпрд╛ рд╣рд╛рд╕рд┐рд▓ рдХрд┐рдпрд╛ рд╣реИред рдпрд╣ рдЯреЛрдкреЛрд▓реЙрдЬреА рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЫрд╡рд┐

рдЕрдм рдЗрд╕ рдЯреЛрдкреЛрд▓реЙрдЬреА рдХреЗ рд▓рд┐рдП рдХреЛрдб рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рддреЗ рд╣реИрдВ (рдпрд╣ src / main / java / bbejeck / Chapter_5 / AggregationsAndReducingExample.java рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ) (рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 5.2)ред

рдЫрд╡рд┐

рджрд┐рдП рдЧрдП рдХреЛрдб рд╕рдВрдХреНрд╖рд┐рдкреНрддрддрд╛ рдФрд░ рдХрдИ рд▓рд╛рдЗрдиреЛрдВ рдореЗрдВ рдХрд┐рдП рдЧрдП рдХрд╛рд░реНрдпреЛрдВ рдХреА рдПрдХ рдмрдбрд╝реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рднрд┐рдиреНрди рд╣реЛрддреЗ рд╣реИрдВред рдмрд┐рд▓реНрдбрд░.рд╕реНрдЯреНрд░реАрдо рд╡рд┐рдзрд┐ рдХреЗ рдкрд╣рд▓реЗ рдкреИрд░рд╛рдореАрдЯрд░ рдореЗрдВ, рдЖрдк рдЕрдкрдиреЗ рд▓рд┐рдП рдХреБрдЫ рдирдпрд╛ рдиреЛрдЯрд┐рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рдкреНрд░рдЧрдгрд┐рдд рдкреНрд░рдХрд╛рд░ рдХрд╛ рдорд╛рди AutoOffsetReset.EARLIEST (рдЗрд╕рдореЗрдВ рднреА рдирд╡реАрдирддрдо рд╣реИ), рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ .withOffsetResetPolicy рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕ рдЧрдгрдирд╛ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк KStream рдпрд╛ KTable рдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рд▓рд┐рдП рдСрдлрд╝рд╕реЗрдЯ рд░реАрд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рд░рдгрдиреАрддрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ; рдЗрд╕рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реЗ рдСрдлрд╝рд╕реЗрдЯ рд░реАрд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреИрд░рд╛рдореАрдЯрд░ рдкрд░ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рд╣реИред

GroupByKey рдФрд░ GroupBy

KStream рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдореЗрдВ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рджреЛ рддрд░реАрдХреЗ рд╣реИрдВ: GroupByKey рдФрд░ GroupByред рджреЛрдиреЛрдВ KGroupedTable рдХреЛ рд▓реМрдЯрд╛рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╡реИрдз рдкреНрд░рд╢реНрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ: рдЙрдирдХреЗ рдмреАрдЪ рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ рдФрд░ рдХрдм рдХрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ?

GroupByKey рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рддрдм рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм KStream рдореЗрдВ рдХреБрдВрдЬрд┐рдпрд╛рдБ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЧреИрд░-рд░рд┐рдХреНрдд рд╣реИрдВред рдФрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЭрдВрдбрд╛ "рдкреБрди: рд╡рд┐рднрд╛рдЬрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ" рдХрднреА рд╕реЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ред

GroupBy рд╡рд┐рдзрд┐ рдорд╛рдирддреА рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рд╕рдореВрд╣рди рдХреЗ рд▓рд┐рдП рдХреБрдВрдЬрд┐рдпрд╛рдБ рдмрджрд▓ рджреА рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдкреБрди: рд╡рд┐рднрд╛рдЬрди рдзреНрд╡рдЬ рдХреЛ рд╕рд╣реА рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред GroupBy рд╡рд┐рдзрд┐ рдХреЗ рдмрд╛рдж рдХрдиреЗрдХреНрд╢рди, рдПрдХрддреНрд░реАрдХрд░рдг, рдЖрджрд┐ рдкреНрд░рджрд░реНрд╢рди рдХрд░рдиреЗ рд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреБрди: рд╡рд┐рднрд╛рдЬрди рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
рд╕рд╛рд░рд╛рдВрд╢: рдЖрдкрдХреЛ рдЬрдм рднреА рд╕рдВрднрд╡ рд╣реЛ GroupBy рдХреЗ рдмрдЬрд╛рдп GroupByKey рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

MapValues тАЛтАЛрдФрд░ GroupBy рд╡рд┐рдзрд┐рдпрд╛рдБ рдХреНрдпрд╛ рд╕рдордЭ рдореЗрдВ рдЖрддреА рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпреЛрдЧ () рд╡рд┐рдзрд┐ рдкрд░ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ (рдпрд╣ src / main / java / bbejeck / model / ShareVolume.java рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдорд┐рд▓ рд╕рдХрддреА рд╣реИ) (рд╕реВрдЪреАрдХрд░рдг 5.3)ред

рдЫрд╡рд┐

ShareVolume.sum рд╡рд┐рдзрд┐ рд╕реНрдЯреЙрдХ рдХреА рдмрд┐рдХреНрд░реА рдорд╛рддреНрд░рд╛ рдХрд╛ рдЙрдк-рдпреЛрдЧ рд▓реМрдЯрд╛рддреА рд╣реИ, рдФрд░ рд╕рдВрдкреВрд░реНрдг рдЧрдгрдирд╛ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдПрдХ KTable <string, ShareVolume> рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реЛрддрд╛ рд╣реИред рдЕрдм рдЖрдк рд╕рдордЭрддреЗ рд╣реИрдВ рдХрд┐ KTable рдХреА рдХреНрдпрд╛ рднреВрдорд┐рдХрд╛ рд╣реИред рдЬрдм ShareVolume рдСрдмреНрдЬреЗрдХреНрдЯ рдЖрддреЗ рд╣реИрдВ, рддреЛ рдирд╡реАрдирддрдо рд╡рд░реНрддрдорд╛рди рдЕрджреНрдпрддрди рдЗрд╕реА KTable рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдпрд╣ рди рднреВрд▓реЗрдВ рдХрд┐ рд╕рднреА рдЕрдкрдбреЗрдЯ рдкрд┐рдЫрд▓реЗ shareVolumeKTable рдореЗрдВ рдкрд░рд┐рд▓рдХреНрд╖рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕рднреА рдХреЛ рдЖрдЧреЗ рдирд╣реАрдВ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрд╕ KTable рдХреА рд╕рд╣рд╛рдпрддрд╛ рд╕реЗ, рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рдЙрджреНрдпреЛрдЧ рдореЗрдВ рдЙрдЪреНрдЪрддрдо рд╢реЗрдпрд░ рдмрд┐рдХреНрд░реА рдХреЗ рд╕рд╛рде рдкрд╛рдВрдЪ рдХрдВрдкрдирд┐рдпреЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХрддреНрд░реАрдХрд░рдг (рдмреЗрдЪреЗ рдЧрдП рд╢реЗрдпрд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛) рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣рдорд╛рд░реА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдкрд╣рд▓реЗ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рджреМрд░рд╛рди рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд╕рдорд╛рди рд╣реЛрдЧреАред

  1. рдЙрджреНрдпреЛрдЧ рджреНрд╡рд╛рд░рд╛ рдЕрд▓рдЧ-рдЕрд▓рдЧ ShareVolume рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ GroupBy рдСрдкрд░реЗрд╢рди рдХрд░реЗрдВ
  2. ShareVolume рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рд╕рд╛рд░рд╛рдВрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝реЗрдВред рдЗрд╕ рдмрд╛рд░, рдПрдХрддреНрд░реАрдХрд░рдг рд╡рд╕реНрддреБ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЖрдХрд╛рд░ рдХреА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХрддрд╛рд░ рд╣реИред рдмрд┐рдХрдиреЗ рд╡рд╛рд▓реА рд╕рдмрд╕реЗ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рд╡рд╛рд▓реА рдХреЗрд╡рд▓ рдкрд╛рдВрдЪ рдХрдВрдкрдирд┐рдпреЛрдВ рдХреЛ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЖрдХрд╛рд░ рдХреА рдХрддрд╛рд░ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред
  3. рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдорд╛рди рдореЗрдВ рдкрд┐рдЫрд▓реЗ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рд╕реЗ рд▓рд╛рдЗрдиреЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ рдФрд░ рдЙрджреНрдпреЛрдЧ рджреНрд╡рд╛рд░рд╛ рд╢реЗрдпрд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдкрд╛рдВрдЪ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд┐рдХреНрд░реА рд▓реМрдЯрд╛рдПрдВред
  4. рд╡рд┐рд╖рдп рдХреЗ рд▓рд┐рдП рд╕реНрдЯреНрд░рд┐рдВрдЧ рд░реВрдк рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рд▓рд┐рдЦреЗрдВред

рдЕрдВрдЬреАрд░ рдореЗрдВред 5.10 рдбреЗрдЯрд╛ рдЖрдВрджреЛрд▓рди рдХреА рдЯреЛрдкреЛрд▓реЙрдЬреА рдХрд╛ рдПрдХ рдЧреНрд░рд╛рдл рджрд┐рдЦрд╛рддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рджреВрд╕рд░рд╛ рджреМрд░ рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИред

рдЫрд╡рд┐

рдЕрдм, рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЗрд╕ рджреВрд╕рд░реЗ рджреМрд░ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╕рдордЭрдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдЗрд╕рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдЖрдк рдЗрд╕реЗ рдлрд╝рд╛рдЗрд▓ src / main / java / bbejeck / Chapter_5 / AggregationsAndReducingExample.java) (рд╕реВрдЪреА 5.4) рдореЗрдВ рджреЗрдЦреЗрдВрдЧреЗред

рдЗрд╕ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝рд░ рдореЗрдВ рдлрд┐рдХреНрд╕реНрдб рдХреНрдпреВ рд╡реЗрд░рд┐рдПрдмрд▓ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдХрд╕реНрдЯрдо рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИ - java.util.TreeSet рдХреЗ рд▓рд┐рдП рдПрдХ рдПрдбреЗрдкреНрдЯрд░, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдмреЗрдЪреЗ рдЧрдП рд╢реЗрдпрд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдШрдЯрддреЗ рдХреНрд░рдо рдореЗрдВ рдПрди рдЙрдЪреНрдЪрддрдо рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЫрд╡рд┐

рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА GroupBy рдФрд░ mapValues тАЛтАЛрдкрд░ рдХреЙрд▓ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдордиреЗ рдЙрди рдкрд░ рд░реЛрдХ рдирд╣реАрдВ рд▓рдЧрд╛рдИ рд╣реИ (рд╣рдо KTable.toStream рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ KTable.print рд╡рд┐рдзрд┐ рдкрджрд╛рд╡рдирдд рд╣реИ)ред рд▓реЗрдХрд┐рди рдЖрдкрдиреЗ рдЕрднреА рддрдХ рдПрдЧреНрд░реАрдЧреЗрдЯ () рдкрджреНрдзрддрд┐ рдХреЗ рдХреЗрдЯреЗрдмрд▓ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдореЗрдВ рдХреБрдЫ рд╕рдордп рд╡реНрдпрддреАрдд рдХрд░реЗрдВрдЧреЗред

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдХреЛ рдпрд╛рдж рд╣реИ, KTable рдЗрд╕ рддрдереНрдп рд╕реЗ рдкреНрд░рддрд┐рд╖реНрдард┐рдд рд╣реИ рдХрд┐ рдПрдХ рд╣реА рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рд░рд┐рдХреЙрд░реНрдб рдХреЛ рдЕрдкрдбреЗрдЯ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред KTable рдирдП рдХреЗ рд╕рд╛рде рдкреБрд░рд╛рдиреЗ рд░рд┐рдХреЙрд░реНрдб рдХреЛ рдмрджрд▓ рджреЗрддрд╛ рд╣реИред рдПрдХрддреНрд░реАрдХрд░рдг рдЙрд╕реА рддрд░рд╣ рд╕реЗ рд╣реЛрддрд╛ рд╣реИ: рдПрдХ рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рдкрд┐рдЫрд▓реЗ рд░рд┐рдХреЙрд░реНрдб рдПрдХрддреНрд░ рд╣реЛрддреЗ рд╣реИрдВред рдЬрдм рдХреЛрдИ рд░рд┐рдХреЙрд░реНрдб рдЖрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рдПрдбрд┐рдЯрд░ (рдПрдЧреНрд░реАрдЧреЗрдЯ рд╡рд┐рдзрд┐ рдореЗрдВ рдХреЙрд▓ рдореЗрдВ рджреВрд╕рд░рд╛ рдкреИрд░рд╛рдореАрдЯрд░) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдлрд┐рдХреНрд╕реНрдбрд╕рд╛рдЗрдЬрд╝рдкрд╛рдпрд░рд┐рдЯреАрдХреНрдпреВрдпреВ рд╡рд░реНрдЧ рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЙрд╕реА рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рдПрдХ рдФрд░ рд░рд┐рдХреЙрд░реНрдб рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рд╣реИ, рддреЛ рдкреБрд░рд╛рдирд╛ рд░рд┐рдХреЙрд░реНрдб рд╕рдмрдЯреНрд░реИрдХреНрдЯрд░ (рдХреЙрд▓ рдЗрди рдПрдЧреНрд░реАрдЧреЗрдЯ рд╡рд┐рдзрд┐ рдореЗрдВ рддреАрд╕рд░рд╛ рдкреИрд░рд╛рдореАрдЯрд░) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдПрдЧреНрд░реАрдЧреЗрдЯрд░, рдлрд┐рдХреНрд╕реНрдбрд╕рд╛рдЗрдкрд░рд┐рдпрд░рд┐рдЯреА рдХреНрдпреВ, рд╕рднреА рдорд╛рдиреЛрдВ рдХреЛ рдПрдХ рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рдПрдХрддреНрд░рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд┐рдХрдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕реНрдЯреЙрдХ рдХреА рдорд╛рддреНрд░рд╛ рдПрди рдХреА рдЪрд▓рддреА рд░рд╛рд╢рд┐ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдореЗрдВ рдЕрдм рддрдХ рдмреЗрдЪреЗ рдЧрдП рд╢реЗрдпрд░реЛрдВ рдХреА рдХреБрд▓ рд╕рдВрдЦреНрдпрд╛ рд╣реИред KTable рдЖрдкрдХреЛ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЧрд╛ рдХрд┐ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрд┐рди рдХрдВрдкрдирд┐рдпреЛрдВ рдХреЗ рд╢реЗрдпрд░реЛрдВ рдХреЛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмреЗрдЪрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдЕрджреНрдпрддрди рдХреЗ рд░реЛрд▓рд┐рдВрдЧ рдПрдХрддреНрд░реАрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рд╣рдордиреЗ рджреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд╛рдо рдХрд░рдирд╛ рд╕реАрдЦрд╛:

  • KTable рдореЗрдВ рд╕рдореВрд╣ рдорд╛рди рдЙрдирдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рдореБрдЦ рдЖрдо рд╣реИ;
  • рдЗрди рд╕рдореВрд╣рд┐рдд рдореВрд▓реНрдпреЛрдВ рдкрд░ рджреГрдврд╝реАрдХрд░рдг рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг рдЬреИрд╕реЗ рдЙрдкрдпреЛрдЧреА рдХрд╛рд░реНрдп рдХрд░реЗрдВред

рдЗрди рдСрдкрд░реЗрд╢рдиреЛрдВ рдХреЛ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХрдлрд╝реНрдХрд╛ рд╕реНрдЯреНрд░реАрдореНрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреЗ рдЕрд░реНрде рдХреЛ рд╕рдордЭрдиреЗ рдФрд░ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рдЬрд╛рдирдХрд╛рд░реА рд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВред

рд╣рдо рдЗрд╕ рдХрд┐рддрд╛рдм рдореЗрдВ рдкрд╣рд▓реЗ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рдХреБрдЫ рдкреНрд░рдореБрдЦ рдЕрд╡рдзрд╛рд░рдгрд╛рдУрдВ рдХреЛ рднреА рд╕рд╛рде рд▓рд╛рдП рд╣реИрдВред рдЕрдзреНрдпрд╛рдп 4 рдореЗрдВ, рд╣рдордиреЗ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рдХрд┐ рдПрдХ рдЕрд╕рдлрд▓-рд╕реБрд░рдХреНрд╖рд┐рдд, рд╕реНрдерд╛рдиреАрдп рд░рд╛рдЬреНрдп рдПрдХ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рдХрд┐рддрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдЗрд╕ рдЕрдзреНрдпрд╛рдп рдореЗрдВ рдкрд╣рд▓рд╛ рдЙрджрд╛рд╣рд░рдг рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рд╕реНрдерд╛рдиреАрдп рд╕реНрдерд┐рддрд┐ рдЗрддрдиреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХреНрдпреЛрдВ рд╣реИ - рдЗрд╕рд╕реЗ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рдХреНрдпрд╛ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦреА рд╣реИред рд╕реНрдерд╛рдиреАрдп рдкрд╣реБрдВрдЪ рдиреЗрдЯрд╡рд░реНрдХ рджреЗрд░реА рд╕реЗ рдмрдЪрд╛рддреА рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЕрдзрд┐рдХ рдЙрддреНрдкрд╛рджрдХ рдФрд░ рддреНрд░реБрдЯрд┐ рдкреНрд░рддрд┐рд░реЛрдзреА рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред

рдХрд┐рд╕реА рднреА рджреГрдврд╝ рд╕рдВрдХрд▓реНрдк рдпрд╛ рдПрдХрддреНрд░реАрдХрд░рдг рдСрдкрд░реЗрд╢рди рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд░рддреЗ рд╕рдордп, рдЖрдкрдХреЛ рд░рд╛рдЬреНрдп рд╕реНрдЯреЛрд░ рдХрд╛ рдирд╛рдо рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдХрдиреНрд╡реЛрдХреНрдпреВрд▓реЗрд╢рди рдФрд░ рдПрдЧреНрд░реАрдЧреЗрд╢рди рдСрдкрд░реЗрд╢рдВрд╕ рдПрдХ KTable рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ KTable рдкреБрд░рд╛рдиреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдирдП рдХреЗ рд╕рд╛рде рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдЯреЗрдЯ рд╕реНрдЯреЛрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рджреЗрдЦрд╛ рд╣реИ, рд╕рднреА рдЕрдкрдбреЗрдЯ рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдХреЗ рдиреАрдЪреЗ рдирд╣реАрдВ рднреЗрдЬреЗ рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдПрдХрддреНрд░реАрдХрд░рдг рд╕рдВрдЪрд╛рд▓рди рдЕрдВрддрд┐рдо рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдП рдЧрдП рд╣реИрдВред рдпрджрд┐ рд╕реНрдерд╛рдиреАрдп рд░рд╛рдЬреНрдп рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ KTable рдЖрдЧреЗ рд╕рднреА рдПрдХрддреНрд░реАрдХрд░рдг рдФрд░ рджреГрдврд╝ рд╕рдВрдХрд▓реНрдк рдкрд░рд┐рдгрд╛рдо рднреЗрдЬреЗрдЧрд╛ред

рдЕрдЧрд▓рд╛, рд╣рдо рд╕рдордп рдХреА рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЕрд╡рдзрд┐ рдХреЗ рднреАрддрд░ - рдЬреИрд╕реЗ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ, рддрдерд╛рдХрдерд┐рдд рд╡рд┐рдВрдбреЛ рд╕рдВрдЪрд╛рд▓рдиред

5.3.2ред рд╡рд┐рдВрдбреЛ рд╕рдВрдЪрд╛рд▓рди


рдкрд┐рдЫрд▓реЗ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ, рд╣рдордиреЗ "рд░реЛрд▓рд┐рдВрдЧ" рдХрдиреНрд╡реЗрдВрд╢рди рдФрд░ рдПрдХрддреНрд░реАрдХрд░рдг рдкреЗрд╢ рдХрд┐рдпрд╛ред рдЖрд╡реЗрджрди рдиреЗ рдкрд╛рдВрдЪ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд┐рдХрдиреЗ рд╡рд╛рд▓реЗ рд╢реЗрдпрд░реЛрдВ рдХреЗ рдмрд╛рдж рдХреЗ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рд╕рд╛рде рд╕реНрдЯреЙрдХ рдХреА рдмрд┐рдХреНрд░реА рдХрд╛ рдПрдХ рдирд┐рд░рдВрддрд░ рджреГрдврд╝ рд╕рдВрдХрд▓реНрдк рдХрд┐рдпрд╛ред

рдХрднреА-рдХрднреА рдЗрд╕ рддрд░рд╣ рдХреЗ рдирд┐рд░рдВрддрд░ рдПрдХрддреНрд░реАрдХрд░рдг рдФрд░ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рдкреБрд╖реНрдЯрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдФрд░ рдХрднреА-рдХрднреА рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдордп рдкрд░ рдСрдкрд░реЗрд╢рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЧрдгрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдкрд┐рдЫрд▓реЗ 10 рдорд┐рдирдЯ рдореЗрдВ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдХрдВрдкрдиреА рдХреЗ рд╢реЗрдпрд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд┐рддрдиреЗ рд╕реНрдЯреЙрдХ рдПрдХреНрд╕рдЪреЗрдВрдЬ рд▓реЗрдирджреЗрди рдХрд┐рдП рдЧрдП рд╣реИрдВред рдпрд╛ рдХрд┐рддрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдиреЗ рдЕрдВрддрд┐рдо 15 рдорд┐рдирдЯ рдореЗрдВ рдПрдХ рдирдП рдмреИрдирд░ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд┐рдпрд╛ред рдПрдХ рдЖрд╡реЗрджрди рдХрдИ рдмрд╛рд░ рдРрд╕реЗ рдСрдкрд░реЗрд╢рди рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕рдордп рдЕрдВрддрд░рд╛рд▓ (рд╕рдордп рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ) рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд╕рд╛рдеред

рдЦрд░реАрджрд╛рд░ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдирд┐рдордп рд▓реЗрдирджреЗрди рдХреА рдЧрдгрдирд╛


рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╣рдо рдХрдИ рд╡реНрдпрд╛рдкрд╛рд░рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рдирд┐рдордп рд▓реЗрдирджреЗрди рдкрд░ рдирдЬрд╝рд░ рд░рдЦрдиреЗ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рд╣реЛрдВрдЧреЗ - рдпрд╛ рддреЛ рдмрдбрд╝реЗ рд╕рдВрдЧрдарди рдпрд╛ рд╕реНрдорд╛рд░реНрдЯ рдПрдХрд▓-рд╣рд╛рде рд╡рд╛рд▓реЗ рдлрд╛рдЗрдиреЗрдВрд╕рд░ред

рдЗрд╕ рдЯреНрд░реИрдХрд┐рдВрдЧ рдХреЗ рджреЛ рд╕рдВрднрд╛рд╡рд┐рдд рдХрд╛рд░рдг рд╣реИрдВред рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдХрд┐ рдмрд╛рдЬрд╛рд░ рдХреЗ рдиреЗрддрд╛ рдХреНрдпрд╛ рдЦрд░реАрдж / рдмрд┐рдХреНрд░реА рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдпрджрд┐ рдпреЗ рдмрдбрд╝реЗ рдЦрд┐рд▓рд╛рдбрд╝реА рдФрд░ рдкрд░рд┐рд╖реНрдХреГрдд рдирд┐рд╡реЗрд╢рдХ рдЕрдкрдиреЗ рд▓рд┐рдП рдЕрд╡рд╕рд░ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЙрдирдХреА рд░рдгрдиреАрддрд┐ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред рджреВрд╕рд░рд╛ рдХрд╛рд░рдг рдЕрдВрджрд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрд╡реИрдз рд▓реЗрдирджреЗрди рдХреЗ рдХрд┐рд╕реА рднреА рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдВрдХреЗрдд рдХреЛ рдиреЛрдЯрд┐рд╕ рдХрд░рдиреЗ рдХреА рдЗрдЪреНрдЫрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреНрд░реЗрд╕ рд╡рд┐рдЬреНрдЮрдкреНрддрд┐ рдХреЗ рд╕рд╛рде рдмрд┐рдХреНрд░реА рдореЗрдВ рдмрдбрд╝реЗ рд╕реНрдкрд╛рдЗрдХреНрд╕ рдХреЗ рд╕рд╣рд╕рдВрдмрдВрдз рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдРрд╕реА рдЯреНрд░реИрдХрд┐рдВрдЧ рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ рдХрджрдо рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:

  • рд╕реНрдЯреЙрдХ-рд▓реЗрдирджреЗрди рд╡рд┐рд╖рдп рд╕реЗ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдЯреНрд░реАрдо рдмрдирд╛рдирд╛;
  • рдЧреНрд░рд╛рд╣рдХ рдЖрдИрдбреА рдФрд░ рд╕реНрдЯреЙрдХ рдХреЗ рдкреНрд░рддреАрдХ рджреНрд╡рд╛рд░рд╛ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд░рд┐рдХреЙрд░реНрдб рдХрд╛ рд╕рдореВрд╣рдиред GroupBy рд╡рд┐рдзрд┐ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЙрд▓ KGroupedStream рд╡рд░реНрдЧ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреЗрддрд╛ рд╣реИ;
  • KGroupedStream.windowedBy рдПрдХ рдЕрд╕реНрдерд╛рдпреА рд╡рд┐рдВрдбреЛ рд╕реЗ рдШрд┐рд░рд╛ рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░реАрдо рджреЗрддрд╛ рд╣реИ, рдЬреЛ рд╡рд┐рдВрдбреЛ рдПрдХрддреНрд░реАрдХрд░рдг рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд╡рд┐рдВрдбреЛ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, TimeWindowedKStream рдпрд╛ SessionWindowedKStream рд╡рд╛рдкрд╕ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ;
  • рдПрдХ рдПрдХрддреНрд░реАрдХрд░рдг рдСрдкрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рд▓реЗрдирджреЗрди рдХреА рдЧрдгрдирд╛ред рд╡рд┐рдВрдбреЛ рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░реАрдо рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕ рдЧрдгрдирд╛ рдореЗрдВ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд░рд┐рдХреЙрд░реНрдб рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ;
  • рдПрдХ рд╡рд┐рд╖рдп рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдгрд╛рдо рд▓рд┐рдЦрдирд╛ рдпрд╛ рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдЙрдиреНрд╣реЗрдВ рдХрдВрд╕реЛрд▓ рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рдирд╛ред

рдЗрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдЯреЛрдкреЛрд▓реЙрдЬреА рд╕рд░рд▓ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреА рджреГрд╢реНрдп рддрд╕реНрд╡реАрд░ рдЪреЛрдЯ рдирд╣реАрдВ рдХрд░рддреА рд╣реИред рддрд╕реНрд╡реАрд░ рдХреЛ рджреЗрдЦрд┐рдПред 5.11ред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╣рдо рдЦрд┐рдбрд╝рдХреА рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рдХреЛрдб рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред

рдЫрд╡рд┐

рдЦрд┐рдбрд╝рдХреА рдХреЗ рдкреНрд░рдХрд╛рд░


рдХрдлрд╝реНрдХрд╛ рдзрд╛рд░рд╛рдУрдВ рдореЗрдВ рддреАрди рдкреНрд░рдХрд╛рд░ рдХреА рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдБ рд╣реИрдВ:

  • рд╕рддреНрд░;
  • рдЯрдореНрдмрд▓рд┐рдВрдЧ (рдЯрдореНрдмрд▓рд┐рдВрдЧ);
  • рд╕реНрд▓рд╛рдЗрдбрд┐рдВрдЧ / "рдХреВрдж" (рд╕реНрд▓рд╛рдЗрдбрд┐рдВрдЧ / рд╣реЛрдкрд┐рдВрдЧ)ред

рдХрд┐рд╕рдХреЛ рдЪреБрдирдирд╛ рд╣реИ рдпрд╣ рд╡реНрдпрд╡рд╕рд╛рдп рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред "рдЯрдВрдмрд▓рд┐рдВрдЧ" рдФрд░ "рдЬрдВрдкрд┐рдВрдЧ" рд╡рд┐рдВрдбреЛ рд╕рдордп рдореЗрдВ рд╕реАрдорд┐рдд рд╣реИрдВ, рдЬрдмрдХрд┐ рд╕рддреНрд░ рдкреНрд░рддрд┐рдмрдВрдз рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛рд░реНрдпреЛрдВ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реИрдВ - рд╕рддреНрд░ рдХреА рдЕрд╡рдзрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд┐рддрдиреА рд╕рдХреНрд░рд┐рдпрддрд╛ рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИред рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рдирд╣реАрдВ рднреВрд▓рдирд╛ рд╣реИ рдХрд┐ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдВ рд░рд┐рдХреЙрд░реНрдбреНрд╕ рдХреА рддрд╛рд░реАрдЦ / рд╕рдордп рдЯрд┐рдХрдЯреЛрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВ, рдФрд░ рд╕рд┐рд╕реНрдЯрдо рд╕рдордп рдкрд░ рдирд╣реАрдВред

рдЗрд╕рдХреЗ рдмрд╛рдж, рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рдВрдбреЛ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдЯреЛрдкреЛрд▓реЙрдЬреА рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВред рдкреВрд░реНрдг рдХреЛрдб рдХреЗрд╡рд▓ рдкрд╣рд▓реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЦрд┐рдбрд╝рдХреА рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрдиреНрдп рдкреНрд░рдХрд╛рд░ рдХреА рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рднреА рдирд╣реАрдВ рдмрджрд▓реЗрдЧрд╛ред

рд╕рддреНрд░ рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдВ


рд╕рддреНрд░ рд╡рд┐рдВрдбреЛ рдЕрдиреНрдп рд╕рднреА рд╡рд┐рдВрдбреЛ рдкреНрд░рдХрд╛рд░реЛрдВ рд╕реЗ рдмрд╣реБрдд рдЕрд▓рдЧ рд╣реИред рд╡реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдЧрддрд┐рд╡рд┐рдзрд┐ (рдпрд╛ рдЗрдХрд╛рдИ рдХреА рдЧрддрд┐рд╡рд┐рдзрд┐ рдЬрд┐рд╕реЗ рдЖрдк рдЯреНрд░реИрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ) рджреНрд╡рд╛рд░рд╛ рд╕рдордп рдХреЗ рд╕рд╛рде рдЗрддрдирд╛ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реИрдВред рдирд┐рд╖реНрдХреНрд░рд┐рдпрддрд╛ рдХреА рдЕрд╡рдзрд┐ рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╕рддреНрд░ рд╡рд┐рдВрдбреЛ рдХреЛ рд╕реАрдорд╛рдВрдХрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЪрд┐рддреНрд░ 5.12 рд╕рддреНрд░ рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред рдПрдХ рдЫреЛрдЯрд╛ рд╕рддреНрд░ рд╕рддреНрд░ рдХреЗ рд╕рд╛рде рдЙрд╕рдХреА рдмрд╛рдИрдВ рдУрд░ рд╡рд┐рд▓реАрди рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдФрд░ рджрд╛рдИрдВ рдУрд░ рдХрд╛ рд╕рддреНрд░ рдЕрд▓рдЧ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдирд┐рд╖реНрдХреНрд░рд┐рдпрддрд╛ рдХреА рд▓рдВрдмреА рдЕрд╡рдзрд┐ рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░рддрд╛ рд╣реИред рд╕рддреНрд░ рд╡рд┐рдВрдбреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реЛрддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рд░рд┐рдХреЙрд░реНрдб рд╕реЗ рджрд┐рдирд╛рдВрдХ / рд╕рдордп рдЯрд┐рдХрдЯреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд░рд┐рдХреЙрд░реНрдб рдХрд┐рд╕ рд╕рддреНрд░ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИред

рдЫрд╡рд┐


рдПрдХреНрд╕рдЪреЗрдВрдЬ рд▓реЗрдирджреЗрди рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рддреНрд░ рд╡рд┐рдВрдбреЛрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛


рд╣рдо рд╡рд┐рдирд┐рдордп рд▓реЗрдирджреЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреИрдкреНрдЪрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рддреНрд░ рд╡рд┐рдВрдбреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред рд╕рддреНрд░ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕реВрдЪреА 5.5 рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдЬреЛ src / main / java / bbejeck / Chapter_5 / CountingWindowingAndKTableJoinExample.java рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред

рдЫрд╡рд┐

рдЖрдк рдЗрд╕ рдЯреЛрдкреЛрд▓реЙрдЬреА рдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдкрд╣рд▓реЗ рд╣реА рдкреВрд░рд╛ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдпрд╣рд╛рдВ рдлрд┐рд░ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдХрдИ рдирдП рддрддреНрд╡ рд╣реИрдВ рдЬрд┐рди рдкрд░ рд╣рдо рдЕрдм рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВрдЧреЗред

рдХрд┐рд╕реА рднреА GroupBy рдСрдкрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП, рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреЗ рдПрдХрддреНрд░реАрдХрд░рдг рдСрдкрд░реЗрд╢рди (рдПрдХрддреНрд░реАрдХрд░рдг, рджреГрдврд╝ рд╕рдВрдХрд▓реНрдк рдпрд╛ рдЧрд┐рдирддреА) рдЖрдорддреМрд░ рдкрд░ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЖрдк рд╕рдВрдЪрдпреА рдХреБрд▓ рдпрд╛ рд╡рд┐рдВрдбреЛ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рд╕рд╛рде рдпрд╛ рддреЛ рд╕рдВрдЪрдпреА рдПрдХрддреНрд░реАрдХрд░рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рджрд┐рдП рдЧрдП рд╕рдордп рд╡рд┐рдВрдбреЛ рдХреЗ рднреАрддрд░ рд░рд┐рдХреЙрд░реНрдб рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред

5.5 рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рдореЗрдВ рдХреЛрдб рд╕рддреНрд░ рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдХреЗ рднреАрддрд░ рд▓реЗрдирджреЗрди рдХреА рд╕рдВрдЦреНрдпрд╛ рдорд╛рдпрдиреЗ рд░рдЦрддрд╛ рд╣реИред рдЕрдВрдЬреАрд░ рдореЗрдВред 5.13 рдЗрди рдХреНрд░рд┐рдпрд╛рдУрдВ рдХрд╛ рдЪрд░рдг рджрд░ рдЪрд░рдг рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

WindowedBy (SessionWindows.with (рдмреАрд╕ рд╕реЗрдХрдВрдб) .until (рдкрдВрджреНрд░рд╣Minutes) рдХреЙрд▓ рдХрд░рдХреЗ рд╣рдо 20 рд╕реЗрдХрдВрдб рдХреЗ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдЕрдВрддрд░рд╛рд▓ рдФрд░ 15 рдорд┐рдирдЯ рдХреЗ рдкреНрд░рддрд┐рдзрд╛рд░рдг рдЕрдВрддрд░рд╛рд▓ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рддреНрд░ рд╡рд┐рдВрдбреЛ рдмрдирд╛рддреЗ рд╣реИрдВред 20 рд╕реЗрдХрдВрдб рдХреЗ рдирд┐рд╖реНрдХреНрд░рд┐рдпрддрд╛ рдЕрдВрддрд░рд╛рд▓ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрд╡реЗрджрди рдореЗрдВ рд╡рд░реНрддрдорд╛рди рд╕рддреНрд░ (рд╕рдХреНрд░рд┐рдп) рд╕рддреНрд░ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рд╕рддреНрд░ рдХреЗ рдЕрдВрдд рдпрд╛ рд╢реБрд░реБрдЖрдд рд╕реЗ 20 рд╕реЗрдХрдВрдб рдХреЗ рднреАрддрд░ рдЖрдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдИ рднреА рд░рд┐рдХреЙрд░реНрдб рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧрд╛ред

рдЫрд╡рд┐

рдЕрдЧрд▓рд╛, рд╣рдо рдЗрдВрдЧрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╕рддреНрд░ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдХреМрди рд╕рд╛ рдПрдХрддреНрд░реАрдХрд░рдг рдСрдкрд░реЗрд╢рди рдХрд░рдирд╛ рд╣реИ - рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЧрдгрдирд╛ рдХрд░реЗрдВред рдпрджрд┐ рдЖрд╡рдХ рд░рд┐рдХреЙрд░реНрдб рдирд┐рд╖реНрдХреНрд░рд┐рдпрддрд╛ рдЕрдВрддрд░рд╛рд▓ (рджрд┐рдирд╛рдВрдХ / рд╕рдордп рд╕реНрдЯреИрдореНрдк рдХреЗ рджреЛрдиреЛрдВ рдУрд░) рдХреЗ рдмрд╛рд╣рд░ рдЖрддреА рд╣реИ, рддреЛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдПрдХ рдирдпрд╛ рд╕рддреНрд░ рдмрдирд╛рддрд╛ рд╣реИред рд╕реЗрд╡ рдЗрдВрдЯрд░рд╡рд▓ рдХрд╛ рдЕрд░реНрде рд╣реИ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдордп рдХреЗ рд▓рд┐рдП рд╕рддреНрд░ рдХреЛ рдмрдирд╛рдП рд░рдЦрдирд╛ рдФрд░ рджреЗрд░ рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдХреЛ рд╕рддреНрд░ рдХреА рдирд┐рд╖реНрдХреНрд░рд┐рдпрддрд╛ рдХреА рдЕрд╡рдзрд┐ рд╕реЗ рдкрд░реЗ рдЬрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рдЗрд╕реЗ рд╕рдВрд▓рдЧреНрди рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдорд░реНрдЬ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдПрдХ рдирдП рд╕рддреНрд░ рдХреА рд╢реБрд░реБрдЖрдд рдФрд░ рд╕рдорд╛рдкреНрддрд┐ рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рдФрд░ рдирд╡реАрдирддрдо рддрд╛рд░реАрдЦ / рд╕рдордп рдЯрд┐рдХрдЯ рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИред

рдЖрдЗрдП рдЧрд┐рдирддреА рдкрджреНрдзрддрд┐ рд╕реЗ рдХреБрдЫ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреЛ рджреЗрдЦреЗрдВ рдХрд┐ рд╕рддреНрд░ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ (рддрд╛рд▓рд┐рдХрд╛ 5.1)ред

рдЫрд╡рд┐

рд░рд┐рдХреЙрд░реНрдб рдкреНрд░рд╛рдкреНрдд рд╣реЛрдиреЗ рдкрд░, рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рд╣реА рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рдореМрдЬреВрджрд╛ рд╕рддреНрд░реЛрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░рддреЗ рд╣реИрдВ, рдЕрдВрдд рд╕рдордп рд╡рд░реНрддрдорд╛рди рджрд┐рдирд╛рдВрдХ / рд╕рдордп рд╕реНрдЯрд╛рдореНрдк рд╕реЗ рдХрдо рд╣реИ - рдирд┐рд╖реНрдХреНрд░рд┐рдпрддрд╛ рдЕрдВрддрд░рд╛рд▓ рдФрд░ рдкреНрд░рд╛рд░рдВрдн рд╕рдордп рд╡рд░реНрддрдорд╛рди рддрд┐рдерд┐ / рд╕рдордп рд╕реНрдЯрд╛рдореНрдк + рдирд┐рд╖реНрдХреНрд░рд┐рдпрддрд╛ рдЕрдВрддрд░рд╛рд▓ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рдЗрд╕реЗ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП, рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдЪрд╛рд░ рд░рд┐рдХреЙрд░реНрдбред 5.1 рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдПрдХ рд╕рддреНрд░ рдореЗрдВ рд╡рд┐рд▓рдпред

1. рд░рд┐рдХреЙрд░реНрдб 1 рдкрд╣рд▓реЗ рдЖрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкреНрд░рд╛рд░рдВрдн рд╕рдордп рдЕрдВрдд рд╕рдордп рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ рдФрд░ 00:00:00 рд╣реИред

2. рдЕрдЧрд▓рд╛ рд░рд┐рдХреЙрд░реНрдб 2 рдЖрддрд╛ рд╣реИ, рдФрд░ рд╣рдо рд╕рддреНрд░реЛрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ 23:59:55 рд╕реЗ рдкрд╣рд▓реЗ рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдмрд╛рдж рдореЗрдВ 00:00:35 рд╕реЗ рд╢реБрд░реВ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рд░рд┐рдХреЙрд░реНрдб 1 рдЦреЛрдЬреЗрдВ рдФрд░ рд╕рддреНрд░ 1 рдФрд░ 2 рдХреЛ рдорд┐рд▓рд╛рдПрдВред рд╕рддреНрд░ 1 (рдкрд╣рд▓реЗ) рдФрд░ рд╕рддреНрд░ 2 рдХреЗ рдЕрдВрдд рд╕рдордп (рдмрд╛рдж рдореЗрдВ) рдХрд╛ рдкреНрд░рд╛рд░рдВрдн рд╕рдордп рд▓реЗрдВ, рддрд╛рдХрд┐ рд╣рдорд╛рд░рд╛ рдирдпрд╛ рд╕рддреНрд░ 00:00:00 рдмрдЬреЗ рд╢реБрд░реВ рд╣реЛ рдФрд░ 00:00:15 рдмрдЬреЗ рд╕рдорд╛рдкреНрдд рд╣реЛред

3. рд░рд┐рдХреЙрд░реНрдб 3 рдЖрддрд╛ рд╣реИ, рд╣рдо 00:00:30 рдФрд░ 00:01:10 рдХреЗ рдмреАрдЪ рд╕рддреНрд░реЛрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдХреЛрдИ рдирд╣реАрдВ рдкрд╛рддреЗ рд╣реИрдВред рдХреБрдВрдЬреА рдХреЗ рд▓рд┐рдП рджреВрд╕рд░рд╛ рд╕рддреНрд░ рдЬреЛрдбрд╝реЗрдВ 123-345-654, FFBE, рд╢реБрд░реВ рдФрд░ рдЕрдВрдд 00:00:50 рдкрд░ред

4. рд░рд┐рдХреЙрд░реНрдб 4 рдЖрддрд╛ рд╣реИ, рдФрд░ рд╣рдо 23:59:45 рдФрд░ 00:00:25 рдХреЗ рдмреАрдЪ рд╕рддреНрд░реЛрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рдмрд╛рд░ рджреЛрдиреЛрдВ рд╕рддреНрд░ рд╣реИрдВ - 1 рдФрд░ 2. рд╕рднреА рддреАрди рд╕рддреНрд░реЛрдВ рдХреЛ рдПрдХ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ 00:00:00 рдХрд╛ рдкреНрд░рд╛рд░рдВрдн рд╕рдордп рдФрд░ 00:00:15 рдХрд╛ рдЕрдВрдд рд╕рдордп рд╣реЛрддрд╛ рд╣реИред

рдЗрд╕ рдЦрдВрдб рдореЗрдВ рдХреНрдпрд╛ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХреЛ рдпрд╛рдж рд░рдЦрдиреЗ рдпреЛрдЧреНрдп рд╣реИ:

  • рд╕рддреНрд░ рдирд┐рд╢реНрдЪрд┐рдд рдЖрдХрд╛рд░ рдХреА рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдВ рдирд╣реАрдВ рд╣реИрдВред рдПрдХ рд╕рддреНрд░ рдХреА рдЕрд╡рдзрд┐ рджреА рдЧрдИ рдЕрд╡рдзрд┐ рдХреЗ рднреАрддрд░ рдЧрддрд┐рд╡рд┐рдзрд┐ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИ;
  • рдбреЗрдЯрд╛ рдореЗрдВ рджрд┐рдирд╛рдВрдХ / рд╕рдордп рдЯрд┐рдХрдЯреЗрдВ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддреА рд╣реИрдВ рдХрд┐ рдХреЛрдИ рдШрдЯрдирд╛ рдореМрдЬреВрджрд╛ рд╕рддреНрд░ рдореЗрдВ рдЖрддреА рд╣реИ рдпрд╛ рдирд┐рд╖реНрдХреНрд░рд┐рдпрддрд╛ рдХреА рдЕрд╡рдзрд┐ рдореЗрдВред

рдЖрдЧреЗ рд╣рдо рдирд┐рдореНрди рдкреНрд░рдХрд╛рд░ рдХреА рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВрдЧреЗ - "somersault" рд╡рд┐рдВрдбреЛрдЬрд╝ред

рдЯрдВрдмрд▓рд┐рдВрдЧ рд╡рд┐рдВрдбреЛ


"рдЯрдВрдмрд▓рд┐рдВрдЧ" рд╡рд┐рдВрдбреЛрдЬрд╝ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЕрд╡рдзрд┐ рдХреЗ рднреАрддрд░ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдШрдЯрдирд╛рдУрдВ рдХреЛ рдкрдХрдбрд╝ рд▓реЗрддреА рд╣реИред рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреЛ рд╣рд░ 20 рд╕реЗрдХрдВрдб рдореЗрдВ рдПрдХ рдХрдВрдкрдиреА рдХреЗ рд╕рднреА рд╡рд┐рдирд┐рдордп рд▓реЗрдирджреЗрди рдХреЛ рдкрдХрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддрд╛рдХрд┐ рдЖрдк рдЗрд╕ рдЕрд╡рдзрд┐ рдХреЗ рд▓рд┐рдП рд╕рднреА рдШрдЯрдирд╛рдУрдВ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░ рд╕рдХреЗрдВред 20-рд╕реЗрдХрдВрдб рдХреЗ рдЕрдВрддрд░рд╛рд▓ рдХреЗ рдЕрдВрдд рдореЗрдВ, рд╡рд┐рдВрдбреЛ "tumbles" рдФрд░ рдПрдХ рдирдП 20-рд╕реЗрдХрдВрдб рдХреЗ рдЕрд╡рд▓реЛрдХрди рдЕрдВрддрд░рд╛рд▓ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рддрд╛ рд╣реИред рдЪрд┐рддреНрд░ 5.14 рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред

рдЫрд╡рд┐

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдкрд┐рдЫрд▓реЗ 20 рд╕реЗрдХрдВрдб рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рд╕рднреА рдШрдЯрдирд╛рдУрдВ рдХреЛ рдЦрд┐рдбрд╝рдХреА рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╕рдордп рдХреА рдЗрд╕ рдЕрд╡рдзрд┐ рдХреЗ рдЕрдВрдд рдореЗрдВ, рдПрдХ рдирдИ рд╡рд┐рдВрдбреЛ рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИред

5.6 рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдирд╛ рдХреЛрдб рдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдЬреЛ рд╣рд░ 20 рд╕реЗрдХрдВрдб рдореЗрдВ рд╡рд┐рдирд┐рдордп рд▓реЗрдирджреЗрди рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрдВрдмрд▓рд┐рдВрдЧ рд╡рд┐рдВрдбреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ (рдЖрдк рдЗрд╕реЗ src / main / java / bbejeck / Chapter_5 / CountingWindowingAndKtableJoinExample.java рдореЗрдВ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ)ред

рдЫрд╡рд┐

TimeWindows.of рдкрджреНрдзрддрд┐ рдкрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдЫреЛрдЯреЗ рд╕реЗ рдмрджрд▓рд╛рд╡ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдЖрдк рдЯрдВрдмрд▓рд┐рдВрдЧ рд╡рд┐рдВрдбреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рддрдм рддрдХ () рд╡рд┐рдзрд┐ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдХреЙрд▓ рдирд╣реАрдВ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк 24 рдШрдВрдЯреЗ рдХреЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рд╣реЗрдЬреЗрдВ рдЕрдВрддрд░рд╛рд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЕрдВрдд рдореЗрдВ, рдпрд╣ рдЦрд┐рдбрд╝рдХреА рдХреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рд╕реЗ рдЕрдВрддрд┐рдо рдкрд░ рдЬрд╛рдиреЗ рдХрд╛ рд╕рдордп рд╣реИ - рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдХреЛ рдмрдВрдж рдХрд░рдирд╛ред

рд╕реНрд▓рд╛рдЗрдбрд┐рдВрдЧ ("рдХреВрдж") рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдВ


рд╕реНрд▓рд╛рдЗрдбрд┐рдВрдЧ / "hopping" рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдВ "tumbling" рдХреЗ рд╕рдорд╛рди рд╣реИрдВ, рд▓реЗрдХрд┐рди рдереЛрдбрд╝реЗ рдЕрдВрддрд░ рдХреЗ рд╕рд╛рдеред рд╕реНрд▓рд╛рдЗрдбрд┐рдВрдЧ рд╡рд┐рдВрдбреЛ рд╣рд╛рд▓ рдХреА рдШрдЯрдирд╛рдУрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдИ рд╡рд┐рдВрдбреЛ рдмрдирд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕рдордп рдЕрдВрддрд░рд╛рд▓ рдХреЗ рдЕрдВрдд рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдирд╣реАрдВ рдХрд░рддреА рд╣реИред рд╡реЗ рд╡рд┐рдВрдбреЛ рдХреА рдЕрд╡рдзрд┐ рд╕реЗ рдХрдо рдкреНрд░рддреАрдХреНрд╖рд╛ рдЕрдВрддрд░рд╛рд▓ рдХреЗ рдмрд╛рдж рдирдИ рдЧрдгрдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред

"рд╕реЛрдорд░рд╕реЙрд▓реНрдЯрд┐рдВрдЧ" рдФрд░ "рдЬрдВрдкрд┐рдВрдЧ" рд╡рд┐рдВрдбреЛ рдХреЗ рдмреАрдЪ рдХреЗ рдЕрдВрддрд░ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЪрд▓рд┐рдП рд╡рд┐рдирд┐рдордп рд▓реЗрдирджреЗрди рдХреА рдЧрдгрдирд╛ рдХреЗ рд╕рд╛рде рдЙрджрд╛рд╣рд░рдг рдкрд░ рд▓реМрдЯрддреЗ рд╣реИрдВред рд╣рдорд╛рд░рд╛ рд▓рдХреНрд╖реНрдп, рдкрд╣рд▓реЗ рдХреА рддрд░рд╣, рд▓реЗрди-рджреЗрди рдХреА рд╕рдВрдЦреНрдпрд╛ рдЧрд┐рдирдирд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рдХрд╛рдЙрдВрдЯрд░ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╣рд░ рд╕рдордп рдЗрдВрддрдЬрд╛рд░ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рд╣рдо рдЫреЛрдЯреЗ рдЕрдВрддрд░рд╛рд▓ рдкрд░ рдХрд╛рдЙрдВрдЯрд░ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВрдЧреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рд╣рд░ 20 рд╕реЗрдХрдВрдб рдореЗрдВ рд▓реЗрди-рджреЗрди рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦреЗрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдкреНрд░рддреНрдпреЗрдХ 5 рд╕реЗрдХрдВрдб рдореЗрдВ рдХрд╛рдЙрдВрдЯрд░ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЬреИрд╕рд╛ рдХрд┐ рдЕрдВрдЬреАрд░ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред 5.15ред рдЙрд╕реА рд╕рдордп, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрддрд┐рд╡реНрдпрд╛рдкреА рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рддреАрди рдкрд░рд┐рдгрд╛рдо рд╡рд┐рдВрдбреЛ рд╣реИрдВред

рдЫрд╡рд┐

5.7 рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдирд╛ рдлрд┐рд╕рд▓рдиреЗ рд╡рд╛рд▓реА рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдб рджрд┐рдЦрд╛рддрд╛ рд╣реИ (рдпрд╣ src / main / java / bbejeck / Chapter_5 / CountingWindowingAndKtableJoinExample.java рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред

рдЫрд╡рд┐

рдПрдбрд╡рд╛рдВрд╕рдмрд╛рдп () рдкрджреНрдзрддрд┐ рдкрд░ рдХреЙрд▓ рдЬреЛрдбрд╝рдХрд░ рдПрдХ рдЯрдВрдмрд▓рд┐рдВрдЧ рд╡рд┐рдВрдбреЛ рдХреЛ рдЯрдВрдмрд▓рд┐рдВрдЧ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрдкрд░реНрдпреБрдХреНрдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╕реЗрд╡ рдЕрдВрддрд░рд╛рд▓ 15 рдорд┐рдирдЯ рд╣реИред

рдЖрдкрдиреЗ рдЗрд╕ рдЦрдВрдб рдореЗрдВ рджреЗрдЦрд╛ рдХрд┐ рд╕рдордп рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдкрд░ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдХреИрд╕реЗ рд╕реАрдорд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдореИрдВ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдЖрдк рдЗрд╕ рдЦрдВрдб рд╕реЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддреАрди рдмрд╛рддреЗрдВ рдпрд╛рдж рд░рдЦреЗрдВ:

  • рд╕рддреНрд░ рд╡рд┐рдВрдбреЛ рдХрд╛ рдЖрдХрд╛рд░ рд╕рдордп рдЕрдВрддрд░рд╛рд▓ рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЧрддрд┐рд╡рд┐рдзрд┐ рджреНрд╡рд╛рд░рд╛;
  • "рдЯрдВрдмрд▓рд┐рдВрдЧ" рдЦрд┐рдбрд╝рдХрд┐рдпрд╛рдВ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдордп рдХреЗ рднреАрддрд░ рдШрдЯрдирд╛рдУрдВ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рджреЗрддреА рд╣реИрдВ;
  • "рдЬрдВрдкрд┐рдВрдЧ" рд╡рд┐рдВрдбреЛ рдХреА рдЕрд╡рдзрд┐ рддрдп рдХреА рдЧрдИ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗ рдЕрдХреНрд╕рд░ рдЕрдкрдбреЗрдЯ рдХреА рдЬрд╛рддреА рд╣реИрдВ рдФрд░ рд╕рднреА рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдореЗрдВ рдУрд╡рд░рд▓реИрдкрд┐рдВрдЧ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред

рдЕрдЧрд▓рд╛, рд╣рдо рд╕реАрдЦреЗрдВрдЧреЗ рдХрд┐ рдХрдиреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП KTable рдХреЛ KStream рдореЗрдВ рдХреИрд╕реЗ рдмрджрд▓реЗрдВред

5.3.3ред KStream рдФрд░ KTable рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рд╕реЗ рдЬреБрдбрд╝реЗрдВ


рдЕрдзреНрдпрд╛рдп 4 рдореЗрдВ, рд╣рдордиреЗ рджреЛ KStream рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдкрд░ рдЪрд░реНрдЪрд╛ рдХреАред рдЕрдм рд╣рдореЗрдВ рдпрд╣ рд╕реАрдЦрдирд╛ рд╣реИ рдХрд┐ KTable рдФрд░ KStream рдХреЛ рдХреИрд╕реЗ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдПред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд░рд▓ рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред KStream рдЕрднрд┐рд▓реЗрдЦреЛрдВ рдХреА рдПрдХ рдзрд╛рд░рд╛ рд╣реИ, рдФрд░ KTable рд░рд┐рдХреЙрд░реНрдб рдЕрджреНрдпрддрдиреЛрдВ рдХреА рдПрдХ рдзрд╛рд░рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА KTable рдХреЗ рдЕрджреНрдпрддрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд░рд┐рдХреЙрд░реНрдб рдХреА рдзрд╛рд░рд╛ рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрджрд░реНрдн рдЬреЛрдбрд╝рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рд╣рдо рдбреЗрдЯрд╛ рдХреЛ рд╡рд┐рдирд┐рдордп рд▓реЗрдирджреЗрди рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рд▓реЗрддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рдЙрджреНрдпреЛрдЧреЛрдВ рдкрд░ рд╡рд┐рдирд┐рдордп рд╕рдорд╛рдЪрд╛рд░ рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдореМрдЬреВрджрд╛ рдХреЛрдб рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рдЖрдкрдХреЛ рдЗрд╕реЗ рд╣рд╛рд╕рд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

  1. рдПрдХреНрд╕рдЪреЗрдВрдЬреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдПрдХ KTable рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ KStream рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдХрд░реЗрдВ, рдЗрд╕рдХреЗ рдмрд╛рдж рдХреБрдВрдЬреА рдХреЛ рдЙрд╕ рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рдмрджрд▓ рджреЗрдВ рдЬреЛ рдЗрд╕ рд╢реЗрдпрд░ рдХреЗ рдкреНрд░рддреАрдХ рдХреЗ рдЕрдиреБрд░реВрдк рдЙрджреНрдпреЛрдЧ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рддрд╛ рд╣реИред
  2. рдПрдХ KTable рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдВ рдЬреЛ рдХрд┐рд╕реА рд╡рд┐рд╖рдп рдХреЗ рдбреЗрдЯрд╛ рдХреЛ рд╡рд┐рдирд┐рдордп рд╕рдорд╛рдЪрд╛рд░ рдХреЗ рд╕рд╛рде рдкрдврд╝рддрд╛ рд╣реИред рдпрд╣ рдирдпрд╛ KTable рдЙрджреНрдпреЛрдЧ рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдЧреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
  3. рдЙрджреНрдпреЛрдЧ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдирд┐рдордп рд▓реЗрдирджреЗрди рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рд╛рде рд╕рдорд╛рдЪрд╛рд░ рдЕрдкрдбреЗрдЯ рдХреЛ рдорд┐рд▓рд╛рдПрдВред

рдЕрдм рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕ рдХрд╛рд░реНрдп рдпреЛрдЬрдирд╛ рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдПред

рдХрдиреНрд╡рд░реНрдЯ KTable рдХреЛ KStream


KTable рдХреЛ KStream рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрди рдХрд╛рд░реНрдп рдХрд░реЗрдВред

  1. KTable.toStream () рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВред
  2. KStream.map рд╡рд┐рдзрд┐ рдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЙрджреНрдпреЛрдЧ рдХреЗ рдирд╛рдо рдХреЗ рд╕рд╛рде рдХреБрдВрдЬреА рдХреЛ рдмрджрд▓реЗрдВ, рдФрд░ рдлрд┐рд░ рд╡рд┐рдВрдбреЛреЗрдб рдЙрджрд╛рд╣рд░рдг рд╕реЗ TransactionSummary рдСрдмреНрдЬреЗрдХреНрдЯ рдирд┐рдХрд╛рд▓реЗрдВред

рд╣рдо рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдирд┐рдореНрди рдкреНрд░рдХрд╛рд░ рд╕реЗ рд╢реНрд░реГрдВрдЦрд▓рд╛рдмрджреНрдз рдХрд░рддреЗ рд╣реИрдВ (рдХреЛрдб src / main / java / bbejeck / Chapter_5 / CountingWindowingAndKtableJoinExample.java рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ) (рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 5.8)ред

рдЫрд╡рд┐

рдЪреВрдВрдХрд┐ рд╣рдо KStream.map рдСрдкрд░реЗрд╢рди рдХрд░рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХрдиреЗрдХреНрд╢рди рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рд▓реМрдЯреЗ KStream рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдмрд╛рд░-рдмрд╛рд░ рд╡рд┐рднрд╛рдЬрди рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╣рдордиреЗ рд░реВрдкрд╛рдВрддрд░рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдкреВрд░реА рдХрд░ рд▓реА рд╣реИ, рдлрд┐рд░ рд╣рдореЗрдВ рд╕реНрдЯреЙрдХ рд╕рдорд╛рдЪрд╛рд░ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ KTable рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╢реЗрдпрд░ рдмрд╛рдЬрд╛рд░ рд╕рдорд╛рдЪрд╛рд░ рдХреЗ рд▓рд┐рдП KTable рдмрдирд╛рдирд╛


рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рдХреЛрдб рдХреА рдПрдХ рдПрдХрд▓ рд▓рд╛рдЗрди рдПрдХ KTable рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ (рдпрд╣ рдХреЛрдб src / main / java / bbejeck / Chapter_5 / CountingWindowingAndKtableJoinExample.java) (рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 5.9) рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЫрд╡рд┐

рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдХрд┐рд╕реА рднреА рд╕рд░реНрдб рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╕рд░реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, EARLIEST рдЧрдгрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рддрд╛рд▓рд┐рдХрд╛ рдмрд╣реБрдд рд╢реБрд░реБрдЖрдд рдореЗрдВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЖрдмрд╛рджреА рд╣реИред

рдЕрдм рд╣рдо рдЕрдВрддрд┐рдо рдЪрд░рдг - рд╕рдВрдШ рдкрд░ рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред

рд▓реЗрди-рджреЗрди рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рдЪрд╛рд░ рдЕрдкрдбреЗрдЯ рд▓рд┐рдВрдХ рдХрд░реЗрдВ


рд╕рдВрдмрдВрдз рдмрдирд╛рдирд╛ рд╕реАрдзрд╛ рд╣реИред рд╣рдо рд╕рдВрдмрдВрдзрд┐рдд рдЙрджреНрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╡рд┐рдирд┐рдордп рд╕рдорд╛рдЪрд╛рд░ рдирд╣реАрдВ рд╣реЛрдиреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдмрд╛рдПрдВ рдХрдиреЗрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ (рдЖрд╡рд╢реНрдпрдХ рдХреЛрдб рдлрд╛рдЗрд▓ src / main / java / bbejeck / Chapter_5 / CountingWindowingAndKtableJoinExample .java) рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 5.10)ред

рдЫрд╡рд┐

рдпрд╣ рдмрд╛рдпрд╛рдБ рдХрдерди рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИред рдЕрдзреНрдпрд╛рдп 4 рдореЗрдВ рдХрдиреЗрдХреНрд╢рди рдХреЗ рд╡рд┐рдкрд░реАрдд, JoinWindow рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЬрдм рдЖрдк KStream-KTable рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ KTable рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдХреБрдВрдЬреА рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдПрдХ рд░рд┐рдХреЙрд░реНрдб рд╣реЛрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрдиреЗрдХреНрд╢рди рд╕рдордп рдореЗрдВ рд╕реАрдорд┐рдд рдирд╣реАрдВ рд╣реИ: рд░рд┐рдХреЙрд░реНрдб рдпрд╛ рддреЛ рдХреЗрдЯреЗрдмрд▓ рдореЗрдВ рд╣реИ рдпрд╛ рдЕрдиреБрдкрд╕реНрдерд┐рдд рд╣реИред рдореБрдЦреНрдп рдирд┐рд╖реНрдХрд░реНрд╖: KTable рд╡рд╕реНрддреБрдУрдВ рдХреА рдорджрдж рд╕реЗ, рдЖрдк рдХрдо рдЕрдХреНрд╕рд░ рдЕрджреНрдпрддрди рдХрд┐рдП рдЧрдП рд╕рдВрджрд░реНрдн рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде KStream рдХреЛ рд╕рдореГрджреНрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрдм рд╣рдо KStream рд╕реЗ рдШрдЯрдирд╛рдУрдВ рдХреЛ рд╕рдореГрджреНрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рддрд░реАрдХреЗ рд╕реЗ рджреЗрдЦреЗрдВрдЧреЗред

5.3.4ред GlobalKTable рд╡рд╕реНрддреБрдПрдБ


рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рд╕рдордЭрддреЗ рд╣реИрдВ, рдШрдЯрдирд╛рдУрдВ рдХреЗ рдкреНрд░рд╡рд╛рд╣ рдХреЛ рд╕рдореГрджреНрдз рдХрд░рдиреЗ рдпрд╛ рдЙрдирдХреЗ рд╕рдВрджрд░реНрдн рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЕрдзреНрдпрд╛рдп 4 рдореЗрдВ, рдЖрдкрдиреЗ рджреЛ KStream рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рдХрдиреЗрдХреНрд╢рди рдФрд░ рдкрд┐рдЫрд▓реЗ рднрд╛рдЧ рдореЗрдВ KStream рдФрд░ KTable рдХреЗ рдХрдиреЗрдХреНрд╢рди рдХреЛ рджреЗрдЦрд╛ред рдЗрди рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдХрд┐рд╕реА рдирдП рдкреНрд░рдХрд╛рд░ рдпрд╛ рдорд╛рди рдХреЗ рд▓рд┐рдП рдореИрдкрд┐рдВрдЧ рдХрд░рддреЗ рд╕рдордп рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░реАрдо рдХрд╛ рдмрд╛рд░-рдмрд╛рд░ рд╡рд┐рднрд╛рдЬрди рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдХрднреА-рдХрднреА рдкреБрди: рд╡рд┐рднрд╛рдЬрди рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдХрднреА-рдХрднреА рдХрд╛рдлреНрдХрд╛ рдзрд╛рд░рд╛рдПрдБ рдЕрдкрдиреЗ рдЖрдк рд╣реЛ рдЬрд╛рддреА рд╣реИрдВред рдкреБрди: рд╡рд┐рднрд╛рдЬрди рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЪрд╛рдмрд┐рдпрд╛рдБ рдмрджрд▓ рдЧрдИ рд╣реИрдВ рдФрд░ рд░рд┐рдХреЙрд░реНрдб рдирдП рдЕрдиреБрднрд╛рдЧреЛрдВ рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрдиреНрдпрдерд╛ рдХрдиреЗрдХреНрд╢рди рдЕрд╕рдВрднрд╡ рд╣реЛрдЧрд╛ (рдпрд╣ рдЦрдВрдб 4 рдХреЗ "рдкреБрди: рд╡рд┐рднрд╛рдЬрди" рдЕрдиреБрднрд╛рдЧ 4 рдореЗрдВ рдЕрдзреНрдпрд╛рдп 4 рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рдереА)ред

рдкреБрди: рд╡рд┐рднрд╛рдЬрди рдПрдХ рдореВрд▓реНрдп рдкрд░ рдЖрддрд╛ рд╣реИ


рдмрд╛рд░-рдмрд╛рд░ рд╡рд┐рднрд╛рдЬрди рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧрдд рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ - рдордзреНрдпрд╡рд░реНрддреА рд╡рд┐рд╖рдп рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрд╕рд╛рдзрди, рдХрд┐рд╕реА рдЕрдиреНрдп рд╡рд┐рд╖рдп рдореЗрдВ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛; рдЗрд╕рдХрд╛ рдорддрд▓рдм рдЗрд╕ рд╡рд┐рд╖рдп рд╕реЗ рд▓рд┐рдЦрдиреЗ рдФрд░ рдкрдврд╝рдиреЗ рдХреЗ рдХрд╛рд░рдг рдмрдврд╝реА рд╣реБрдИ рд╡рд┐рд▓рдВрдмрддрд╛ рднреА рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рдЖрдкрдХреЛ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдкрд╣рд▓реБрдУрдВ рдпрд╛ рдЖрдпрд╛рдореЛрдВ рдореЗрдВ рдХрдиреЗрдХреНрд╢рди рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдХрдиреЗрдХреНрд╢рдиреЛрдВ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдирдП рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рд░рд┐рдХреЙрд░реНрдб рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ рдФрд░ рдлрд┐рд░ рд╕реЗ рд╡рд┐рднрд╛рдЬрди рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рдХрд░реЗрдВред

рдЫреЛрдЯреЗ рдбреЗрдЯрд╛рд╕реЗрдЯ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ


рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдХрдиреЗрдХреНрд╢рди рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ рдЧрдИ рдбреЗрдЯрд╛ рдХреА рдорд╛рддреНрд░рд╛ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдХрдо рд╣реИ, рддрд╛рдХрд┐ рдЙрдирдореЗрдВ рд╕реЗ рдкреВрд░реА рдкреНрд░рддрд┐рдпрд╛рдВ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдкрд░ рдлрд┐рдЯ рд╣реЛ рд╕рдХреЗрдВред рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП, рдХрд╛рдлреНрдХрд╛ рд╕реНрдЯреНрд░реАрдореНрд╕ GlobalKTable рд╡рд░реНрдЧ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

GlobalKTable рдЗрдВрд╕реНрдЯреЗрдВрд╕реЗрд╕ рдЕрджреНрд╡рд┐рддреАрдп рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреНрд░рддреНрдпреЗрдХ рдбреЗрдЯрд╛ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдореЗрдВ рджреЛрд╣рд░рд╛рддрд╛ рд╣реИред рдФрд░ рдЪреВрдВрдХрд┐ рд╕рднреА рдбреЗрдЯрд╛ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдкрд░ рдореМрдЬреВрдж рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╕рдВрджрд░реНрдн рдбреЗрдЯрд╛ рдХреБрдВрдЬреА рджреНрд╡рд╛рд░рд╛ рдШрдЯрдирд╛рдУрдВ рдХреА рдзрд╛рд░рд╛ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рд╕рднреА рд╡рд░реНрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реБрд▓рдн рд╣реЛред GlobalKTable рдСрдмреНрдЬреЗрдХреНрдЯ рднреА рдмрд┐рдирд╛ рдХрдиреЗрдХреНрд╢рди рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдЗрдП рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд┐рдЫрд▓реЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВред

KStream рдХреЛ GlobalKTable рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛


рдЙрдкрд╕рдореВрд╣ 5.3.2 рдореЗрдВ, рд╣рдордиреЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдирд┐рдордп рд▓реЗрдирджреЗрди рдХреЗ рд╡рд┐рдВрдбреЛ рдПрдХрддреНрд░реАрдХрд░рдг рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ред рдЗрд╕ рдПрдХрддреНрд░реАрдХрд░рдг рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗ:

{customerId='074-09-3705', stockTicker='GUTM'}, 17 {customerId='037-34-5184', stockTicker='CORK'}, 16 

рдпрджреНрдпрдкрд┐ рдпреЗ рдкрд░рд┐рдгрд╛рдо рд▓рдХреНрд╖реНрдп рдХреЗ рдЕрдиреБрд░реВрдк рдереЗ, рдпрд╣ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЧреНрд░рд╛рд╣рдХ рдХрд╛ рдирд╛рдо рдФрд░ рдХрдВрдкрдиреА рдХрд╛ рдкреВрд░рд╛ рдирд╛рдо рднреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ред рдЧреНрд░рд╛рд╣рдХ рдХрд╛ рдирд╛рдо рдФрд░ рдХрдВрдкрдиреА рдХрд╛ рдирд╛рдо рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рд╕рд╛рдорд╛рдиреНрдп рдХрдиреЗрдХреНрд╢рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рджреЛ рдореБрдЦреНрдп рдорд╛рдирдЪрд┐рддреНрд░рдг рдмрдирд╛рдиреЗ рдФрд░ рдкреБрди: рд╡рд┐рднрд╛рдЬрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред GlobalKTable рд╕реЗ рдЖрдк рдЗрд╕ рддрд░рд╣ рдХреЗ рдСрдкрд░реЗрд╢рди рдХреА рд▓рд╛рдЧрдд рд╕реЗ рдмрдЪ рд╕рдХрддреЗ рд╣реИрдВред

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдХрд╛рдЙрдВрдЯрд╕реНрдЯреНрд░реАрдо рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ Listing 5.11 (рдЗрд╕реА рдХреЛрдб рдХреЛ src / main / java / bbejeck / Chapter_5 / GlobalKTableExample.java рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ) рд╕реЗ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░реЗрдВрдЧреЗ, рдЗрд╕реЗ рджреЛ GlobalKTable рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реБрдПред

рдЫрд╡рд┐

рд╣рдо рдкрд╣рд▓реЗ рднреА рдЗрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░ рдЪреБрдХреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕реЗ рджреЛрд╣рд░рд╛рдпрд╛ рдирд╣реАрдВред рд▓реЗрдХрд┐рди рдореИрдВ рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдХреЛрдб рдЗрдирд╕реНрдЯреНрд░реАрдо () рдореЗрдВ рд╣реИред рдореИрдк рдХрд┐рдП рдЧрдП рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдПрдВрдмреЗрдбреЗрдб рд▓реИрдореНрдмреНрдбрд╛ рдПрдХреНрд╕рдкреНрд░реЗрд╢рди рдХреЗ рдмрдЬрд╛рдп рдкрдардиреАрдпрддрд╛ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди рдСрдмреНрдЬреЗрдХреНрдЯ рдореЗрдВ рдПрдмреНрд╕реНрдЯреНрд░реИрдХреНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдЕрдЧрд▓рд╛ рдХрджрдо GlobalKTable рдХреЗ рджреЛ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреА рдШреЛрд╖рдгрд╛ рдХрд░рдирд╛ рд╣реИ (рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рдХреЛрдб src / main / java / bbejeck / Chapter_5 / GlobalKTableExample.java рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ) (рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 5.12)ред

рдЫрд╡рд┐


рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╡рд┐рд╖рдп рдХреЗ рдирд╛рдо рдкреНрд░рдЧрдгрд┐рдд рдкреНрд░рдХрд╛рд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╡рд░реНрдгрд┐рдд рд╣реИрдВред

рдЕрдм рдЬрдм рд╣рдордиреЗ рд╕рднреА рдШрдЯрдХ рддреИрдпрд╛рд░ рдХрд░ рд▓рд┐рдП рд╣реИрдВ, рддреЛ рдпрд╣ рдХрдиреЗрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛ рд╣реБрдЖ рд╣реИ (рдЬреЛ рдХрд┐ src / main / java / bbejeck / Chapter_5 / GlobalKTableExample.java рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ) (рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ 5.13)ред

рдЫрд╡рд┐

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЗрд╕ рдХреЛрдб рдореЗрдВ рджреЛ рдпреМрдЧрд┐рдХ рд╣реИрдВ, рд╡реЗ рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдЖрдпреЛрдЬрд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдХреЗ рдХрд┐рд╕реА рднреА рдкрд░рд┐рдгрд╛рдо рдХрд╛ рдЕрд▓рдЧ рд╕реЗ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреВрд░реЗ рдСрдкрд░реЗрд╢рди рдХреЗ рдЕрдВрдд рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

рдЬрдм рдЖрдк рдЙрдкрд░реЛрдХреНрдд рдХрдиреЗрдХреНрд╢рди рдСрдкрд░реЗрд╢рди рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкрд░рд┐рдгрд╛рдо рдорд┐рд▓реЗрдВрдЧреЗ:

 {customer='Barney, Smith' company="Exxon", transactions= 17} 

рд╕рд╛рд░ рдмрджрд▓ рдирд╣реАрдВ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпреЗ рдкрд░рд┐рдгрд╛рдо рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рджрд┐рдЦрддреЗ рд╣реИрдВред

рдЕрдзреНрдпрд╛рдп 4 рдХреА рдЧрд┐рдирддреА, рдЖрдкрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдореЗрдВ рдХрдИ рдкреНрд░рдХрд╛рд░ рдХреЗ рдХрдиреЗрдХреНрд╢рди рджреЗрдЦреЗ рд╣реИрдВред рд╡реЗ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рд╣реИрдВред 5.2ред рдпрд╣ рддрд╛рд▓рд┐рдХрд╛ Kafka рдзрд╛рд░рд╛рдУрдВ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг 1.0.0 рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА рдХреЛ рджрд░реНрд╢рд╛рддреА рд╣реИ; рднрд╡рд┐рд╖реНрдп рдХреЗ рд░рд┐рд▓реАрдЬ рдореЗрдВ рдХреБрдЫ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛ред

рдЫрд╡рд┐

рдЕрдВрдд рдореЗрдВ, рдореИрдВ рдЖрдкрдХреЛ рдореБрдЦреНрдп рдмрд╛рдд рдпрд╛рдж рджрд┐рд▓рд╛рдКрдВрдЧрд╛: рдЖрдк рд╕реНрдерд╛рдиреАрдп рд░рд╛рдЬреНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╡реЗрдВрдЯ рд╕реНрдЯреНрд░реАрдо (KStream) рдФрд░ рдЕрдкрдбреЗрдЯ рд╕реНрдЯреНрд░реАрдо (KTable) рдХрдиреЗрдХреНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрджрд┐ рд╕рдВрджрд░реНрдн рдбреЗрдЯрд╛ рдХрд╛ рдЖрдХрд╛рд░ рдмрд╣реБрдд рдмрдбрд╝рд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЖрдк GlobalKTable рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред GlobalKTable, Kafka Streams рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдХреЗ рд╕рднреА рдЕрдиреБрднрд╛рдЧреЛрдВ рдХреА рдкреНрд░рддрд┐рдХреГрддрд┐ рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╕рднреА рдбреЗрдЯрд╛ рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛрддреА рд╣реИ, рдЪрд╛рд╣реЗ рдЬрд┐рд╕ рд╕реЗрдХреНрд╢рди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛред

рдЖрдЧреЗ рд╣рдо рдХрд╛рдлреНрдХрд╛ рдзрд╛рд░рд╛рдУрдВ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рджреЗрдЦреЗрдВрдЧреЗ, рдЬрд┐рд╕рдХреА рдмрджреМрд▓рдд рдЖрдк рдХрд╛рдлреНрдХрд╛ рд╡рд┐рд╖рдп рдХреЗ рдЖрдВрдХрдбрд╝реЛрдВ рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рд░рд╛рдЬреНрдп рдореЗрдВ рдмрджрд▓рд╛рд╡ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред

5.3.5ред рдЕрдиреБрд░реЛрдз рдХреА рд╕реНрдерд┐рддрд┐


рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд░рд╛рдЬреНрдп рд╕реЗ рдЬреБрдбрд╝реЗ рдХрдИ рдСрдкрд░реЗрд╢рди рдХрд┐рдП рд╣реИрдВ рдФрд░ рд╣рдореЗрд╢рд╛ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдХрдВрд╕реЛрд▓ (рд╡рд┐рдХрд╛рд╕ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП) рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рдЙрдиреНрд╣реЗрдВ рд╡рд┐рд╖рдп (рдФрджреНрдпреЛрдЧрд┐рдХ рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП) рдореЗрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВред рдЬрдм рдХрд┐рд╕реА рд╡рд┐рд╖рдп рдкрд░ рдкрд░рд┐рдгрд╛рдо рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЙрдиреНрд╣реЗрдВ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреНрдХрд╛ рдЙрдкрднреЛрдХреНрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдЗрди рд╡рд┐рд╖рдпреЛрдВ рд╕реЗ рдбреЗрдЯрд╛ рдкрдврд╝рдирд╛ рдПрдХ рддрд░рд╣ рдХрд╛ рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╣рдорд╛рд░реЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, рд╣рдо рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ рд╕реЗ рднреМрддрд┐рдХрд╡рд╛рджреА рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: "... рдПрдХ рднреМрддрд┐рдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдЬрд┐рд╕рдореЗрдВ рдХреНрд╡реЗрд░реА рдХреЗ рдкрд░рд┐рдгрд╛рдо рд╣реЛрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рд╣рдЯрд╛рдП рдЧрдП рдбреЗрдЯрд╛ рдХреА рдПрдХ рд╕реНрдерд╛рдиреАрдп рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдпрд╛ рдХрд┐рд╕реА рддрд╛рд▓рд┐рдХрд╛ рдХреА рдкрдВрдХреНрддрд┐рдпреЛрдВ рдФрд░ / рдпрд╛ рд╕реНрддрдВрднреЛрдВ рдХрд╛ рдПрдХ рдЙрдкрд╕рдореБрдЪреНрдЪрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдкрд░рд┐рдгрд╛рдореЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╛ рдПрдХрддреНрд░реАрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдПрдХ рдзреБрд░реА рддрд╛рд▓рд┐рдХрд╛ "(https://en.wikipedia.org/wiki/Materialized-view) рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдХрд╛рдлреНрдХрд╛ рд╕реНрдЯреНрд░реАрдо рдЖрдкрдХреЛ рд╕реНрдЯреЗрдЯ рд╕реНрдЯреЛрд░реНрд╕ рдкрд░ рдЗрдВрдЯрд░рдПрдХреНрдЯрд┐рд╡ рдХреНрд╡реЗрд╢реНрдЪрди рдХрд░рдиреЗ рдХреА рднреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЖрдк рдЗрди рднреМрддрд┐рдХ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рд╕реАрдзреЗ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рд░рд╛рдЬреНрдп рдХреЗ рд╕реНрдЯреЛрд░ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХреЗрд╡рд▓-рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдСрдкрд░реЗрд╢рди рдХреА рдкреНрд░рдХреГрддрд┐ рдореЗрдВ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдЖрдк рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди рдЧрд▓рддреА рд╕реЗ рд░рд╛рдЬреНрдп рдХреЛ рдПрдХ рдПрдкреНрд▓реАрдХреЗрд╢рди рдЕрд╕рдВрдЧрдд рдмрдирд╛рдиреЗ рд╕реЗ рдбрд░ рдирд╣реАрдВ рд╕рдХрддреЗред

рд░рд╛рдЬреНрдп рднрдВрдбрд╛рд░ рдХреЛ рд╕реАрдзреЗ рдХреНрд╡реЗрд░реА рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╛рдлреНрдХрд╛ рдЙрдкрднреЛрдХреНрддрд╛ рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдП рдмрд┐рдирд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди - рдбреИрд╢рдмреЛрд░реНрдб рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рджрдХреНрд╖рддрд╛ рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИ, рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдбреЗрдЯрд╛ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ:

  • рдбреЗрдЯрд╛ рдХреА рд╕реНрдерд╛рдиреАрдпрддрд╛ рдХреЗ рдХрд╛рд░рдг, рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЬрд▓реНрджреА рд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
  • рдбреЗрдЯрд╛ рдХреЗ рджреЛрд╣рд░рд╛рд╡ рдХреЛ рдмрд╛рд╣рд░ рд░рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдмрд╛рд╣рд░реА рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВред

рдореБрдЦреНрдп рдмрд╛рдд рдЬреЛ рдореИрдВ рдЖрдкрдХреЛ рдпрд╛рдж рд░рдЦрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛: рдЖрдк рд╕реАрдзреЗ рдЖрд╡реЗрджрди рд╕реЗ рд░рд╛рдЬреНрдп рдХреЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдЙрди рдЕрд╡рд╕рд░реЛрдВ рдХреЛ рдХрдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдпрд╣ рдЖрдкрдХреЛ рджреЗрддрд╛ рд╣реИред рдЖрд╡реЗрджрди рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдХрдлрд╝реНрдХрд╛ рдХреЗ рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рдиреЗ рдФрд░ рд░рд┐рдХреЙрд░реНрдб рд░рдЦрдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдЖрдк рдЙрд╕реА рдкрд░рд┐рдгрд╛рдо рдХреЗ рд╕рд╛рде рд░рд╛рдЬреНрдп рдХреЗ рд╕реНрдЯреЛрд░ рдХреЛ рдХреНрд╡реЗрд░реА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд░рд╛рдЬреНрдп рднрдВрдбрд╛рд░ рдХреЗ рдкреНрд░рддреНрдпрдХреНрд╖ рдЕрдиреБрд░реЛрдзреЛрдВ рдХрд╛ рдорддрд▓рдм рдХрдо рдХреЛрдб (рдХреЛрдИ рдЙрдкрднреЛрдХреНрддрд╛ рдирд╣реАрдВ) рдФрд░ рдХрдо рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ (рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ)ред

рд╣рдордиреЗ рдЗрд╕ рдЕрдзреНрдпрд╛рдп рдореЗрдВ рдХрд╛рдлреА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдХрд╡рд░ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдЗрдВрдЯрд░рдПрдХреНрдЯрд┐рд╡ рдкреНрд░рд╢реНрдиреЛрдВ рдХреА рд╣рдорд╛рд░реА рдЪрд░реНрдЪрд╛ рдХреЛ рд╕реНрдЯреЗрдЯ рд╕реНрдЯреЛрд░реНрд╕ рдкрд░ рд░реЛрдХ рджреЗрдВрдЧреЗред рд▓реЗрдХрд┐рди рдЪрд┐рдВрддрд╛ рди рдХрд░реЗрдВ: рдЕрдзреНрдпрд╛рдп 9 рдореЗрдВ рд╣рдо рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдПрдВрдЧреЗ - рдЗрдВрдЯрд░рдПрдХреНрдЯрд┐рд╡ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реВрдЪрдирд╛ рдкреИрдирд▓ред рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдкреНрд░рд╢реНрдиреЛрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХрд╛рдлреНрдХрд╛ рдзрд╛рд░рд╛рдУрдВ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛рдУрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЗрд╕ рдФрд░ рдкрд┐рдЫрд▓реЗ рдЕрдзреНрдпрд╛рдпреЛрдВ рдореЗрдВ рд╕реЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред

рд╕рд╛рд░рд╛рдВрд╢


  • KStream рдСрдмреНрдЬреЗрдХреНрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рдЖрд╡реЗрд╖рдг рдХреЗ рд▓рд┐рдП рддреБрд▓рдиреАрдп рдШрдЯрдирд╛ рдзрд╛рд░рд╛рдУрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЗ рд╣реИрдВред KTable рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдЕрдкрдбреЗрдЯ рд╕реНрдЯреНрд░реАрдо рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреЗ рд╣реИрдВ, рд╡реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХреЗ рд╕рдорд╛рди рд╣реЛрддреЗ рд╣реИрдВред KTable рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рдЖрдХрд╛рд░ рдирд╣реАрдВ рдмрдврд╝рддрд╛ рд╣реИ, рдкреБрд░рд╛рдиреЗ рд░рд┐рдХреЙрд░реНрдб рдХреЛ рдирдП рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдмрджрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • рдПрдХрддреНрд░реАрдХрд░рдг рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП KTable рд╡рд╕реНрддреБрдУрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
  • рд╡рд┐рдВрдбреЛ рдСрдкрд░реЗрд╢рдВрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдПрдХрддреНрд░рд┐рдд рдбреЗрдЯрд╛ рдХреЛ рд╕рдордп рдХреА рдЯреЛрдХрд░рд┐рдпреЛрдВ рдореЗрдВ рддреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред
  • GlobalKTable рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдЖрдк рд╕реЗрдХреНрд╢рдирд┐рдВрдЧ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдХрд╣реАрдВ рднреА рд╕рдВрджрд░реНрдн рдбреЗрдЯрд╛ рдПрдХреНрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
  • KStream, KTable рдФрд░ GlobalKTable рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдмреАрдЪ рд╕рдВрдмрдВрдз рд╕рдВрднрд╡ рд╣реИрдВред

рдЕрдм рддрдХ, рд╣рдордиреЗ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп KStream DSL рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рдлреНрдХрд╛ рд╕реНрдЯреНрд░реАрдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд┐рдпрд╛ рд╣реИред рдпрджреНрдпрдкрд┐ рдПрдХ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рджреГрд╖реНрдЯрд┐рдХреЛрдг рдЖрдкрдХреЛ рд╕реНрд╡рдЪреНрдЫ рдФрд░ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдХрд╛рд░реНрдпрдХреНрд░рдо рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдордЭреМрддрд╛ рд╣реИред DSL KStream рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдорддрд▓рдм рд╣реИ рдирд┐рдпрдВрддреНрд░рдг рдХреА рдбрд┐рдЧреНрд░реА рдХреЛ рдХрдо рдХрд░рдХреЗ рдХреЛрдб рдХреА рд╕рдВрдХреНрд╖рд┐рдкреНрддрддрд╛ рдХреЛ рдмрдврд╝рд╛рдирд╛ред рдЕрдЧрд▓реЗ рдЕрдзреНрдпрд╛рдп рдореЗрдВ, рд╣рдо рд╣реИрдВрдбрд▓рд░ рдиреЛрдбреНрд╕ рдХреЗ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдПрдкреАрдЖрдИ рдХреЛ рджреЗрдЦреЗрдВрдЧреЗ рдФрд░ рдЕрдиреНрдп рдЯреНрд░реЗрдбрдСрдлрд╝ рдХреЛ рдЖрдЬрд╝рдорд╛рдПрдБрдЧреЗред рдХрд╛рд░реНрдпрдХреНрд░рдо рдЕрдм рддрдХ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд▓рдВрдмреЗ рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдиреЛрдб рдХреЛ рдмрдирд╛рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рд╣реЛрдЧрд╛ рдЬрд┐рд╕рдХреА рд╣рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред

тЖТ рдкреБрд╕реНрддрдХ рдХрд╛ рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдкреНрд░рдХрд╛рд╢рдХ рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

тЖТ рдЦрд╛рдмрд░реЛрдЬрд╝реАрддреЗ рдХреЗ рд▓рд┐рдП рдХреВрдкрди рдкрд░ 25% рдХреА рдЫреВрдЯ - рдХрд╛рдлреНрдХрд╛ рд╕реНрдЯреНрд░реАрдо

тЖТ рдкреБрд╕реНрддрдХ рдХреЗ рдкреЗрдкрд░ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рднреБрдЧрддрд╛рди рдкрд░, рдПрдХ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХ рдкреБрд╕реНрддрдХ рдИ-рдореЗрд▓ рджреНрд╡рд╛рд░рд╛ рднреЗрдЬреА рдЬрд╛рддреА рд╣реИред

Source: https://habr.com/ru/post/hi457756/


All Articles