เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ" เชนเซ‡เชฒเซ‹, เช–เชพเชฌเชฐเซ‹เชจเชพ เชฐเชนเซ‡เชตเชพเชธเซ€เช“! เช† เชชเซเชธเซเชคเช• เช•เซ‹เชˆเชชเชฃ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพ เชฎเชพเชŸเซ‡ เชฏเซ‹เช—เซเชฏ เช›เซ‡ เชœเซ‡ เชฅเซเชฐเซ‡เชก เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเชจเซ‡ เชธเชฎเชœเชตเชพ เชฎเชพเช‚เช—เซ‡ เช›เซ‡. เชตเชฟเชคเชฐเชฟเชค เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช—เชจเซ‡ เชธเชฎเชœเชตเชพเชฅเซ€ เชคเชฎเชจเซ‡ เช•เชพเชซเช•เชพ เช…เชจเซ‡ เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธเชจเซ‡ เชตเชงเซ เชธเชพเชฐเซ€ เชฐเซ€เชคเซ‡ เชธเชฎเชœเชตเชพเชฎเชพเช‚ เชฎเชฆเชฆ เชฎเชณเชถเซ‡. เช•เชพเชซเช•เชพ เชซเซเชฐเซ‡เชฎเชตเชฐเซเช•เชจเซ‡ เชœเชพเชฃเชตเซเช‚ เชธเชฐเชธ เชฐเชนเซ‡เชถเซ‡, เชชเชฐเช‚เชคเซ เช† เชœเชฐเซ‚เชฐเซ€ เชจเชฅเซ€: เชนเซเช‚ เชคเชฎเชจเซ‡ เชœเซ‡ เชœเซ‹เชˆเช เชคเซ‡ เชฌเชงเซเช‚ เช•เชนเซ€เชถ. เช…เชจเซเชญเชตเซ€ เช•เชพเชซเช•เชพ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“ เช…เชจเซ‡ เชถเชฟเช–เชพเช‰ เชฒเซ‹เช•เซ‹ เช† เชชเซเชธเซเชคเช•เชฎเชพเช‚ เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เชฒเชพเช‡เชฌเซเชฐเซ‡เชฐเซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชฐเชธเชชเซเชฐเชฆ เชธเซเชŸเซเชฐเซ€เชฎ เชชเซเชฐเซ‹เชธเซ‡เชธเชฟเช‚เช— เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชฌเชจเชพเชตเชตเซ€ เชคเซ‡ เชถเซ€เช–เชถเซ‡. เชฎเชงเซเชฏเชตเชฐเซเชคเซ€ เช…เชจเซ‡ เช…เชฆเซเชฏเชคเชจ เชœเชพเชตเชพ เชตเชฟเช•เชพเชธเช•เชฐเซเชคเชพเช“ เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ เชธเซ€เชฐเซ€เชฏเชฒเชพเช‡เชเซ‡เชถเชจ เชœเซ‡เชตเซ€ เชตเชฟเชญเชพเชตเชจเชพเช“เชฅเซ€ เชชเชฐเชฟเชšเชฟเชค เช›เซ‡ เชคเซ‡เช“ เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เชคเซ‡เชฎเชจเซ€ เช•เซเชถเชณเชคเชพ เชฒเชพเช—เซ เช•เชฐเชตเชพเชจเซเช‚ เชถเซ€เช–เชถเซ‡. เชชเซเชธเซเชคเช•เชจเซ‹ เชธเซเชฐเซ‹เชค เช•เซ‹เชก Java 8 เชฎเชพเช‚ เชฒเช–เชพเชฏเซ‡เชฒ เช›เซ‡ เช…เชจเซ‡ Java 8 lambda เช…เชญเชฟเชตเซเชฏเช•เซเชคเชฟ เชตเชพเช•เซเชฏเชฐเชšเชจเชพเชจเซ‹ เชจเซ‹เช‚เชงเชชเชพเชคเซเชฐ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡, เชคเซ‡เชฅเซ€ เชฒเซ‡เชฎเซเชฌเชกเชพ เชซเช‚เช•เซเชถเชจเซเชธ (เชฌเซ€เชœเซ€ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชญเชพเชทเชพเชฎเชพเช‚ เชชเชฃ) เชธเชพเชฅเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชพเชฎ เช•เชฐเชตเซเช‚ เชคเซ‡ เชœเชพเชฃเชตเซเช‚ เช‰เชชเชฏเซ‹เช—เซ€ เชฅเชถเซ‡.

เช…เชตเชคเชฐเชฃ. 5.3. เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช…เชจเซ‡ เชตเชฟเชจเซเชกเซ‹เช‚เช— เช•เชพเชฎเช—เซ€เชฐเซ€

เช† เชตเชฟเชญเชพเช—เชฎเชพเช‚, เช…เชฎเซ‡ เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธเชจเชพ เชธเซŒเชฅเซ€ เช†เชถเชพเชธเซเชชเชฆ เชญเชพเช—เซ‹เชจเซเช‚ เช…เชจเซเชตเซ‡เชทเชฃ เช•เชฐเชตเชพ เช†เช—เชณ เชตเชงเซ€เชถเซเช‚. เช…เชคเซเชฏเชพเชฐ เชธเซเชงเซ€ เช…เชฎเซ‡ เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธเชจเชพ เชจเซ€เชšเซ‡เชจเชพ เชชเชพเชธเชพเช“เชจเซ‡ เช†เชตเชฐเซ€ เชฒเซ€เชงเชพ เช›เซ‡:

  • เชชเซเชฐเซ‹เชธเซ‡เชธเชฟเช‚เช— เชŸเซ‹เชชเซ‹เชฒเซ‹เชœเซ€ เชฌเชจเชพเชตเชตเซ€;
  • เชธเซเชŸเซเชฐเซ€เชฎเชฟเช‚เช— เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธเชฎเชพเช‚ เชฐเชพเชœเซเชฏเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹;
  • เชกเซ‡เชŸเชพ เชธเซเชŸเซเชฐเซ€เชฎ เชœเซ‹เชกเชพเชฃเซ‹ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ‡;
  • เช‡เชตเซ‡เชจเซเชŸ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ (KStream) เช…เชจเซ‡ เช…เชชเชกเซ‡เชŸ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ (KTable) เชตเชšเซเชšเซ‡เชจเซ‹ เชคเชซเชพเชตเชค.

เชจเซ€เชšเซ‡เชจเชพ เช‰เชฆเชพเชนเชฐเชฃเซ‹เชฎเชพเช‚ เช†เชชเชฃเซ‡ เช† เชฌเชงเชพ เชคเชคเซเชตเซ‹เชจเซ‡ เชเช•เชธเชพเชฅเซ‡ เชฒเชพเชตเชถเซเช‚. เชคเชฎเซ‡ เชตเชฟเชจเซเชกเซ‹เช‡เช‚เช— เชตเชฟเชถเซ‡ เชชเชฃ เชถเซ€เช–เซ€ เชถเช•เชถเซ‹, เชœเซ‡ เชธเซเชŸเซเชฐเซ€เชฎเชฟเช‚เช— เชเชชเซเชฒเซ€เช•เซ‡เชถเชจเชจเซ€ เชฌเซ€เชœเซ€ เชถเซเชฐเซ‡เชทเซเช  เชธเซเชตเชฟเชงเชพ เช›เซ‡. เช…เชฎเชพเชฐเซเช‚ เชชเซเชฐเชฅเชฎ เช‰เชฆเชพเชนเชฐเชฃ เชเช• เชธเชฐเชณ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เชนเชถเซ‡.

5.3.1. เช‰เชฆเซเชฏเซ‹เช— เช•เซเชทเซ‡เชคเซเชฐ เชฆเซเชตเชพเชฐเชพ เชธเซเชŸเซ‹เช• เชตเซ‡เชšเชพเชฃเชจเซเช‚ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ

เชธเซเชŸเซเชฐเซ€เชฎเชฟเช‚เช— เชกเซ‡เชŸเชพ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช…เชจเซ‡ เชœเซ‚เชฅเซ€เช•เชฐเชฃ เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เชธเชพเชงเชจเซ‹ เช›เซ‡. เชตเซเชฏเช•เซเชคเชฟเช—เชค เชฐเซ‡เช•เซ‹เชฐเซเชกเชจเซ€ เชคเชชเชพเชธ เชœเซ‡เชฎ เช•เซ‡ เชคเซ‡เช“ เชชเซเชฐเชพเชชเซเชค เชฅเชพเชฏ เช›เซ‡ เชคเซ‡ เช˜เชฃเซ€เชตเชพเชฐ เช…เชชเซ‚เชฐเชคเซ€ เชนเซ‹เชฏ เช›เซ‡. เชกเซ‡เชŸเชพเชฎเชพเช‚เชฅเซ€ เชตเชงเชพเชฐเชพเชจเซ€ เชฎเชพเชนเชฟเชคเซ€ เชฎเซ‡เชณเชตเชตเชพ เชฎเชพเชŸเซ‡, เชคเซ‡เชฎเชจเซ‡ เชœเซ‚เชฅเชฌเชฆเซเชง เช•เชฐเชตเชพ เช…เชจเซ‡ เชญเซ‡เช—เชพ เช•เชฐเชตเชพ เชœเชฐเซ‚เชฐเซ€ เช›เซ‡.

เช† เช‰เชฆเชพเชนเชฐเชฃเชฎเชพเช‚, เชคเชฎเซ‡ เชเช• เชฆเชฟเชตเชธเชจเชพ เชตเซ‡เชชเชพเชฐเซ€เชจเซ€ เช•เซ‹เชธเซเชšเซเชฏเซเชฎ เชชเชนเซ‡เชฐเชถเซ‹ เชœเซ‡เชจเซ‡ เช…เชจเซ‡เช• เช‰เชฆเซเชฏเซ‹เช—เซ‹เชฎเชพเช‚ เช•เช‚เชชเชจเซ€เช“เชจเชพ เชถเซ‡เชฐเซ‹เชจเชพ เชตเซ‡เชšเชพเชฃเชจเซ€ เชฎเชพเชคเซเชฐเชพเชจเซ‡ เชŸเซเชฐเซ…เช• เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เช–เชพเชธ เช•เชฐเซ€เชจเซ‡, เชคเชฎเซ‡ เชฆเชฐเซ‡เช• เช‰เชฆเซเชฏเซ‹เช—เชฎเชพเช‚ เชธเซŒเชฅเซ€ เชตเชงเซ เชถเซ‡เชฐ เชตเซ‡เชšเชพเชฃ เชงเชฐเชพเชตเชคเซ€ เชชเชพเช‚เชš เช•เช‚เชชเชจเซ€เช“เชฎเชพเช‚ เชฐเชธ เชงเชฐเชพเชตเซ‹ เช›เซ‹.

เชกเซ‡เชŸเชพเชจเซ‡ เช‡เชšเซเช›เชฟเชค เชธเซเชตเชฐเซ‚เชชเชฎเชพเช‚ เช…เชจเซเชตเชพเชฆ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช†เชตเชพ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃเชจเซ‡ เชจเซ€เชšเซ‡เชจเชพ เช•เซ‡เชŸเชฒเชพเช• เชชเช—เชฒเชพเช‚เชจเซ€ เชœเชฐเซ‚เชฐ เชชเชกเชถเซ‡ (เชธเชพเชฎเชพเชจเซเชฏ เชถเชฌเซเชฆเซ‹เชฎเชพเช‚ เชฌเซ‹เชฒเชคเชพ).

  1. เชเช• เชตเชฟเชทเชฏ-เช†เชงเชพเชฐเชฟเชค เชธเซเชฐเซ‹เชค เชฌเชจเชพเชตเซ‹ เชœเซ‡ เช•เชพเชšเชพ เชธเซเชŸเซ‹เช• เชŸเซเชฐเซ‡เชกเชฟเช‚เช— เชฎเชพเชนเชฟเชคเซ€ เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเซ‡ เช›เซ‡. เช†เชชเชฃเซ‡ เชธเซเชŸเซ‹เช• เชŸเซเชฐเชพเชจเซเชเซ‡เช•เซเชถเชจ เชชเซเชฐเช•เชพเชฐเชจเชพ เช‘เชฌเซเชœเซ‡เช•เซเชŸเชจเซ‡ เชถเซ‡เชฐเชตเซ‹เชฒเซเชฏเซเชฎ เชชเซเชฐเช•เชพเชฐเชจเชพ เช‘เชฌเซเชœเซ‡เช•เซเชŸ เชธเชพเชฅเซ‡ เชฎเซ‡เชช เช•เชฐเชตเซ‹ เชชเชกเชถเซ‡. เชฎเซเชฆเซเชฆเซ‹ เช เช›เซ‡ เช•เซ‡ เชธเซเชŸเซ‹เช• เชŸเซเชฐเชพเชจเซเชเซ‡เช•เซเชถเชจ เช‘เชฌเซเชœเซ‡เช•เซเชŸเชฎเชพเช‚ เชตเซ‡เชšเชพเชฃเชจเซ‹ เชฎเซ‡เชŸเชพเชกเซ‡เชŸเชพ เช›เซ‡, เชชเชฐเช‚เชคเซ เช…เชฎเชจเซ‡ เชซเช•เซเชค เชตเซ‡เชšเชตเชพเชฎเชพเช‚ เช†เชตเชคเชพ เชถเซ‡เชฐเซเชธเชจเซ€ เชธเช‚เช–เซเชฏเชพ เชตเชฟเชถเซ‡เชจเชพ เชกเซ‡เชŸเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.
  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).

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"
เช†เชชเซ‡เชฒ เช•เซ‹เชก เชคเซ‡เชจเชพ เชธเช‚เช•เซเชทเชฟเชชเซเชคเชคเชพ เช…เชจเซ‡ เช˜เชฃเซ€ เชฒเซ€เชŸเซ€เช“เชฎเชพเช‚ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชคเซ€ เช•เซเชฐเชฟเชฏเชพเช“เชจเชพ เชตเชฟเชถเชพเชณ เชตเซ‹เชฒเซเชฏเซเชฎ เชฆเซเชตเชพเชฐเชพ เช…เชฒเช— เชชเชกเซ‡ เช›เซ‡. เชคเชฎเซ‡ builder.stream เชชเชฆเซเชงเชคเชฟเชจเชพ เชชเซเชฐเชฅเชฎ เชชเชฐเชฟเชฎเชพเชฃเชฎเชพเช‚ เช•เช‚เชˆเช• เชจเชตเซเช‚ เชœเซ‹เชˆ เชถเช•เซ‹ เช›เซ‹: Enum เชชเซเชฐเช•เชพเชฐเชจเซเช‚ เชฎเซ‚เชฒเซเชฏ AutoOffsetReset.EARLIEST (เชคเซเชฏเชพเช‚ เชเช• เชฒเซ‡เชŸเซ‡เชธเซเชŸ เชชเชฃ เช›เซ‡), Consumed.withOffsetResetPolicy เชชเชฆเซเชงเชคเชฟเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชธเซ‡เชŸ เช•เชฐเซ‹. เช† เช—เชฃเชคเชฐเซ€ เชชเซเชฐเช•เชพเชฐ เชฆเชฐเซ‡เช• KStream เช…เชฅเชตเชพ KTable เชฎเชพเชŸเซ‡ เช“เชซเชธเซ‡เชŸ เชฐเซ€เชธเซ‡เชŸ เชตเซเชฏเซ‚เชนเชฐเชšเชจเชพ เชธเซเชชเชทเซเชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชตเชพเชชเชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡ เช…เชจเซ‡ เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจเชฎเชพเช‚เชฅเซ€ เช“เชซเชธเซ‡เชŸ เชฐเซ€เชธเซ‡เชŸ เชตเชฟเช•เชฒเซเชช เชชเชฐ เช…เช—เซเชฐเชคเชพ เชฒเซ‡ เช›เซ‡.

GroupByKey เช…เชจเซ‡ GroupBy

KStream เชˆเชจเซเชŸเชฐเชซเซ‡เชธ เชชเชพเชธเซ‡ เชฐเซ‡เช•เซ‹เชฐเซเชกเชจเซ‡ เชœเซ‚เชฅเชฌเชฆเซเชง เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชฌเซ‡ เชชเชฆเซเชงเชคเชฟเช“ เช›เซ‡: GroupByKey เช…เชจเซ‡ GroupBy. เชฌเช‚เชจเซ‡ KGroupedTable เชชเชฐเชค เช•เชฐเซ‡ เช›เซ‡, เชœเซ‡เชฅเซ€ เชคเชฎเซ‡ เชตเชฟเชšเชพเชฐเซ€ เชฐเชนเซเชฏเชพ เชนเชถเซ‹ เช•เซ‡ เชคเซ‡เชฎเชจเซ€ เชตเชšเซเชšเซ‡ เชถเซเช‚ เชคเชซเชพเชตเชค เช›เซ‡ เช…เชจเซ‡ เช•เชฏเชพเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เซเชฏเชพเชฐเซ‡ เช•เชฐเชตเซ‹?

GroupByKey เชชเชฆเซเชงเชคเชฟเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชฅเชพเชฏ เช›เซ‡ เชœเซเชฏเชพเชฐเซ‡ KStream เชฎเชพเช‚ เช•เซ€เช“ เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ เช–เชพเชฒเซ€ เชจ เชนเซ‹เชฏ. เช…เชจเซ‡ เชธเซŒเชฅเซ€ เช…เช—เชคเซเชฏเชจเซเช‚, "เชซเชฐเซ€ เชชเชพเชฐเซเชŸเซ€เชถเชจเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡" เชงเซเชตเชœ เช•เซเชฏเชพเชฐเซ‡เชฏ เชธเซ‡เชŸ เชฅเชฏเซ‹ เชจ เชนเชคเซ‹.

GroupBy เชชเชฆเซเชงเชคเชฟ เชงเชพเชฐเซ‡ เช›เซ‡ เช•เซ‡ เชคเชฎเซ‡ เช—เซเชฐเซ‚เชชเชฟเช‚เช— เช•เซ€เช“ เชฌเชฆเชฒเซ€ เช›เซ‡, เชคเซ‡เชฅเซ€ เชชเซเชจเชƒเชชเชพเชฐเซเชŸเซ€เชถเชจ เชซเซเชฒเซ‡เช— เชธเชพเชšเซเช‚ เชชเชฐ เชธเซ‡เชŸ เช›เซ‡. เช—เซเชฐเซ‚เชชเชฌเชพเชฏ เชชเชฆเซเชงเชคเชฟ เชชเช›เซ€ เชœเซ‹เชกเชพ, เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ, เชตเช—เซ‡เชฐเซ‡ เชชเชฐเชซเซ‹เชฐเซเชฎ เช•เชฐเชตเชพเชฅเซ€ เช†เชชเซ‹เช†เชช เชชเซเชจเชƒ-เชชเชพเชฐเซเชŸเซ€เชถเชจ เชฅเชถเซ‡.
เชธเชพเชฐเชพเช‚เชถ: เชœเซเชฏเชพเชฐเซ‡ เชชเชฃ เชถเช•เซเชฏ เชนเซ‹เชฏ, เชคเชฎเชพเชฐเซ‡ GroupBy เชจเซ‡ เชฌเชฆเชฒเซ‡ GroupByKey เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹ เชœเซ‹เชˆเช.

เชคเซ‡ เชธเซเชชเชทเซเชŸ เช›เซ‡ เช•เซ‡ mapValues โ€‹โ€‹เช…เชจเซ‡ groupBy เชชเชฆเซเชงเชคเชฟเช“ เชถเซเช‚ เช•เชฐเซ‡ เช›เซ‡, เชคเซ‹ เชšเชพเชฒเซ‹ sum() เชชเชฆเซเชงเชคเชฟ (src/main/java/bbejeck/model/ShareVolume.java เชฎเชพเช‚ เชœเซ‹เชตเชพ เชฎเชณเซ‡ เช›เซ‡) (เชฒเชฟเชธเซเชŸเชฟเช‚เช— 5.3) เชชเชฐ เชเช• เชจเชœเชฐ เช•เชฐเซ€เช.

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"
ShareVolume.sum เชชเชฆเซเชงเชคเชฟ เชธเซเชŸเซ‹เช• เชธเซ‡เชฒเซเชธ เชตเซ‹เชฒเซเชฏเซเชฎเชจเซ€ เชšเชพเชฒเซ€ เชฐเชนเซ‡เชฒเซ€ เช•เซเชฒ เชฐเช•เชฎ เชชเชฐเชค เช•เชฐเซ‡ เช›เซ‡, เช…เชจเซ‡ เช—เชฃเชคเชฐเซ€เชจเซ€ เชธเชฎเช—เซเชฐ เชธเชพเช‚เช•เชณเชจเซเช‚ เชชเชฐเชฟเชฃเชพเชฎ KTable เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช›เซ‡. . เชนเชตเซ‡ เชคเชฎเซ‡ KTableเชจเซ€ เชญเซ‚เชฎเชฟเช•เชพ เชธเชฎเชœเซ‹ เช›เซ‹. เชœเซเชฏเชพเชฐเซ‡ ShareVolume เช‘เชฌเซเชœเซ‡เช•เซเชŸเซเชธ เช†เชตเซ‡ เช›เซ‡, เชคเซเชฏเชพเชฐเซ‡ เช…เชจเซเชฐเซ‚เชช KTable เช‘เชฌเซเชœเซ‡เช•เซเชŸ เชจเชตเซ€เชจเชคเชฎ เชตเชฐเซเชคเชฎเชพเชจ เช…เชชเชกเซ‡เชŸเชจเซ‹ เชธเช‚เช—เซเชฐเชน เช•เชฐเซ‡ เช›เซ‡. เชคเซ‡ เชฏเชพเชฆ เชฐเชพเช–เชตเซเช‚ เช…เช—เชคเซเชฏเชจเซเช‚ เช›เซ‡ เช•เซ‡ เชคเชฎเชพเชฎ เช…เชชเชกเซ‡เชŸเซเชธ เช…เช—เชพเช‰เชจเชพ เชถเซ‡เชฐเชตเซ‹เชฒเซเชฏเซเชฎเช•เซ‡เชŸเซ‡เชฌเชฒเชฎเชพเช‚ เชชเซเชฐเชคเชฟเชฌเชฟเช‚เชฌเชฟเชค เชฅเชพเชฏ เช›เซ‡, เชชเชฐเช‚เชคเซ เชฌเชงเชพ เช†เช—เชณ เชฎเซ‹เช•เชฒเชตเชพเชฎเชพเช‚ เช†เชตเชคเชพ เชจเชฅเซ€.

เช†เช—เชณ, เช† KTable เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡, เช…เชฎเซ‡ เชฆเชฐเซ‡เช• เช‰เชฆเซเชฏเซ‹เช—เชฎเชพเช‚ เชธเซŒเชฅเซ€ เชตเชงเซ เชถเซ‡เชฐเชจเชพ เชœเชฅเซเชฅเชพ เชธเชพเชฅเซ‡ เชชเชพเช‚เชš เช•เช‚เชชเชจเซ€เช“ เชธเซเชงเซ€ เชชเชนเซ‹เช‚เชšเชตเชพ เชฎเชพเชŸเซ‡ (เชตเซ‡เชชเชพเชฐ เชฅเชฏเซ‡เชฒเชพ เชถเซ‡เชฐเซเชธเชจเซ€ เชธเช‚เช–เซเชฏเชพ เชฆเซเชตเชพเชฐเชพ) เชเช•เช‚เชฆเชฐ เช•เชฐเซ€เช เช›เซ€เช. เช† เช•เชฟเชธเซเชธเชพเชฎเชพเช‚ เช…เชฎเชพเชฐเซ€ เช•เซเชฐเชฟเชฏเชพเช“ เชชเซเชฐเชฅเชฎ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เชฎเชพเชŸเซ‡ เชธเชฎเชพเชจ เชนเชถเซ‡.

  1. เช‰เชฆเซเชฏเซ‹เช— เชฆเซเชตเชพเชฐเชพ เชตเซเชฏเช•เซเชคเชฟเช—เชค เชถเซ‡เชฐเชตเซ‹เชฒเซเชฏเซเชฎ เช‘เชฌเซเชœเซ‡เช•เซเชŸเซเชธเชจเซ‡ เชœเซ‚เชฅ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เช…เชจเซเชฏ เชœเซ‚เชฅเชฌเชพเชฏ เช‘เชชเชฐเซ‡เชถเชจ เช•เชฐเซ‹.
  2. เชถเซ‡เชฐเชตเซ‹เชฒเซเชฏเซเชฎ เช‘เชฌเซเชœเซ‡เช•เซเชŸเซเชธเชจเซ‹ เชธเชพเชฐเชพเช‚เชถ เช†เชชเชตเชพเชจเซเช‚ เชถเชฐเซ‚ เช•เชฐเซ‹. เช† เชตเช–เชคเซ‡ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช‘เชฌเซเชœเซ‡เช•เซเชŸ เชจเชฟเชถเซเชšเชฟเชค-เช•เชฆเชจเซ€ เช…เช—เซเชฐเชคเชพ เช•เชคเชพเชฐ เช›เซ‡. เช† เชจเชฟเชฏเชค-เช•เชฆเชจเซ€ เช•เชคเชพเชฐเชฎเชพเช‚, เชซเช•เซเชค เชชเชพเช‚เชš เช•เช‚เชชเชจเซ€เช“เชจเซ‡ เชœ เชฐเชพเช–เชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เชœเซ‡เชฎเชพเช‚ เชธเซŒเชฅเซ€ เชตเชงเซ เชถเซ‡เชฐ เชตเซ‡เชšเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเชพ เชนเซ‹เชฏ.
  3. เชชเชพเช›เชฒเชพ เชซเช•เชฐเชพเชฎเชพเช‚เชฅเซ€ เชธเซเชŸเซเชฐเซ€เช‚เช— เชตเซ‡เชฒเซเชฏเซ เชชเชฐ เช•เชคเชพเชฐเซ‹เชจเซ‹ เชจเช•เชถเซ‹ เชฌเชจเชพเชตเซ‹ เช…เชจเซ‡ เช‰เชฆเซเชฏเซ‹เช— เชฆเซเชตเชพเชฐเชพ เชธเช‚เช–เซเชฏเชพ เชฆเซเชตเชพเชฐเชพ เชŸเซ‹เชšเชจเชพ เชชเชพเช‚เชš เชธเซŒเชฅเซ€ เชตเชงเซ เชŸเซเชฐเซ‡เชกเซ‡เชก เชธเซเชŸเซ‹เช• เชชเชฐเชค เช•เชฐเซ‹.
  4. เชตเชฟเชทเชฏ เชชเชฐ เชชเชฐเชฟเชฃเชพเชฎเซ‹เชจเซ‡ เชถเชฌเซเชฆเชฎเชพเชณเชพ เชธเซเชตเชฐเซ‚เชชเชฎเชพเช‚ เชฒเช–เซ‹.

เชซเชฟเช— เชฎเชพเช‚. เช†เช•เซƒเชคเชฟ 5.10 เชกเซ‡เชŸเชพ เชซเซเชฒเซ‹ เชŸเซ‹เชชเซ‹เชฒเซ‹เชœเซ€ เช—เซเชฐเชพเชซ เชฌเชคเชพเชตเซ‡ เช›เซ‡. เชœเซ‡เชฎ เชคเชฎเซ‡ เชœเซ‹เชˆ เชถเช•เซ‹ เช›เซ‹, เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเชจเซ‹ เชฌเซ€เชœเซ‹ เชฐเชพเช‰เชจเซเชก เชเช•เชฆเชฎ เชธเชฐเชณ เช›เซ‡.

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"
เชนเชตเซ‡ เช…เชฎเชจเซ‡ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเชจเชพ เช† เชฌเซ€เชœเชพ เชฐเชพเช‰เชจเซเชกเชจเซ€ เชฐเชšเชจเชพเชจเซ€ เชธเซเชชเชทเซเชŸ เชธเชฎเชœ เช›เซ‡, เช…เชฎเซ‡ เชคเซ‡เชจเชพ เชธเซเชฐเซ‹เชค เช•เซ‹เชก เชคเชฐเชซ เชตเชณเซ€ เชถเช•เซ€เช เช›เซ€เช (เชคเชฎเซ‡ เชคเซ‡เชจเซ‡ src/main/java/bbejeck/chapter_5/AggregationsAndReducingExample.java เชซเชพเช‡เชฒเชฎเชพเช‚ เชœเซ‹เชถเซ‹) (เชฒเชฟเชธเซเชŸเชฟเช‚เช— 5.4) .

เช† เช†เชฐเช‚เชญเช•เชฐเซเชคเชพเชฎเชพเช‚ เชจเชฟเชถเซเชšเชฟเชค เช•เชคเชพเชฐ เชšเชฒ เช›เซ‡. เช† เชเช• เชตเซˆเชตเชฟเชงเซเชฏเชชเซ‚เชฐเซเชฃ เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช›เซ‡ เชœเซ‡ java.util.TreeSet เชฎเชพเชŸเซ‡ เชเชกเซ‡เชชเซเชŸเชฐ เช›เซ‡ เชœเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชŸเซเชฐเซ‡เชกเซ‡เชก เชถเซ‡เชฐเชจเชพ เช‰เชคเชฐเชคเชพ เช•เซเชฐเชฎเชฎเชพเช‚ เชŸเซ‹เชšเชจเชพ N เชชเชฐเชฟเชฃเชพเชฎเซ‹เชจเซ‡ เชŸเซเชฐเซ…เช• เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชฅเชพเชฏ เช›เซ‡.

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"
เชคเชฎเซ‡ เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ groupBy เช…เชจเซ‡ mapValues โ€‹โ€‹เช•เซ‰เชฒเซเชธ เชœเซ‹เชฏเชพ เช›เซ‡, เชคเซ‡เชฅเซ€ เช…เชฎเซ‡ เชคเซ‡เชฎเชพเช‚ เชœเชˆเชถเซเช‚ เชจเชนเซ€เช‚ (เช…เชฎเซ‡ KTable.toStream เชชเชฆเซเชงเชคเชฟเชจเซ‡ เช•เซ‰เชฒ เช•เชฐเซ€ เชฐเชนเซเชฏเชพเช‚ เช›เซ€เช เช•เชพเชฐเชฃ เช•เซ‡ KTable.print เชชเชฆเซเชงเชคเชฟ เชจเชพเชชเชธเช‚เชฆ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡). เชชเชฐเช‚เชคเซ เชคเชฎเซ‡ เชนเชœเซ เชธเซเชงเซ€ aggregate() เชจเซเช‚ KTable เชธเช‚เชธเซเช•เชฐเชฃ เชœเซ‹เชฏเซเช‚ เชจเชฅเซ€, เชคเซ‡เชฅเซ€ เช…เชฎเซ‡ เชคเซ‡เชจเซ€ เชšเชฐเซเชšเชพ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชฅเซ‹เชกเซ‹ เชธเชฎเชฏ เชชเชธเชพเชฐ เช•เชฐเซ€เชถเซเช‚.

เชœเซ‡เชฎ เชคเชฎเชจเซ‡ เชฏเชพเชฆ เช›เซ‡, KTable เชจเซ‡ เชœเซ‡ เช…เชฒเช— เชฌเชจเชพเชตเซ‡ เช›เซ‡ เชคเซ‡ เช เช›เซ‡ เช•เซ‡ เชธเชฎเชพเชจ เช•เซ€ เชธเชพเชฅเซ‡เชจเชพ เชฐเซ‡เช•เซ‹เชฐเซเชกเชจเซ‡ เช…เชชเชกเซ‡เชŸ เช—เชฃเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. KTable เชœเซ‚เชจเซ€ เชเชจเซเชŸเซเชฐเซ€เชจเซ‡ เชจเชตเซ€ เชเชจเซเชŸเซเชฐเซ€ เชธเชพเชฅเซ‡ เชฌเชฆเชฒเซ‡ เช›เซ‡. เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช เชœ เชฐเซ€เชคเซ‡ เชฅเชพเชฏ เช›เซ‡: เชธเชฎเชพเชจ เช•เซ€ เชธเชพเชฅเซ‡ เชจเชตเซ€เชจเชคเชฎ เชฐเซ‡เช•เซ‹เชฐเซเชกเซเชธ เชเช•เชคเซเชฐ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชœเซเชฏเชพเชฐเซ‡ เช•เซ‹เชˆ เชฐเซ‡เช•เซ‹เชฐเซเชก เช†เชตเซ‡ เช›เซ‡, เชคเซเชฏเชพเชฐเซ‡ เชคเซ‡เชจเซ‡ เชเชกเชกเชฐ (เชเช—เซเชฐเชฟเช—เซ‡เชŸ เชฎเซ‡เชฅเชก เช•เซ‹เชฒเชฎเชพเช‚ เชฌเซ€เชœเซเช‚ เชชเซ‡เชฐเชพเชฎเซ€เชŸเชฐ) เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ FixedSizePriorityQueue เช•เซเชฒเชพเชธ เชˆเชจเซเชธเซเชŸเชจเซเชธเชฎเชพเช‚ เช‰เชฎเซ‡เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เชœเซ‹ เชคเซ‡ เชœ เช•เซ€ เชธเชพเชฅเซ‡ เชฌเซ€เชœเซ‹ เชฐเซ‡เช•เซ‹เชฐเซเชก เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เช…เชธเซเชคเชฟเชคเซเชตเชฎเชพเช‚ เชนเซ‹เชฏ, เชคเซ‹ เชฌเชพเชฆเชฌเชพเช•เซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชœเซ‚เชจเซ‹ เชฐเซ‡เช•เซ‹เชฐเซเชก เชฆเซ‚เชฐ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ (เชคเซเชฐเซ€เชœเซเช‚ เชชเซ‡เชฐเชพเชฎเซ€เชŸเชฐ เชเช•เช‚เชฆเชฐ เชชเชฆเซเชงเชคเชฟ เช•เซ‰เชฒ).

เช† เชฌเชงเชพเชจเซ‹ เช…เชฐเซเชฅ เช เช›เซ‡ เช•เซ‡ เช…เชฎเชพเชฐเซเช‚ เชเช—เซเชฐเซ€เช—เซ‡เชŸเชฐ, FixedSizePriorityQueue, เชคเชฎเชพเชฎ เชฎเซ‚เชฒเซเชฏเซ‹เชจเซ‡ เชเช• เช•เซ€ เชตเชกเซ‡ เชเช•เชคเซเชฐ เช•เชฐเชคเซเช‚ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ N เชธเซŒเชฅเซ€ เชตเชงเซ เชŸเซเชฐเซ‡เชกเซ‡เชก เชชเซเชฐเช•เชพเชฐเชจเชพ เชถเซ‡เชฐเซ‹เชจเชพ เชœเชฅเซเชฅเชพเชจเซ‹ เชฎเซ‚เชตเชฟเช‚เช— เชธเชฐเชตเชพเชณเซ‹ เชธเช‚เช—เซเชฐเชนเชฟเชค เช•เชฐเซ‡ เช›เซ‡. เชฆเชฐเซ‡เช• เช‡เชจเช•เชฎเชฟเช‚เช— เชเชจเซเชŸเซเชฐเซ€เชฎเชพเช‚ เช…เชคเซเชฏเชพเชฐ เชธเซเชงเซ€ เชตเซ‡เชšเชพเชฏเซ‡เชฒเชพ เชถเซ‡เชฐเชจเซ€ เช•เซเชฒ เชธเช‚เช–เซเชฏเชพ เชนเซ‹เชฏ เช›เซ‡. KTable เชคเชฎเชจเซ‡ เชฆเชฐเซ‡เช• เช…เชชเชกเซ‡เชŸเชจเชพ เชฐเซ‹เชฒเชฟเช‚เช— เชเช—เซเชฐเชฟเช—เซ‡เชถเชจเชจเซ€ เช†เชตเชถเซเชฏเช•เชคเชพ เชตเชฟเชจเชพ, เชนเชพเชฒเชฎเชพเช‚ เช•เชˆ เช•เช‚เชชเชจเซ€เช“เชจเชพ เชถเซ‡เชฐ เชธเซŒเชฅเซ€ เชตเชงเซ เชŸเซเชฐเซ‡เชก เชฅเชพเชฏ เช›เซ‡ เชคเซ‡เชจเซ€ เชฎเชพเชนเชฟเชคเซ€ เช†เชชเชถเซ‡.

เช…เชฎเซ‡ เชฌเซ‡ เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เชตเชธเซเชคเซเช“ เช•เชฐเชตเชพเชจเซเช‚ เชถเซ€เช–เซเชฏเชพ:

  • เชธเชพเชฎเชพเชจเซเชฏ เช•เซ€ เชฆเซเชตเชพเชฐเชพ KTable เชฎเชพเช‚ เชœเซ‚เชฅ เชฎเซ‚เชฒเซเชฏเซ‹;
  • เช† เชœเซ‚เชฅเชฌเชฆเซเชง เชฎเซ‚เชฒเซเชฏเซ‹ เชชเชฐ เชฐเซ‹เชฒเช…เชช เช…เชจเซ‡ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เชœเซ‡เชตเซ€ เช‰เชชเชฏเซ‹เช—เซ€ เช•เชพเชฎเช—เซ€เชฐเซ€ เช•เชฐเซ‹.

เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เชเชชเซเชฒเซ€เช•เซ‡เชถเชจ เชฆเซเชตเชพเชฐเชพ เช–เชธเซ‡เชกเชตเชพเชฎเชพเช‚ เช†เชตเชคเชพ เชกเซ‡เชŸเชพเชจเชพ เช…เชฐเซเชฅเชจเซ‡ เชธเชฎเชœเชตเชพ เช…เชจเซ‡ เชคเซ‡ เช•เชˆ เชฎเชพเชนเชฟเชคเซ€ เชตเชนเชจ เช•เชฐเซ‡ เช›เซ‡ เชคเซ‡ เชธเชฎเชœเชตเชพ เชฎเชพเชŸเซ‡ เช† เช•เชพเชฎเช—เซ€เชฐเซ€ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชฐเชตเซ€ เชคเซ‡ เชœเชพเชฃเชตเซเช‚ เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เช›เซ‡.

เช…เชฎเซ‡ เช† เชชเซเชธเซเชคเช•เชฎเชพเช‚ เช…เช—เชพเช‰ เชšเชฐเซเชšเชพ เช•เชฐเซ‡เชฒเซ€ เช•เซ‡เชŸเชฒเซ€เช• เชฎเซเช–เซเชฏ เชตเชฟเชญเชพเชตเชจเชพเช“เชจเซ‡ เชชเชฃ เชธเชพเชฅเซ‡ เชฒเชพเชตเซเชฏเชพ เช›เซ€เช. เชชเซเชฐเช•เชฐเชฃ 4 เชฎเชพเช‚, เช…เชฎเซ‡ เชšเชฐเซเชšเชพ เช•เชฐเซ€ เช›เซ‡ เช•เซ‡ เชธเซเชŸเซเชฐเซ€เชฎเชฟเช‚เช— เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชฎเชพเชŸเซ‡ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชฆเซ‹เชท-เชธเชนเชฟเชทเซเชฃเซ, เชธเซเชฅเชพเชจเชฟเช• เชฐเชพเชœเซเชฏ เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เช›เซ‡. เช† เชชเซเชฐเช•เชฐเชฃเชฎเชพเช‚ เชชเซเชฐเชฅเชฎ เช‰เชฆเชพเชนเชฐเชฃ เชฆเชฐเซเชถเชพเชตเซเชฏเซเช‚ เช›เซ‡ เช•เซ‡ เชถเชพ เชฎเชพเชŸเซ‡ เชธเซเชฅเชพเชจเชฟเช• เชฐเชพเชœเซเชฏ เชเชŸเชฒเซเช‚ เชฎเชนเชคเซเชตเชจเซเช‚ เช›เซ‡ - เชคเซ‡ เชคเชฎเชจเซ‡ เชคเชฎเซ‡ เชชเชนเซ‡เชฒเชพเชฅเซ€ เช•เชˆ เชฎเชพเชนเชฟเชคเซ€ เชœเซ‹เชˆ เช›เซ‡ เชคเซ‡เชจเซ‹ เชŸเซเชฐเซ…เช• เชฐเชพเช–เชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพ เช†เชชเซ‡ เช›เซ‡. เชธเซเชฅเชพเชจเชฟเช• เชเช•เซเชธเซ‡เชธ เชจเซ‡เชŸเชตเชฐเซเช• เชตเชฟเชฒเช‚เชฌเชจเซ‡ เชŸเชพเชณเซ‡ เช›เซ‡, เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซ‡ เชตเชงเซ เช•เชพเชฐเซเชฏเช•เซเชทเชฎ เช…เชจเซ‡ เชญเซ‚เชฒ-เชชเซเชฐเชคเชฟเชฐเซ‹เชงเช• เชฌเชจเชพเชตเซ‡ เช›เซ‡.

เช•เซ‹เชˆเชชเชฃ เชฐเซ‹เชฒเช…เชช เช…เชฅเชตเชพ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช•เชพเชฎเช—เซ€เชฐเซ€ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡, เชคเชฎเชพเชฐเซ‡ เชฐเชพเชœเซเชฏ เชธเซเชŸเซ‹เชฐเชจเซเช‚ เชจเชพเชฎ เชธเซเชชเชทเซเชŸ เช•เชฐเชตเซเช‚ เช†เชตเชถเซเชฏเช• เช›เซ‡. เชฐเซ‹เชฒเช…เชช เช…เชจเซ‡ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช•เชพเชฎเช—เซ€เชฐเซ€ KTable เชฆเชพเช–เชฒเซ‹ เช†เชชเซ‡ เช›เซ‡, เช…เชจเซ‡ KTable เชœเซ‚เชจเชพ เชชเชฐเชฟเชฃเชพเชฎเซ‹เชจเซ‡ เชจเชตเชพ เชธเชพเชฅเซ‡ เชฌเชฆเชฒเชตเชพ เชฎเชพเชŸเซ‡ เชธเซเชŸเซ‡เชŸ เชธเซเชŸเซ‹เชฐเซ‡เชœเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡. เชคเชฎเซ‡ เชœเซ‹เชฏเซเช‚ เชคเซ‡เชฎ, เชคเชฎเชพเชฎ เช…เชชเชกเซ‡เชŸเซเชธ เชชเชพเชˆเชชเชฒเชพเชˆเชจ เชจเซ€เชšเซ‡ เชฎเซ‹เช•เชฒเชตเชพเชฎเชพเช‚ เช†เชตเชคเชพ เชจเชฅเซ€, เช…เชจเซ‡ เช† เช…เช—เชคเซเชฏเชจเซเช‚ เช›เซ‡ เช•เชพเชฐเชฃ เช•เซ‡ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช•เชพเชฎเช—เซ€เชฐเซ€ เชธเชพเชฐเชพเช‚เชถ เชฎเชพเชนเชฟเชคเซ€ เช‰เชคเซเชชเชจเซเชจ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชฐเชšเชพเชฏเซ‡เชฒ เช›เซ‡. เชœเซ‹ เชคเชฎเซ‡ เชธเซเชฅเชพเชจเชฟเช• เชธเซเชฅเชฟเชคเชฟ เชฒเชพเช—เซ เชจ เช•เชฐเซ‹, เชคเซ‹ KTable เชคเชฎเชพเชฎ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช…เชจเซ‡ เชฐเซ‹เชฒเช…เชช เชชเชฐเชฟเชฃเชพเชฎเซ‹เชจเซ‡ เชซเซ‹เชฐเชตเชฐเซเชก เช•เชฐเชถเซ‡.

เช†เช—เชณ, เช…เชฎเซ‡ เชšเซ‹เช•เซเช•เชธ เชธเชฎเชฏเช—เชพเชณเชพเชจเซ€ เช…เช‚เชฆเชฐ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เชœเซ‡เชตเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€เช“ เชชเชฐ เชงเซเชฏเชพเชจ เช†เชชเซ€เชถเซเช‚ - เช•เชนเซ‡เชตเชพเชคเชพ เชตเชฟเชจเซเชกเซ‹เช‡เช‚เช— เช“เชชเชฐเซ‡เชถเชจเซเชธ.

5.3.2. เชตเชฟเชจเซเชกเซ‹ เช•เชพเชฎเช—เซ€เชฐเซ€

เช…เช—เชพเช‰เชจเชพ เชตเชฟเชญเชพเช—เชฎเชพเช‚, เช…เชฎเซ‡ เชธเซเชฒเชพเช‡เชกเชฟเช‚เช— เช•เชจเซเชตเซ‹เชฒเซเชฏเซเชถเชจ เช…เชจเซ‡ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เชฐเชœเซ‚ เช•เชฐเซเชฏเซเช‚ เชนเชคเซเช‚. เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซ‡ เชถเซ‡เชฐเชจเชพ เชตเซ‡เชšเชพเชฃเชจเชพ เชœเชฅเซเชฅเชพเชจเซเช‚ เชธเชคเชค เชฐเซ‹เชฒ-เช…เชช เช•เชฐเซเชฏเซเช‚ เชนเชคเซเช‚, เชคเซเชฏเชพเชฐเชฌเชพเชฆ เชเช•เซเชธเชšเซ‡เชจเซเชœ เชชเชฐ เชธเซŒเชฅเซ€ เชตเชงเซ เชŸเซเชฐเซ‡เชกเซ‡เชก เชชเชพเช‚เชš เชถเซ‡เชฐเซ‹เชจเซเช‚ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เชฅเชฏเซเช‚ เชนเชคเซเช‚.

เช•เซเชฏเชพเชฐเซ‡เช• เช†เชตเชพ เชธเชคเชค เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช…เชจเซ‡ เชชเชฐเชฟเชฃเชพเชฎเซ‹เชจเซเช‚ เชฐเซ‹เชฒ-เช…เชช เชœเชฐเซ‚เชฐเซ€ เช›เซ‡. เช…เชจเซ‡ เช•เซ‡เชŸเชฒเซ€เช•เชตเชพเชฐ เชคเชฎเชพเชฐเซ‡ เช†เชชเซ‡เชฒ เชธเชฎเชฏเช—เชพเชณเชพ เชฆเชฐเชฎเชฟเชฏเชพเชจ เชœ เช“เชชเชฐเซ‡เชถเชจ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชชเชกเซ‡ เช›เซ‡. เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เช—เชฃเชคเชฐเซ€ เช•เชฐเซ‹ เช•เซ‡ เช›เซ‡เชฒเซเชฒเซ€ 10 เชฎเชฟเชจเชฟเชŸเชฎเชพเช‚ เชšเซ‹เช•เซเช•เชธ เช•เช‚เชชเชจเซ€เชจเชพ เชถเซ‡เชฐ เชธเชพเชฅเซ‡ เช•เซ‡เชŸเชฒเชพ เชตเชฟเชจเชฟเชฎเชฏ เชตเซเชฏเชตเชนเชพเชฐเซ‹ เชฅเชฏเชพ. เช…เชฅเชตเชพ เช›เซ‡เชฒเซเชฒเชพ 15 เชฎเชฟเชจเชฟเชŸเชฎเชพเช‚ เชจเชตเชพ เชœเชพเชนเซ‡เชฐเชพเชค เชฌเซ‡เชจเชฐ เชชเชฐ เช•เซ‡เชŸเชฒเชพ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“เช เช•เซเชฒเชฟเช• เช•เชฐเซเชฏเซเช‚. เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เช†เชตเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€ เช˜เชฃเซ€ เชตเช–เชค เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เชชเชฐเชฟเชฃเชพเชฎเซ‹ เชธเชพเชฅเซ‡ เช•เซ‡ เชœเซ‡ เชซเช•เซเชค เชจเชฟเชฐเซเชฆเชฟเชทเซเชŸ เชธเชฎเชฏ (เชธเชฎเชฏ เชตเชฟเชจเซเชกเซ‹) เชชเชฐ เชฒเชพเช—เซ เชฅเชพเชฏ เช›เซ‡.

เช–เชฐเซ€เชฆเชจเชพเชฐ เชฆเซเชตเชพเชฐเชพ เชตเชฟเชจเชฟเชฎเชฏ เชตเซเชฏเชตเชนเชพเชฐเซ‹เชจเซ€ เช—เชฃเชคเชฐเซ€

เช†เช—เชฒเชพ เช‰เชฆเชพเชนเชฐเชฃเชฎเชพเช‚, เช…เชฎเซ‡ เชฌเชนเซเชตเชฟเชง เชตเซ‡เชชเชพเชฐเซ€เช“-เช•เชพเช‚ เชคเซ‹ เชฎเซ‹เชŸเซ€ เชธเช‚เชธเซเชฅเชพเช“ เช…เชฅเชตเชพ เชธเซเชฎเชพเชฐเซเชŸ เชตเซเชฏเช•เซเชคเชฟเช—เชค เชซเชพเช‡เชจเชพเชจเซเชธเชฐเซเชธ เชตเชšเซเชšเซ‡เชจเชพ เชธเซเชŸเซ‹เช• เชตเซเชฏเชตเชนเชพเชฐเซ‹เชจเซ‡ เชŸเซเชฐเซ…เช• เช•เชฐเซ€เชถเซเช‚.

เช† เชŸเซเชฐเซ‡เช•เชฟเช‚เช— เชฎเชพเชŸเซ‡ เชฌเซ‡ เชธเช‚เชญเชตเชฟเชค เช•เชพเชฐเชฃเซ‹ เช›เซ‡. เชคเซ‡เชฎเชพเช‚เชฅเซ€ เชเช• เช เชœเชพเชฃเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ เช•เซ‡ เชฎเชพเชฐเซเช•เซ‡เชŸ เชฒเซ€เชกเชฐเซเชธ เชถเซเช‚ เช–เชฐเซ€เชฆเซ€/เชตเซ‡เชšเชพเชฃ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ‡. เชœเซ‹ เช† เชฎเซ‹เชŸเชพ เช–เซ‡เชฒเชพเชกเซ€เช“ เช…เชจเซ‡ เช…เชคเซเชฏเชพเชงเซเชจเชฟเช• เชฐเซ‹เช•เชพเชฃเช•เชพเชฐเซ‹ เชคเช• เชœเซเช เช›เซ‡, เชคเซ‹ เชคเซ‡เชฎเชจเซ€ เชตเซเชฏเซ‚เชนเชฐเชšเชจเชพเชจเซเช‚ เชชเชพเชฒเชจ เช•เชฐเชตเซเช‚ เช…เชฐเซเชฅเชชเซ‚เชฐเซเชฃ เช›เซ‡. เชฌเซ€เชœเซเช‚ เช•เชพเชฐเชฃ เช—เซ‡เชฐเช•เชพเชฏเชฆเซ‡เชธเชฐ เช†เช‚เชคเชฐเชฟเช• เชตเซ‡เชชเชพเชฐเชจเชพ เช•เซ‹เชˆเชชเชฃ เชธเช‚เชญเชตเชฟเชค เชธเช‚เช•เซ‡เชคเซ‹ เชถเซ‹เชงเชตเชพเชจเซ€ เช‡เชšเซเช›เชพ เช›เซ‡. เช† เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเชพเชฐเซ‡ เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เชชเซเชฐเซ‡เชธ เชฐเซ€เชฒเซ€เช เชธเชพเชฅเซ‡ เชฎเซ‹เชŸเชพ เชตเซ‡เชšเชพเชฃเชจเชพ เชธเซเชชเชพเช‡เช•เซเชธเชจเชพ เชธเชนเชธเช‚เชฌเช‚เชงเชจเซเช‚ เชตเชฟเชถเซเชฒเซ‡เชทเชฃ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชชเชกเชถเซ‡.

เช†เชตเชพ เชŸเซเชฐเซ‡เช•เชฟเช‚เช—เชฎเชพเช‚ เชจเซ€เชšเซ‡เชจเชพ เชชเช—เชฒเชพเช‚เช“ เชถเชพเชฎเซ‡เชฒ เช›เซ‡:

  • เชธเซเชŸเซ‹เช•-เชŸเซเชฐเชพเชจเซเชเซ‡เช•เซเชถเชจ เชตเชฟเชทเชฏเชฎเชพเช‚เชฅเซ€ เชตเชพเช‚เชšเชจ เชฎเชพเชŸเซ‡ เชธเซเชŸเซเชฐเซ€เชฎ เชฌเชจเชพเชตเชตเซ€;
  • เช–เชฐเซ€เชฆเชจเชพเชฐ ID เช…เชจเซ‡ เชธเซเชŸเซ‹เช• เชชเซเชฐเชคเซ€เช• เชฆเซเชตเชพเชฐเชพ เช‡เชจเช•เชฎเชฟเช‚เช— เชฐเซ‡เช•เซ‹เชฐเซเชกเซเชธเชจเซเช‚ เชœเซ‚เชฅเชฌเชฆเซเชง เช•เชฐเชตเซเช‚. groupBy เชชเชฆเซเชงเชคเชฟเชจเซ‡ เช•เซ‰เชฒ เช•เชฐเชตเชพเชฅเซ€ KGroupedStream เชตเชฐเซเช—เชจเซ‹ เชฆเชพเช–เชฒเซ‹ เชฎเชณเซ‡ เช›เซ‡;
  • KGroupedStream.windowedBy เชชเชฆเซเชงเชคเชฟ เชธเชฎเชฏ เชตเชฟเชจเซเชกเซ‹ เชธเซเชงเซ€ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชกเซ‡เชŸเชพ เชธเซเชŸเซเชฐเซ€เชฎ เช†เชชเซ‡ เช›เซ‡, เชœเซ‡ เชตเชฟเชจเซเชกเซ‹ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃเชจเซ‡ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡. เชตเชฟเชจเซเชกเซ‹ เชชเซเชฐเช•เชพเชฐ เชชเชฐ เช†เชงเชพเชฐ เชฐเชพเช–เซ€เชจเซ‡, เช•เซเชฏเชพเช‚ เชคเซ‹ TimeWindowedKStream เช…เชฅเชตเชพ SessionWindowedKStream เชชเชฐเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡;
  • เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช•เชพเชฎเช—เซ€เชฐเซ€ เชฎเชพเชŸเซ‡ เชตเซเชฏเชตเชนเชพเชฐเชจเซ€ เช—เชฃเชคเชฐเซ€. เชตเชฟเชจเซเชกเซ‹เชก เชกเซ‡เชŸเชพ เชซเซเชฒเซ‹ เชจเช•เซเช•เซ€ เช•เชฐเซ‡ เช›เซ‡ เช•เซ‡ เช† เช—เชฃเชคเชฐเซ€เชฎเชพเช‚ เชšเซ‹เช•เซเช•เชธ เชฐเซ‡เช•เซ‹เชฐเซเชกเชจเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฒเซ‡เชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เช•เซ‡ เช•เซ‡เชฎ;
  • เชตเชฟเชทเชฏ เชชเชฐ เชชเชฐเชฟเชฃเชพเชฎเซ‹ เชฒเช–เชตเชพ เช…เชฅเชตเชพ เชตเชฟเช•เชพเชธ เชฆเชฐเชฎเชฟเชฏเชพเชจ เช•เชจเซเชธเซ‹เชฒ เชชเชฐ เช†เช‰เชŸเชชเซเชŸ เช•เชฐเชตเซเช‚.

เช† เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซ€ เชŸเซ‹เชชเซ‹เชฒเซ‹เชœเซ€ เชธเชฐเชณ เช›เซ‡, เชชเชฐเช‚เชคเซ เชคเซ‡เชจเซเช‚ เชธเซเชชเชทเซเชŸ เชšเชฟเชคเซเชฐ เชฎเชฆเชฆเชฐเซ‚เชช เชฅเชถเซ‡. เชšเชพเชฒเซ‹ เชซเชฟเช— เชชเชฐ เชเช• เชจเชœเชฐ เช•เชฐเซ€เช. 5.11.

เช†เช—เชณ, เช…เชฎเซ‡ เชตเชฟเชจเซเชกเซ‹ เช‘เชชเชฐเซ‡เชถเชจเซเชธเชจเซ€ เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพ เช…เชจเซ‡ เช…เชจเซเชฐเซ‚เชช เช•เซ‹เชก เชœเซ‹เชˆเชถเซเช‚.

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"

เชตเชฟเชจเซเชกเซ‹ เชชเซเชฐเช•เชพเชฐเซ‹

เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธเชฎเชพเช‚ เชคเซเชฐเชฃ เชชเซเชฐเช•เชพเชฐเชจเซ€ เชตเชฟเชจเซเชกเซ‹ เช›เซ‡:

  • เชธเซ‡เชถเชจเชฒ
  • "เชŸเชฎเซเชฌเชฒเชฟเช‚เช—" (เชŸเชฎเซเชฌเชฒเชฟเช‚เช—);
  • เชธเซเชฒเชพเช‡เชกเชฟเช‚เช—/เชนเซ‹เชชเชฟเช‚เช—.

เช•เชฏเซเช‚ เชชเชธเช‚เชฆ เช•เชฐเชตเซเช‚ เชคเซ‡ เชคเชฎเชพเชฐเซ€ เชตเซเชฏเชตเชธเชพเชฏ เชœเชฐเซ‚เชฐเชฟเชฏเชพเชคเซ‹ เชชเชฐ เช†เชงเชพเชฐเชฟเชค เช›เซ‡. เชŸเชฎเซเชฌเชฒเชฟเช‚เช— เช…เชจเซ‡ เชœเชฎเซเชชเชฟเช‚เช— เชตเชฟเชจเซเชกเซ‹ เชธเชฎเชฏ-เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชนเซ‹เชฏ เช›เซ‡, เชœเซเชฏเชพเชฐเซ‡ เชธเชคเซเชฐ เชตเชฟเชจเซเชกเซ‹ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชชเซเชฐเชตเซƒเชคเซเชคเชฟ เชฆเซเชตเชพเชฐเชพ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชนเซ‹เชฏ เช›เซ‡-เชธเชคเซเชฐ(เชธเชคเซเชฐเซ‹)เชจเซ‹ เชธเชฎเชฏเช—เชพเชณเซ‹ เชซเช•เซเชค เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เช•เซ‡เชŸเชฒเชพ เชธเช•เซเชฐเชฟเชฏ เช›เซ‡ เชคเซ‡เชจเชพ เช†เชงเชพเชฐเซ‡ เชจเช•เซเช•เซ€ เชฅเชพเชฏ เช›เซ‡. เชฏเชพเชฆ เชฐเชพเช–เชตเชพเชจเซ€ เชฎเซเช–เซเชฏ เชฌเชพเชฌเชค เช เช›เซ‡ เช•เซ‡ เชคเชฎเชพเชฎ เชตเชฟเชจเซเชกเซ‹ เชชเซเชฐเช•เชพเชฐเซ‹ เชเชจเซเชŸเซเชฐเซ€เช“เชจเซ€ เชคเชพเชฐเซ€เช–/เชธเชฎเชฏ เชธเซเชŸเซ‡เชฎเซเชช เชชเชฐ เช†เชงเชพเชฐเชฟเชค เช›เซ‡, เชธเชฟเชธเซเชŸเชฎเชจเชพ เชธเชฎเชฏ เชชเชฐ เชจเชนเซ€เช‚.

เช†เช—เชณ, เช…เชฎเซ‡ เชฆเชฐเซ‡เช• เชตเชฟเชจเซเชกเซ‹ เชชเซเชฐเช•เชพเชฐเซ‹ เชธเชพเชฅเซ‡ เช…เชฎเชพเชฐเซ€ เชŸเซ‹เชชเซ‹เชฒเซ‹เชœเซ€เชจเซ‹ เช…เชฎเชฒ เช•เชฐเซ€เช เช›เซ€เช. เชธเช‚เชชเซ‚เชฐเซเชฃ เช•เซ‹เชก เชซเช•เซเชค เชชเซเชฐเชฅเชฎ เช‰เชฆเชพเชนเชฐเชฃเชฎเชพเช‚ เชœ เช†เชชเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡; เช…เชจเซเชฏ เชชเซเชฐเช•เชพเชฐเชจเซ€ เชตเชฟเชจเซเชกเซ‹ เชฎเชพเชŸเซ‡ เชตเชฟเชจเซเชกเซ‹ เช“เชชเชฐเซ‡เชถเชจเชจเชพ เชชเซเชฐเช•เชพเชฐ เชธเชฟเชตเชพเชฏ เช•เช‚เชˆเชชเชฃ เชฌเชฆเชฒเชพเชถเซ‡ เชจเชนเซ€เช‚.

เชธเชคเซเชฐ เชตเชฟเชจเซเชกเซ‹

เชธเชคเซเชฐ เชตเชฟเชจเซเชกเซ‹ เช…เชจเซเชฏ เชคเชฎเชพเชฎ เชชเซเชฐเช•เชพเชฐเชจเซ€ เชตเชฟเชจเซเชกเซ‹ เช•เชฐเชคเชพเช‚ เช˜เชฃเซ€ เช…เชฒเช— เช›เซ‡. เชคเซ‡เช“ เชธเชฎเชฏ เชฆเซเชตเชพเชฐเชพ เชเชŸเชฒเชพ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชจเชฅเซ€ เชœเซ‡เชŸเชฒเชพ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเซ€ เชชเซเชฐเชตเซƒเชคเซเชคเชฟ (เช…เชฅเชตเชพ เชคเชฎเซ‡ เชŸเซเชฐเซ…เช• เช•เชฐเชตเชพ เชฎเชพเช‚เช—เซ‹ เช›เซ‹ เชคเซ‡ เชเชจเซเชŸเชฟเชŸเซ€เชจเซ€ เชชเซเชฐเชตเซƒเชคเซเชคเชฟ) เชฆเซเชตเชพเชฐเชพ. เชธเชคเซเชฐ เชตเชฟเชจเซเชกเซ‹ เชจเชฟเชทเซเช•เซเชฐเชฟเชฏเชคเชพเชจเชพ เชธเชฎเชฏเช—เชพเชณเชพ เชฆเซเชตเชพเชฐเชพ เชธเซ€เชฎเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.

เช†เช•เซƒเชคเชฟ 5.12 เชธเชคเซเชฐ เชตเชฟเชจเซเชกเซ‹เชเชจเชพ เช–เซเชฏเชพเชฒเชจเซ‡ เชธเชฎเชœเชพเชตเซ‡ เช›เซ‡. เชจเชพเชจเซเช‚ เชธเชคเซเชฐ เชคเซ‡เชจเซ€ เชกเชพเชฌเซ€ เชฌเชพเชœเซเชจเชพ เชธเชคเซเชฐ เชธเชพเชฅเซ‡ เชฎเชฐเซเชœ เชฅเชˆ เชœเชถเซ‡. เช…เชจเซ‡ เชœเชฎเชฃเซ€ เชฌเชพเชœเซเชจเซเช‚ เชธเชคเซเชฐ เช…เชฒเช— เชนเชถเซ‡ เช•เชพเชฐเชฃ เช•เซ‡ เชคเซ‡ เชฒเชพเช‚เชฌเชพ เชธเชฎเชฏ เชธเซเชงเซ€ เชจเชฟเชทเซเช•เซเชฐเชฟเชฏเชคเชพเชจเซ‡ เช…เชจเซเชธเชฐเซ‡ เช›เซ‡. เชธเชคเซเชฐ เชตเชฟเชจเซเชกเซ‹ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเซ€ เชชเซเชฐเชตเซƒเชคเซเชคเชฟ เชชเชฐ เช†เชงเชพเชฐเชฟเชค เช›เซ‡, เชชเชฐเช‚เชคเซ เชเชจเซเชŸเซเชฐเซ€ เช•เชฏเชพ เชธเชคเซเชฐเชจเซ€ เช›เซ‡ เชคเซ‡ เชจเชฟเชฐเซเชงเชพเชฐเชฟเชค เช•เชฐเชตเชพ เชเชจเซเชŸเซเชฐเซ€เชฎเชพเช‚เชฅเซ€ เชคเชพเชฐเซ€เช–/เชธเชฎเชฏ เชธเซเชŸเซ‡เชฎเซเชชเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡.

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"

เชธเซเชŸเซ‹เช• เชŸเซเชฐเชพเชจเซเชเซ‡เช•เซเชถเชจเชจเซ‡ เชŸเซเชฐเซ…เช• เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชธเซ‡เชถเชจ เชตเชฟเชจเซเชกเซ‹เชเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹

เชšเชพเชฒเซ‹ เชตเชฟเชจเชฟเชฎเชฏ เชตเซเชฏเชตเชนเชพเชฐเซ‹ เชตเชฟเชถเซ‡ เชฎเชพเชนเชฟเชคเซ€ เชฎเซ‡เชณเชตเชตเชพ เชฎเชพเชŸเซ‡ เชธเชคเซเชฐ เชตเชฟเช‚เชกเซ‹เชเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เช. เชธเชคเซเชฐ เชตเชฟเชจเซเชกเซ‹เชเชจเซเช‚ เช…เชฎเชฒเซ€เช•เชฐเชฃ เชฒเชฟเชธเซเชŸเชฟเช‚เช— 5.5 เชฎเชพเช‚ เชฌเชคเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เช›เซ‡ (เชœเซ‡ src/main/java/bbejeck/chapter_5/CountingWindowingAndKTableJoinExample.java เชฎเชพเช‚ เชฎเชณเซ€ เชถเช•เซ‡ เช›เซ‡).

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"
เชคเชฎเซ‡ เช† เชŸเซ‹เชชเซ‹เชฒเซ‹เชœเซ€เชฎเชพเช‚ เชฎเซ‹เชŸเชพเชญเชพเช—เชจเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€เช“ เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ เชœเซ‹เชˆ เช›เซ‡, เชคเซ‡เชฅเซ€ เชคเซ‡เชฎเชจเซ‡ เช…เชนเซ€เช‚ เชซเชฐเซ€เชฅเซ€ เชœเซ‹เชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€. เชชเชฐเช‚เชคเซ เช…เชนเซ€เช‚ เช•เซ‡เชŸเชฒเชพเช• เชจเชตเชพ เชคเชคเซเชตเซ‹ เชชเชฃ เช›เซ‡, เชœเซ‡เชจเซ€ เช†เชชเชฃเซ‡ เชนเชตเซ‡ เชšเชฐเซเชšเชพ เช•เชฐเซ€เชถเซเช‚.

เช•เซ‹เชˆเชชเชฃ เชœเซ‚เชฅเชฌเชพเชฏ เช•เชพเชฎเช—เซ€เชฐเซ€ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เช…เชฎเซเช• เชชเซเชฐเช•เชพเชฐเชจเซ€ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช•เชพเชฎเช—เซ€เชฐเซ€ (เชเช—เซเชฐเชฟเช—เซ‡เชถเชจ, เชฐเซ‹เชฒเช…เชช เช…เชฅเชตเชพ เช—เชฃเชคเชฐเซ€) เช•เชฐเซ‡ เช›เซ‡. เชคเชฎเซ‡ เชšเชพเชฒเชคเชพ เช•เซเชฒ เชธเชพเชฅเซ‡ เชธเช‚เชšเชฟเชค เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชฅเชตเชพ เชตเชฟเชจเซเชกเซ‹ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹, เชœเซ‡ เชšเซ‹เช•เซเช•เชธ เชธเชฎเชฏเชจเซ€ เชตเชฟเชจเซเชกเซ‹เชฎเชพเช‚ เชเช•เชพเช‰เชจเซเชŸ เชฐเซ‡เช•เซ‹เชฐเซเชกเชจเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฒเซ‡ เช›เซ‡.

เชฒเชฟเชธเซเชŸเชฟเช‚เช— 5.5 เชฎเชพเช‚เชจเซ‹ เช•เซ‹เชก เชธเชคเซเชฐ เชตเชฟเชจเซเชกเซ‹เชจเซ€ เช…เช‚เชฆเชฐเชจเชพ เชตเซเชฏเชตเชนเชพเชฐเซ‹เชจเซ€ เชธเช‚เช–เซเชฏเชพเชจเซ‡ เช—เชฃเซ‡ เช›เซ‡. เชซเชฟเช— เชฎเชพเช‚. 5.13 เช† เช•เซเชฐเชฟเชฏเชพเช“เชจเซเช‚ เชคเชฌเช•เซเช•เชพเชตเชพเชฐ เชตเชฟเชถเซเชฒเซ‡เชทเชฃ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.

windowedBy(SessionWindows.with(twentySeconds).until(fifteenMinutes)) เช•เซ‰เชฒ เช•เชฐเซ€เชจเซ‡ เช…เชฎเซ‡ 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 เช›เซ‡.

เช† เชตเชฟเชญเชพเช—เชฎเชพเช‚ เชœเซ‡ เชตเชฐเซเชฃเชตเซ‡เชฒ เช›เซ‡ เชคเซ‡เชฎเชพเช‚เชฅเซ€, เชจเซ€เชšเซ‡เชจเซ€ เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เช˜เซ‹เช‚เช˜เชพเชŸเชจเซ‡ เชฏเชพเชฆ เชฐเชพเช–เชตเชพ เชฏเซ‹เช—เซเชฏ เช›เซ‡:

  • เชธเชคเซเชฐเซ‹ เชจเชฟเชถเซเชšเชฟเชค เช•เชฆเชจเซ€ เชตเชฟเชจเซเชกเซ‹ เชจเชฅเซ€. เช†เชชเซ‡เชฒ เชธเชฎเชฏเช—เชพเชณเชพเชจเซ€ เช…เช‚เชฆเชฐเชจเซ€ เชชเซเชฐเชตเซƒเชคเซเชคเชฟ เชฆเซเชตเชพเชฐเชพ เชธเชคเซเชฐเชจเซ‹ เชธเชฎเชฏเช—เชพเชณเซ‹ เชจเช•เซเช•เซ€ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡;
  • เชกเซ‡เชŸเชพเชฎเชพเช‚ เชคเชพเชฐเซ€เช–/เชธเชฎเชฏ เชธเซเชŸเซ‡เชฎเซเชช เชจเช•เซเช•เซ€ เช•เชฐเซ‡ เช›เซ‡ เช•เซ‡ เช‡เชตเซ‡เชจเซเชŸ เชนเชพเชฒเชจเชพ เชธเชคเซเชฐเชฎเชพเช‚ เช›เซ‡ เช•เซ‡ เชจเชฟเชทเซเช•เซเชฐเชฟเชฏ เชธเชฎเชฏเช—เชพเชณเชพ เชฆเชฐเชฎเชฟเชฏเชพเชจ.

เช†เช—เชณ เช†เชชเชฃเซ‡ เช†เช—เชพเชฎเซ€ เชชเซเชฐเช•เชพเชฐเชจเซ€ เชตเชฟเชจเซเชกเซ‹ - โ€œเชŸเชฎเซเชฌเชฒเชฟเช‚เช—โ€ เชตเชฟเชจเซเชกเซ‹ เชตเชฟเชถเซ‡ เชšเชฐเซเชšเชพ เช•เชฐเซ€เชถเซเช‚.

"เชŸเชฎเซเชฌเชฒเชฟเช‚เช—" เชตเชฟเชจเซเชกเซ‹

เชŸเชฎเซเชฌเชฒเชฟเช‚เช— เชตเชฟเชจเซเชกเซ‹ เชšเซ‹เช•เซเช•เชธ เชธเชฎเชฏเช—เชพเชณเชพเชฎเชพเช‚ เช†เชตเชคเซ€ เช˜เชŸเชจเชพเช“เชจเซ‡ เช•เซ‡เชชเซเชšเชฐ เช•เชฐเซ‡ เช›เซ‡. เช•เชฒเซเชชเชจเชพ เช•เชฐเซ‹ เช•เซ‡ เชคเชฎเชพเชฐเซ‡ เชฆเชฐ 20 เชธเซ‡เช•เชจเซเชกเซ‡ เชšเซ‹เช•เซเช•เชธ เช•เช‚เชชเชจเซ€เชจเชพ เชคเชฎเชพเชฎ เชธเซเชŸเซ‹เช• เชตเซเชฏเชตเชนเชพเชฐเซ‹ เช•เซ‡เชชเซเชšเชฐ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡, เชœเซ‡เชฅเซ€ เชคเชฎเซ‡ เชคเซ‡ เชธเชฎเชฏเช—เชพเชณเชพ เชฆเชฐเชฎเชฟเชฏเชพเชจเชจเซ€ เชคเชฎเชพเชฎ เช‡เชตเซ‡เชจเซเชŸเซเชธ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเซ‹. 20-เชธเซ‡เช•เชจเซเชกเชจเชพ เช…เช‚เชคเชฐเชพเชฒเชจเชพ เช…เช‚เชคเซ‡, เชตเชฟเชจเซเชกเซ‹ เชซเชฐเซ€ เชตเชณเซ‡ เช›เซ‡ เช…เชจเซ‡ เชจเชตเชพ 20-เชธเซ‡เช•เชจเซเชกเชจเชพ เช…เชตเชฒเซ‹เช•เชจ เช…เช‚เชคเชฐเชพเชฒ เชชเชฐ เชœเชพเชฏ เช›เซ‡. เช†เช•เซƒเชคเชฟ 5.14 เช† เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเชจเซ‡ เชฆเชฐเซเชถเชพเชตเซ‡ เช›เซ‡.

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"
เชœเซ‡เชฎ เชคเชฎเซ‡ เชœเซ‹เชˆ เชถเช•เซ‹ เช›เซ‹, เช›เซ‡เชฒเซเชฒเซ€ 20 เชธเซ‡เช•เชจเซเชกเชฎเชพเช‚ เชชเซเชฐเชพเชชเซเชค เชฅเชฏเซ‡เชฒเซ€ เชฌเชงเซ€ เช‡เชตเซ‡เชจเซเชŸเซเชธ เชตเชฟเช‚เชกเซ‹เชฎเชพเช‚ เชถเชพเชฎเซ‡เชฒ เช›เซ‡. เช† เชธเชฎเชฏเช—เชพเชณเชพเชจเชพ เช…เช‚เชคเซ‡, เชเช• เชจเชตเซ€ เชตเชฟเช‚เชกเซ‹ เชฌเชจเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.

เชฒเชฟเชธเซเชŸเชฟเช‚เช— 5.6 เช เช•เซ‹เชก เชฌเชคเชพเชตเซ‡ เช›เซ‡ เชœเซ‡ เชฆเชฐ 20 เชธเซ‡เช•เชจเซเชกเซ‡ เชธเซเชŸเซ‹เช• เชตเซเชฏเชตเชนเชพเชฐเซ‹ เชฎเซ‡เชณเชตเชตเชพ เชฎเชพเชŸเซ‡ เชŸเชฎเซเชฌเชฒเชฟเช‚เช— เชตเชฟเชจเซเชกเซ‹เชเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชฆเชฐเซเชถเชพเชตเซ‡ เช›เซ‡ (src/main/java/bbejeck/chapter_5/CountingWindowingAndKtableJoinExample.java เชฎเชพเช‚ เชœเซ‹เชตเชพ เชฎเชณเซ‡ เช›เซ‡).

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"
TimeWindows.of เชฎเซ‡เชฅเชก เช•เซ‹เชฒเชฎเชพเช‚ เช† เชจเชพเชจเชพ เชซเซ‡เชฐเชซเชพเชฐ เชธเชพเชฅเซ‡, เชคเชฎเซ‡ เชŸเชฎเซเชฌเชฒเชฟเช‚เช— เชตเชฟเชจเซเชกเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เช† เช‰เชฆเชพเชนเชฐเชฃ เชธเซเชงเซ€() เชชเชฆเซเชงเชคเชฟเชจเซ‡ เช•เซ‰เชฒ เช•เชฐเชคเซเช‚ เชจเชฅเซ€, เชคเซ‡เชฅเซ€ 24 เช•เชฒเชพเช•เชจเชพ เชกเชฟเชซเซ‹เชฒเซเชŸ เชฐเซ€เชŸเซ‡เชจเซเชถเชจ เช…เช‚เชคเชฐเชพเชฒเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡.

เช›เซ‡เชฒเซเชฒเซ‡, เชตเชฟเชจเซเชกเซ‹ เชตเชฟเช•เชฒเซเชชเซ‹เชจเชพ เช›เซ‡เชฒเซเชฒเชพ - "เชนเซ‹เชชเชฟเช‚เช—" เชตเชฟเชจเซเชกเซ‹เช เชชเชฐ เชœเชตเชพเชจเซ‹ เชธเชฎเชฏ เช›เซ‡.

เชธเซเชฒเชพเช‡เชกเชฟเช‚เช— ("เชœเชฎเซเชชเชฟเช‚เช—") เชตเชฟเช‚เชกเซ‹เช

เชธเซเชฒเชพเช‡เชกเชฟเช‚เช—/เชนเซ‹เชชเชฟเช‚เช— เชตเชฟเชจเซเชกเซ‹ เชŸเชฎเซเชฌเชฒเชฟเช‚เช— เชตเชฟเชจเซเชกเซ‹ เชœเซ‡เชตเซ€ เชœ เช›เซ‡, เชชเชฐเช‚เชคเซ เชฅเซ‹เชกเซ‹ เชคเชซเชพเชตเชค เชธเชพเชฅเซ‡. เชธเซเชฒเชพเช‡เชกเชฟเช‚เช— เชตเชฟเชจเซเชกเซ‹ เชคเชพเชœเซ‡เชคเชฐเชจเซ€ เช˜เชŸเชจเชพเช“ เชชเชฐ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชจเชตเซ€ เชตเชฟเชจเซเชกเซ‹ เชฌเชจเชพเชตเชคเชพ เชชเชนเซ‡เชฒเชพ เชธเชฎเชฏ เช…เช‚เชคเชฐเชพเชฒเชจเชพ เช…เช‚เชค เชธเซเชงเซ€ เชฐเชพเชน เชœเซ‹เชคเซ€ เชจเชฅเซ€. เชคเซ‡เช“ เชตเชฟเชจเซเชกเซ‹ เช…เชตเชงเชฟ เช•เชฐเชคเชพเช‚ เช“เช›เชพ เชชเซเชฐเชคเซ€เช•เซเชทเชพ เช…เช‚เชคเชฐเชพเชฒ เชชเช›เซ€ เชจเชตเซ€ เช—เชฃเชคเชฐเซ€เช“ เชถเชฐเซ‚ เช•เชฐเซ‡ เช›เซ‡.

เชŸเชฎเซเชฌเชฒเชฟเช‚เช— เช…เชจเซ‡ เชœเชฎเซเชชเชฟเช‚เช— เชตเชฟเชจเซเชกเซ‹ เชตเชšเซเชšเซ‡เชจเชพ เชคเชซเชพเชตเชคเชจเซ‡ เชธเชฎเชœเชพเชตเชตเชพ เชฎเชพเชŸเซ‡, เชšเชพเชฒเซ‹ เชธเซเชŸเซ‹เช• เชเช•เซเชธเชšเซ‡เชจเซเชœเชจเชพ เชตเซเชฏเชตเชนเชพเชฐเซ‹เชจเซ€ เช—เชฃเชคเชฐเซ€เชจเชพ เช‰เชฆเชพเชนเชฐเชฃ เชชเชฐ เชชเชพเช›เชพ เชซเชฐเซ€เช. เช…เชฎเชพเชฐเซ‹ เชงเซเชฏเซ‡เชฏ เชนเชœเซ€ เชชเชฃ เชตเซเชฏเชตเชนเชพเชฐเซ‹เชจเซ€ เชธเช‚เช–เซเชฏเชพเชจเซ€ เช—เชฃเชคเชฐเซ€ เช•เชฐเชตเชพเชจเซ‹ เช›เซ‡, เชชเชฐเช‚เชคเซ เช…เชฎเซ‡ เช•เชพเช‰เชจเซเชŸเชฐเชจเซ‡ เช…เชชเชกเซ‡เชŸ เช•เชฐเชคเชพ เชชเชนเซ‡เชฒเชพ เชธเช‚เชชเซ‚เชฐเซเชฃ เชธเชฎเชฏเชจเซ€ เชฐเชพเชน เชœเซ‹เชตเชพ เชฎเชพเช‚เช—เชคเชพ เชจเชฅเซ€. เชคเซ‡เชจเชพ เชฌเชฆเชฒเซ‡, เช…เชฎเซ‡ เชŸเซ‚เช‚เช•เชพ เช…เช‚เชคเชฐเชพเชฒเชฎเชพเช‚ เช•เชพเช‰เชจเซเชŸเชฐเชจเซ‡ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€เชถเซเช‚. เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เช…เชฎเซ‡ เชนเชœเซ€ เชชเชฃ เชฆเชฐ 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 เชชเชฆเซเชงเชคเชฟเชจเซ‡ เช•เซ‰เชฒ เช•เชฐเซ€เชจเซ‡, เช•เซ€เชจเซ‡ เช‰เชฆเซเชฏเซ‹เช—เชจเชพ เชจเชพเชฎ เชธเชพเชฅเซ‡ เชฌเชฆเชฒเซ‹, เช…เชจเซ‡ เชชเช›เซ€ Windowed เชฆเชพเช–เชฒเชพเชฎเชพเช‚เชฅเซ€ 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) เชฎเชพเช‚ เชฎเชณเซ€ เชถเช•เซ‡ เช›เซ‡.

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"
เช เชจเซ‹เช‚เชงเชตเซเช‚ เชฏเซ‹เช—เซเชฏ เช›เซ‡ เช•เซ‡ เช•เซ‹เชˆ Serde เช‘เชฌเซเชœเซ‡เช•เซเชŸเซเชธเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€, เช•เชพเชฐเชฃ เช•เซ‡ เชธเซเชŸเซเชฐเชฟเช‚เช— Serdes เชธเซ‡เชŸเชฟเช‚เช—เชฎเชพเช‚ เชตเชชเชฐเชพเชฏ เช›เซ‡. เช‰เชชเชฐเชพเช‚เชค, เชชเซเชฐเชพเชฐเช‚เชญเชฟเช• เช—เชฃเชคเชฐเซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡, เช•เซ‹เชทเซเชŸเช• เช–เซ‚เชฌ เชœ เชถเชฐเซ‚เช†เชคเชฎเชพเช‚ เชฐเซ‡เช•เซ‹เชฐเซเชกเซเชธเชฅเซ€ เชญเชฐเซ‡เชฒเซเช‚ เช›เซ‡.

เชนเชตเซ‡ เช†เชชเชฃเซ‡ เช…เช‚เชคเชฟเชฎ เชชเช—เชฒเซเช‚ - เชœเซ‹เชกเชพเชฃ เชชเชฐ เช†เช—เชณ เชตเชงเซ€ เชถเช•เซ€เช เช›เซ€เช.

เชŸเซเชฐเชพเชจเซเชเซ‡เช•เซเชถเชจ เช•เชพเช‰เชจเซเชŸ เชกเซ‡เชŸเชพ เชธเชพเชฅเซ‡ เชธเชฎเชพเชšเชพเชฐ เช…เชชเชกเซ‡เชŸเซเชธเชจเซ‡ เช•เชจเซ‡เช•เซเชŸ เช•เชฐเชตเซเช‚

เช•เชจเซ‡เช•เซเชถเชจ เชฌเชจเชพเชตเชตเซเช‚ เชฎเซเชถเซเช•เซ‡เชฒ เชจเชฅเซ€. เชœเซ‹ เชธเช‚เชฌเช‚เชงเชฟเชค เช‰เชฆเซเชฏเซ‹เช— เชฎเชพเชŸเซ‡ เช•เซ‹เชˆ เชธเซเชŸเซ‹เช• เชธเชฎเชพเชšเชพเชฐ เชจ เชนเซ‹เชฏ เชคเซ‹ เช…เชฎเซ‡ เชกเชพเชฌเชพ เชœเซ‹เชกเชพเชฃเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชถเซเช‚ (เชœเชฐเซ‚เชฐเซ€ เช•เซ‹เชก เชซเชพเช‡เชฒ src/main/java/bbejeck/chapter_5/CountingWindowingAndKtableJoinExample.java) (เชฒเชฟเชธเซเชŸเชฟเช‚เช— 5.10) เชฎเชพเช‚ เชฎเชณเซ€ เชถเช•เซ‡ เช›เซ‡.

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"
เช† เชฒเซ‡เชซเซเชŸเชœเซ‹เช‡เชจ เช“เชชเชฐเซ‡เชŸเชฐ เชเช•เชฆเชฎ เชธเชฐเชณ เช›เซ‡. เชชเซเชฐเช•เชฐเชฃ 4 เชฎเชพเช‚ เชœเซ‹เชกเชพเช“เชฅเซ€ เชตเชฟเชชเชฐเซ€เชค, JoinWindow เชชเชฆเซเชงเชคเชฟเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชฅเชคเซ‹ เชจเชฅเซ€ เช•เชพเชฐเชฃ เช•เซ‡ เชœเซเชฏเชพเชฐเซ‡ KStream-KTable เชœเซ‹เชกเชพเชˆ เชฐเชนเซเชฏเชพ เชนเซ‹เชฏ, เชคเซเชฏเชพเชฐเซ‡ เชฆเชฐเซ‡เช• เช•เซ€ เชฎเชพเชŸเซ‡ KTableเชฎเชพเช‚ เชฎเชพเชคเซเชฐ เชเช• เชœ เชเชจเซเชŸเซเชฐเซ€ เชนเซ‹เชฏ เช›เซ‡. เช†เชตเชพ เชœเซ‹เชกเชพเชฃ เชธเชฎเชฏเชธเชฐ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชจเชฅเซ€: เชฐเซ‡เช•เซ‹เชฐเซเชก เช•เชพเช‚ เชคเซ‹ KTable เชฎเชพเช‚ เช›เซ‡ เช…เชฅเชตเชพ เช—เซ‡เชฐเชนเชพเชœเชฐ เช›เซ‡. เชฎเซเช–เซเชฏ เชจเชฟเชทเซเช•เชฐเซเชท: KTable เช‘เชฌเซเชœเซ‡เช•เซเชŸเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชคเชฎเซ‡ เช“เช›เชพ เชตเชพเชฐเช‚เชตเชพเชฐ เช…เชชเชกเซ‡เชŸ เชฅเชฏเซ‡เชฒเชพ เชธเช‚เชฆเชฐเซเชญ เชกเซ‡เชŸเชพ เชธเชพเชฅเซ‡ KStream เชจเซ‡ เชธเชฎเซƒเชฆเซเชง เชฌเชจเชพเชตเซ€ เชถเช•เซ‹ เช›เซ‹.

เชนเชตเซ‡ เช…เชฎเซ‡ KStream เชฎเชพเช‚เชฅเซ€ เช‡เชตเซ‡เชจเซเชŸเซเชธเชจเซ‡ เชธเชฎเซƒเชฆเซเชง เชฌเชจเชพเชตเชตเชพเชจเซ€ เชตเชงเซ เช•เชพเชฐเซเชฏเช•เซเชทเชฎ เชฐเซ€เชค เชœเซ‹เชˆเชถเซเช‚.

5.3.4. GlobalKTable เช‘เชฌเซเชœเซ‡เช•เซเชŸเซเชธ

เชœเซ‡เชฎ เชคเชฎเซ‡ เชœเซ‹เชˆ เชถเช•เซ‹ เช›เซ‹, เช‡เชตเซ‡เชจเซเชŸ เชธเซเชŸเซเชฐเซ€เชฎเซเชธเชจเซ‡ เชธเชฎเซƒเชฆเซเชง เชฌเชจเชพเชตเชตเชพ เช…เชฅเชตเชพ เชคเซ‡เชฎเชพเช‚ เชธเช‚เชฆเชฐเซเชญ เช‰เชฎเซ‡เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เชชเซเชฐเช•เชฐเชฃ 4 เชฎเชพเช‚ เชคเชฎเซ‡ เชฌเซ‡ KStream เช‘เชฌเซเชœเซ‡เช•เซเชŸเซเชธ เชตเชšเซเชšเซ‡เชจเซเช‚ เชœเซ‹เชกเชพเชฃ เชœเซ‹เชฏเซเช‚, เช…เชจเซ‡ เชชเชนเซ‡เชฒเชพเชจเชพ เชตเชฟเชญเชพเช—เชฎเชพเช‚ เชคเชฎเซ‡ KStream เช…เชจเซ‡ KTable เชตเชšเซเชšเซ‡เชจเซเช‚ เชœเซ‹เชกเชพเชฃ เชœเซ‹เชฏเซเช‚. เช† เชคเชฎเชพเชฎ เช•เซ‡เชธเซ‹เชฎเชพเช‚, เชจเชตเชพ เชชเซเชฐเช•เชพเชฐ เช…เชฅเชตเชพ เชฎเซ‚เชฒเซเชฏ เชธเชพเชฅเซ‡ เช•เซ€เชจเซ‡ เชฎเซ‡เชช เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เชกเซ‡เชŸเชพ เชธเซเชŸเซเชฐเซ€เชฎเชจเซ‡ เชซเชฐเซ€เชฅเซ€ เชชเชพเชฐเซเชŸเซ€เชถเชจ เช•เชฐเชตเซเช‚ เชœเชฐเซ‚เชฐเซ€ เช›เซ‡. เช•เซ‡เชŸเชฒเซ€เช•เชตเชพเชฐ เชชเซเชจเชƒเชตเชฟเชญเชพเช—เซ€เช•เชฐเชฃ เชธเซเชชเชทเซเชŸ เชฐเซ€เชคเซ‡ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เช…เชจเซ‡ เช•เซ‡เชŸเชฒเซ€เช•เชตเชพเชฐ เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เชคเซ‡ เช†เชชเชฎเซ‡เชณเซ‡ เช•เชฐเซ‡ เช›เซ‡. เชชเซเชจเชƒ-เชชเชพเชฐเซเชŸเซ€เชถเชจ เช•เชฐเชตเซเช‚ เชœเชฐเซ‚เชฐเซ€ เช›เซ‡ เช•เชพเชฐเชฃ เช•เซ‡ เช•เซ€เช“ เชฌเชฆเชฒเชพเชˆ เช—เชˆ เช›เซ‡ เช…เชจเซ‡ เชฐเซ‡เช•เซ‹เชฐเซเชกเซเชธ เชจเชตเชพ เชตเชฟเชญเชพเช—เซ‹เชฎเชพเช‚ เชธเชฎเชพเชชเซเชค เชฅเชตเชพ เชœเซ‹เชˆเช, เช…เชจเซเชฏเชฅเชพ เชœเซ‹เชกเชพเชฃ เช…เชถเช•เซเชฏ เชนเชถเซ‡ (เช†เชจเซ€ เชšเชฐเซเชšเชพ เชชเซเชฐเช•เชฐเชฃ 4 เชฎเชพเช‚, เชชเซ‡เชŸเชพเชตเชฟเชญเชพเช— 4.2.4 เชฎเชพเช‚ "เชกเซ‡เชŸเชพเชจเซเช‚ เชชเซเชจเชƒ-เชชเชพเชฐเซเชŸเซ€เชถเชจ" เชตเชฟเชญเชพเช—เชฎเชพเช‚ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เชนเชคเซ€).

เชชเซเชจเชƒ เชชเชพเชฐเซเชŸเซ€เชถเชจเชจเซ€ เช•เชฟเช‚เชฎเชค เช›เซ‡

เชซเชฐเซ€เชฅเซ€ เชชเชพเชฐเซเชŸเซ€เชถเชจ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช–เชฐเซเชšเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡ - เชฎเชงเซเชฏเชตเชฐเซเชคเซ€ เชตเชฟเชทเชฏเซ‹ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เชตเชงเชพเชฐเชพเชจเชพ เชธเช‚เชธเชพเชงเชจ เช–เชฐเซเชš, เช…เชจเซเชฏ เชตเชฟเชทเชฏเชฎเชพเช‚ เชกเซเชชเซเชฒเชฟเช•เซ‡เชŸ เชกเซ‡เชŸเชพ เชธเช‚เช—เซเชฐเชนเชฟเชค เช•เชฐเชตเชพ; เชคเซ‡เชจเซ‹ เช…เชฐเซเชฅ เชเชตเซ‹ เชชเชฃ เชฅเชพเชฏ เช›เซ‡ เช•เซ‡ เช† เชตเชฟเชทเชฏ เชชเชฐเชฅเซ€ เชฒเช–เชตเชพ เช…เชจเซ‡ เชตเชพเช‚เชšเชตเชพเชจเซ‡ เช•เชพเชฐเชฃเซ‡ เชตเชฟเชฒเช‚เชฌเชฎเชพเช‚ เชตเชงเชพเชฐเซ‹ เชฅเชพเชฏ เช›เซ‡. เชตเชงเซเชฎเชพเช‚, เชœเซ‹ เชคเชฎเชพเชฐเซ‡ เชเช• เช•เชฐเชคเชพเช‚ เชตเชงเซ เชชเชพเชธเชพเช“ เช…เชฅเชตเชพ เชชเชฐเชฟเชฎเชพเชฃเชฎเชพเช‚ เชœเซ‹เชกเชพเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ, เชคเซ‹ เชคเชฎเชพเชฐเซ‡ เชœเซ‹เชกเชพเช“เชจเซ‡ เชธเชพเช‚เช•เชณเชตเชพ, เชจเชตเซ€ เช•เซ€ เชตเชกเซ‡ เชฐเซ‡เช•เซ‹เชฐเซเชกเซเชธเชจเซ‡ เชฎเซ‡เชช เช•เชฐเชตเชพ เช…เชจเซ‡ เชซเชฐเซ€เชฅเซ€ เชชเชพเชฐเซเชŸเซ€เชถเชจ เช•เชฐเชตเชพเชจเซ€ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพเชจเซ‡ เชซเชฐเซ€เชฅเซ€ เชšเชฒเชพเชตเชตเซ€ เชชเชกเชถเซ‡.

เชจเชพเชจเชพ เชกเซ‡เชŸเชพเชธเซ‡เชŸเซเชธ เชธเชพเชฅเซ‡ เช•เชจเซ‡เช•เซเชŸ เชฅเชˆ เชฐเชนเซเชฏเซเช‚ เช›เซ‡

เช•เซ‡เชŸเชฒเชพเช• เช•เชฟเชธเซเชธเชพเช“เชฎเชพเช‚, เช•เชจเซ‡เช•เซเชŸ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชธเช‚เชฆเชฐเซเชญ เชกเซ‡เชŸเชพเชจเซเช‚ เชชเซเชฐเชฎเชพเชฃ เชชเซเชฐเชฎเชพเชฃเชฎเชพเช‚ เชจเชพเชจเซเช‚ เชนเซ‹เชฏ เช›เซ‡, เชคเซ‡เชฅเซ€ เชคเซ‡เชจเซ€ เชธเช‚เชชเซ‚เชฐเซเชฃ เชจเช•เชฒเซ‹ เชฆเชฐเซ‡เช• เชจเซ‹เชก เชชเชฐ เชธเซเชฅเชพเชจเชฟเช• เชฐเซ€เชคเซ‡ เชธเชฐเชณเชคเชพเชฅเซ€ เชซเชฟเชŸ เชฅเชˆ เชถเช•เซ‡ เช›เซ‡. เช†เชตเซ€ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเช“ เชฎเชพเชŸเซ‡, เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ GlobalKTable เชตเชฐเซเช— เชชเซ‚เชฐเซ‹ เชชเชพเชกเซ‡ เช›เซ‡.

GlobalKTable เชฆเชพเช–เชฒเชพเช“ เช…เชจเชจเซเชฏ เช›เซ‡ เช•เชพเชฐเชฃ เช•เซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชฆเชฐเซ‡เช• เชจเซ‹เชก เชชเชฐ เชคเชฎเชพเชฎ เชกเซ‡เชŸเชพเชจเซ€ เชจเช•เชฒ เช•เชฐเซ‡ เช›เซ‡. เช…เชจเซ‡ เชฆเชฐเซ‡เช• เชจเซ‹เชก เชชเชฐ เชคเชฎเชพเชฎ เชกเซ‡เชŸเชพ เชนเชพเชœเชฐ เชนเซ‹เชตเชพเชฅเซ€, เชธเช‚เชฆเชฐเซเชญ เชกเซ‡เชŸเชพ เช•เซ€ เชฆเซเชตเชพเชฐเชพ เช‡เชตเซ‡เชจเซเชŸ เชธเซเชŸเซเชฐเซ€เชฎเชจเซ‡ เชชเชพเชฐเซเชŸเซ€เชถเชจ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€ เชœเซ‡เชฅเซ€ เชคเซ‡ เชฌเชงเชพ เชชเชพเชฐเซเชŸเซ€เชถเชจเซ‹ เชฎเชพเชŸเซ‡ เช‰เชชเชฒเชฌเซเชง เชนเซ‹เชฏ. เชคเชฎเซ‡ GlobalKTable เช‘เชฌเซเชœเซ‡เช•เซเชŸเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช•เซ€เชฒเซ‡เชธ เชœเซ‹เชกเชพ เชชเชฃ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เชšเชพเชฒเซ‹ เช† เชฒเช•เซเชทเชฃ เชฆเชฐเซเชถเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เช…เช—เชพเช‰เชจเชพ เช‰เชฆเชพเชนเชฐเชฃเซ‹เชฎเชพเช‚เชจเชพ เชเช• เชชเชฐ เชชเชพเช›เชพ เชœเชˆเช.

KStream เช‘เชฌเซเชœเซ‡เช•เซเชŸเซเชธเชจเซ‡ GlobalKTable เช‘เชฌเซเชœเซ‡เช•เซเชŸเซเชธ เชธเชพเชฅเซ‡ เช•เชจเซ‡เช•เซเชŸ เช•เชฐเซ€ เชฐเชนเซเชฏเชพเช‚ เช›เซ‡

เชชเซ‡เชŸเชพเช•เชฒเชฎ 5.3.2 เชฎเชพเช‚, เช…เชฎเซ‡ เช–เชฐเซ€เชฆเชฆเชพเชฐเซ‹ เชฆเซเชตเชพเชฐเชพ เชเช•เซเชธเชšเซ‡เชจเซเชœ เชŸเซเชฐเชพเชจเซเชเซ‡เช•เซเชถเชจเชจเซเช‚ เชตเชฟเชจเซเชกเซ‹ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช•เชฐเซเชฏเซเช‚. เช† เชเช•เชคเซเชฐเซ€เช•เชฐเชฃเชจเชพ เชชเชฐเชฟเชฃเชพเชฎเซ‹ เช•เช‚เชˆเช• เช†เชจเชพ เชœเซ‡เชตเชพ เชฆเซ‡เช–เชพเชคเชพ เชนเชคเชพ:

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

เชœเซเชฏเชพเชฐเซ‡ เช† เชชเชฐเชฟเชฃเชพเชฎเซ‹เช เชนเซ‡เชคเซ เชชเซ‚เชฐเซ‹ เช•เชฐเซเชฏเซ‹, เชœเซ‹ เช—เซเชฐเชพเชนเช•เชจเซเช‚ เชจเชพเชฎ เช…เชจเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เช•เช‚เชชเชจเซ€เชจเซเช‚ เชจเชพเชฎ เชชเชฃ เชฆเชฐเซเชถเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเซ‹เชค เชคเซ‹ เชคเซ‡ เชตเชงเซ เช‰เชชเชฏเซ‹เช—เซ€ เชฌเชจเซเชฏเซเช‚ เชนเซ‹เชค. เช—เซเชฐเชพเชนเช•เชจเซเช‚ เชจเชพเชฎ เช…เชจเซ‡ เช•เช‚เชชเชจเซ€เชจเซเช‚ เชจเชพเชฎ เช‰เชฎเซ‡เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเซ‡ เชธเชพเชฎเชพเชจเซเชฏ เชœเซ‹เชกเชพเชˆ เชถเช•เซ‹ เช›เซ‹, เชชเชฐเช‚เชคเซ เชคเชฎเชพเชฐเซ‡ เชฌเซ‡ เช•เซ€ เชฎเซ‡เชชเชฟเช‚เช— เช…เชจเซ‡ เชซเชฐเซ€เชฅเซ€ เชชเชพเชฐเซเชŸเซ€เชถเชจ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชชเชกเชถเซ‡. GlobalKTable เชตเชกเซ‡ เชคเชฎเซ‡ เช†เชตเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€เชจเชพ เช–เชฐเซเชšเชจเซ‡ เชŸเชพเชณเซ€ เชถเช•เซ‹ เช›เซ‹.

เช† เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เช…เชฎเซ‡ เชฒเชฟเชธเซเชŸเชฟเช‚เช— 5.11เชฎเชพเช‚เชฅเซ€ เช•เชพเช‰เชจเซเชŸเชธเซเชŸเซเชฐเซ€เชฎ เช‘เชฌเซเชœเซ‡เช•เซเชŸเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชถเซเช‚ (เชธเช‚เชฌเช‚เชงเชฟเชค เช•เซ‹เชก src/main/java/bbejeck/chapter_5/GlobalKTableExample.java เชฎเชพเช‚ เชฎเชณเซ€ เชถเช•เซ‡ เช›เซ‡) เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชฌเซ‡ GlobalKTable เช‘เชฌเซเชœเซ‡เช•เซเชŸ เชธเชพเชฅเซ‡ เชœเซ‹เชกเซ€เชถเซเช‚.

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"
เช…เชฎเซ‡ เช† เชตเชฟเชถเซ‡ เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ เชšเชฐเซเชšเชพ เช•เชฐเซ€ เช›เซ‡, เชคเซ‡เชฅเซ€ เชนเซเช‚ เชคเซ‡เชจเซ‡ เชชเซเชจเชฐเชพเชตเชฐเซเชคเชจ เช•เชฐเซ€เชถ เชจเชนเซ€เช‚. เชชเชฐเช‚เชคเซ เชนเซเช‚ เชจเซ‹เช‚เชงเซเช‚ เช›เซเช‚ เช•เซ‡ toStream().map เชซเช‚เช•เซเชถเชจเชฎเชพเช‚เชจเซ‹ เช•เซ‹เชก เชตเชพเช‚เชšเชจเช•เซเชทเชฎเชคเชพ เชฎเชพเชŸเซ‡ เช‡เชจเชฒเชพเช‡เชจ เชฒเซ‡เชฎเซเชฌเชกเชพ เชเช•เซเชธเชชเซเชฐเซ‡เชถเชจเชจเซ‡ เชฌเชฆเชฒเซ‡ เชซเช‚เช•เซเชถเชจ เช‘เชฌเซเชœเซ‡เช•เซเชŸเชฎเชพเช‚ เช…เชฎเซ‚เชฐเซเชค เช›เซ‡.

เช†เช—เชณเชจเซเช‚ เชชเช—เชฒเซเช‚ เช›เซ‡ 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. เช† เช•เซ‹เชทเซเชŸเช• เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธเชจเชพ เชธเช‚เชธเซเช•เชฐเชฃ 1.0.0 เชฎเซเชœเชฌ เช•เชจเซ‡เช•เซเชŸเชฟเชตเชฟเชŸเซ€ เช•เซเชทเชฎเชคเชพเช“เชจเซ‡ เชชเซเชฐเชคเชฟเชฌเชฟเช‚เชฌเชฟเชค เช•เชฐเซ‡ เช›เซ‡; เชญเชตเชฟเชทเซเชฏเชจเชพ เชชเซเชฐเช•เชพเชถเชจเซ‹เชฎเชพเช‚ เช•เช‚เชˆเช• เชฌเชฆเชฒเชพเชˆ เชถเช•เซ‡ เช›เซ‡.

เชชเซเชธเซเชคเช• โ€œเช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เช‡เชจ เชเช•เซเชถเชจ. เชฐเซ€เช…เชฒ-เชŸเชพเช‡เชฎ เช•เชพเชฎ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช…เชจเซ‡ เชฎเชพเช‡เช•เซเชฐเซ‹เชธเชฐเซเชตเชฟเชธเชฟเชธ"
เชตเชธเซเชคเซเช“เชจเซ‡ เชฒเชชเซ‡เชŸเชตเชพ เชฎเชพเชŸเซ‡, เชšเชพเชฒเซ‹ เชฎเซ‚เชณเชญเซ‚เชค เชฌเชพเชฌเชคเซ‹เชจเซ‡ เชฐเซ€เช•เซ‡เชช เช•เชฐเซ€เช: เชคเชฎเซ‡ เชธเซเชฅเชพเชจเชฟเช• เชธเซเชฅเชฟเชคเชฟเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช‡เชตเซ‡เชจเซเชŸ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ (KStream) เช…เชจเซ‡ เช…เชชเชกเซ‡เชŸ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ (KTable) เชจเซ‡ เช•เชจเซ‡เช•เซเชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เชตเซˆเช•เชฒเซเชชเชฟเช• เชฐเซ€เชคเซ‡, เชœเซ‹ เชธเช‚เชฆเชฐเซเชญ เชกเซ‡เชŸเชพเชจเซเช‚ เช•เชฆ เช–เซ‚เชฌ เชฎเซ‹เชŸเซเช‚ เชจ เชนเซ‹เชฏ, เชคเซ‹ เชคเชฎเซ‡ GlobalKTable เช‘เชฌเซเชœเซ‡เช•เซเชŸเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เช—เซเชฒเซ‹เชฌเชฒเช•เซ‡เชŸเซ‡เชฌเชฒเซเชธ เชฆเชฐเซ‡เช• เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชจเซ‹เชก เชชเชฐ เชคเชฎเชพเชฎ เชชเชพเชฐเซเชŸเซ€เชถเชจเซ‹เชจเซ€ เชจเช•เชฒ เช•เชฐเซ‡ เช›เซ‡, เช–เชพเชคเชฐเซ€ เช•เชฐเซ‡ เช›เซ‡ เช•เซ‡ เชคเชฎเชพเชฎ เชกเซ‡เชŸเชพ เช‰เชชเชฒเชฌเซเชง เช›เซ‡ เชคเซ‡เชจเซ€ เช…เชจเซเชฒเช•เซเชทเซ€เชจเซ‡ เช•เซ€ เช•เชฏเชพ เชชเชพเชฐเซเชŸเซ€เชถเชจเชจเซ‡ เช…เชจเซเชฐเซ‚เชช เช›เซ‡.

เช†เช—เชณ เช†เชชเชฃเซ‡ เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เชซเซ€เชšเชฐ เชœเซ‹เชˆเชถเซเช‚, เชœเซ‡เชจเชพ เช•เชพเชฐเชฃเซ‡ เช†เชชเชฃเซ‡ เช•เชพเชซเช•เชพ เชตเชฟเชทเชฏเชจเชพ เชกเซ‡เชŸเชพเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซเชฏเชพ เชตเชฟเชจเชพ เชฐเชพเชœเซเชฏเชจเชพ เชซเซ‡เชฐเชซเชพเชฐเซ‹เชจเซเช‚ เช…เชตเชฒเซ‹เช•เชจ เช•เชฐเซ€ เชถเช•เซ€เช เช›เซ€เช.

5.3.5. เชชเซเชฐเชถเซเชจเชพเชฐเซเชฅ เชธเซเชฅเชฟเชคเชฟ

เช…เชฎเซ‡ เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ เชฐเชพเชœเซเชฏเชจเซ‡ เชธเช‚เชกเซ‹เชตเชคเชพ เช˜เชฃเชพ เช“เชชเชฐเซ‡เชถเชจเซ‹ เช•เชฐเซเชฏเชพ เช›เซ‡ เช…เชจเซ‡ เชนเช‚เชฎเซ‡เชถเชพ เชชเชฐเชฟเชฃเชพเชฎเซ‹เชจเซ‡ เช•เชจเซเชธเซ‹เชฒ เชชเชฐ เช†เช‰เชŸเชชเซเชŸ เช•เชฐเซ€เช เช›เซ€เช (เชตเชฟเช•เชพเชธ เชนเซ‡เชคเซเช“ เชฎเชพเชŸเซ‡) เช…เชฅเชตเชพ เชคเซ‡เชฎเชจเซ‡ เชตเชฟเชทเชฏ เชชเชฐ (เช‰เชคเซเชชเชพเชฆเชจเชจเชพ เชนเซ‡เชคเซเช“ เชฎเชพเชŸเซ‡) เชฒเช–เซ€เช เช›เซ€เช. เช•เซ‹เชˆ เชตเชฟเชทเชฏ เชชเชฐ เชชเชฐเชฟเชฃเชพเชฎเซ‹ เชฒเช–เชคเซ€ เชตเช–เชคเซ‡, เชคเชฎเชพเชฐเซ‡ เชคเซ‡เชฎเชจเซ‡ เชœเซ‹เชตเชพ เชฎเชพเชŸเซ‡ เช•เชพเชซเช•เชพ เช‰เชชเชญเซ‹เช•เซเชคเชพเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเซ‹ เชชเชกเชถเซ‡.

เช† เชตเชฟเชทเชฏเซ‹เชฎเชพเช‚เชฅเซ€ เชกเซ‡เชŸเชพ เชตเชพเช‚เชšเชตเซเช‚ เช เชเช• เชชเซเชฐเช•เชพเชฐเชจเซเช‚ เชญเซŒเชคเชฟเช• เชฆเซƒเชทเซเชŸเชฟเช•เซ‹เชฃ เช—เชฃเซ€ เชถเช•เชพเชฏ. เช…เชฎเชพเชฐเชพ เชนเซ‡เชคเซเช“ เชฎเชพเชŸเซ‡, เช…เชฎเซ‡ เชตเชฟเช•เชฟเชชเซ€เชกเชฟเชฏเชพเชฎเชพเช‚เชฅเซ€ เชฎเชŸเซ€เชฐเชฟเชฏเชฒเชพเช‡เชเซเชก เชตเซเชฏเซ‚เชจเซ€ เชตเซเชฏเชพเช–เซเชฏเชพเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชถเช•เซ€เช เช›เซ€เช: โ€œ...เชเช• เชญเซŒเชคเชฟเช• เชกเซ‡เชŸเชพเชฌเซ‡เช เช‘เชฌเซเชœเซ‡เช•เซเชŸ เชœเซ‡เชฎเชพเช‚ เช•เซเชตเซ‡เชฐเซ€เชจเชพเช‚ เชชเชฐเชฟเชฃเชพเชฎเซ‹ เชนเซ‹เชฏ เช›เซ‡. เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชคเซ‡ เชฐเชฟเชฎเซ‹เชŸ เชกเซ‡เชŸเชพเชจเซ€ เชธเซเชฅเชพเชจเชฟเช• เชจเช•เชฒ, เช…เชฅเชตเชพ เช•เซ‹เชทเซเชŸเช•เชจเซ€ เชชเช‚เช•เซเชคเชฟเช“ เช…เชจเซ‡/เช…เชฅเชตเชพ เช•เซ‰เชฒเชฎเชจเซ‹ เชธเชฌเชธเซ‡เชŸ เช…เชฅเชตเชพ เชœเซ‹เชกเชพเชตเชพเชจเชพ เชชเชฐเชฟเชฃเชพเชฎเซ‹, เช…เชฅเชตเชพ เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เชฆเซเชตเชพเชฐเชพ เชฎเซ‡เชณเชตเซ‡เชฒ เชธเชพเชฐเชพเช‚เชถ เช•เซ‹เชทเซเชŸเช• เชนเซ‹เชˆ เชถเช•เซ‡ เช›เซ‡" (https://en.wikipedia.org/wiki /Materialized_view).

เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เชคเชฎเชจเซ‡ เชธเซเชŸเซ‡เชŸ เชธเซเชŸเซ‹เชฐเซเชธ เชชเชฐ เช‡เชจเซเชŸเชฐเซ‡เช•เซเชŸเชฟเชต เช•เซเชตเซ‡เชฐเซ€เช เชšเชฒเชพเชตเชตเชพเชจเซ€ เชชเชฃ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡, เชœเซ‡เชจเชพเชฅเซ€ เชคเชฎเซ‡ เช† เชฎเชŸเซ€เชฐเชฟเชฏเชฒเชพเช‡เชเซเชก เชตเซเชฏเซ‚เชเชจเซ‡ เชธเซ€เชงเชพ เชตเชพเช‚เชšเซ€ เชถเช•เซ‹ เช›เซ‹. เช เชจเซ‹เช‚เชงเชตเซเช‚ เช…เช—เชคเซเชฏเชจเซเช‚ เช›เซ‡ เช•เซ‡ เชธเซเชŸเซ‡เชŸ เชธเซเชŸเซ‹เชฐเชจเซ€ เช•เซเชตเซ‡เชฐเซ€ เช เชซเช•เซเชค เชตเชพเช‚เชšเชตเชพ เชฎเชพเชŸเซ‡เชจเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€ เช›เซ‡. เช† เชธเซเชจเชฟเชถเซเชšเชฟเชค เช•เชฐเซ‡ เช›เซ‡ เช•เซ‡ เชœเซเชฏเชพเชฐเซ‡ เชคเชฎเชพเชฐเซ€ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชกเซ‡เชŸเชพ เชชเชฐ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช•เชฐเซ€ เชฐเชนเซ€ เชนเซ‹เชฏ เชคเซเชฏเชพเชฐเซ‡ เชคเชฎเชพเชฐเซ‡ เช†เช•เชธเซเชฎเชฟเช• เชฐเซ€เชคเซ‡ เชฐเชพเชœเซเชฏเชจเซ‡ เช…เชธเช‚เช—เชค เชฌเชจเชพเชตเชตเชพเชจเซ€ เชšเชฟเช‚เชคเชพ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€.

เชฐเชพเชœเซเชฏ เชธเซเชŸเซ‹เชฐเซเชธเชจเซ€ เชธเซ€เชงเซ€ เช•เซเชตเซ‡เชฐเซ€ เช•เชฐเชตเชพเชจเซ€ เช•เซเชทเชฎเชคเชพ เชฎเชนเชคเซเชตเชชเซ‚เชฐเซเชฃ เช›เซ‡. เช†เชจเซ‹ เช…เชฐเซเชฅ เช เช›เซ‡ เช•เซ‡ เชคเชฎเซ‡ เชชเชนเซ‡เชฒเชพ เช•เชพเชซเช•เชพ เช—เซเชฐเชพเชนเช• เชชเชพเชธเซ‡เชฅเซ€ เชกเซ‡เชŸเชพ เชฎเซ‡เชณเชตเซเชฏเชพ เชตเชฟเชจเชพ เชกเซ‡เชถเชฌเซ‹เชฐเซเชก เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เชฌเชจเชพเชตเซ€ เชถเช•เซ‹ เช›เซ‹. เชคเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซ€ เช•เชพเชฐเซเชฏเช•เซเชทเชฎเชคเชพเชฎเชพเช‚ เชชเชฃ เชตเชงเชพเชฐเซ‹ เช•เชฐเซ‡ เช›เซ‡, เชคเซ‡ เชนเช•เซ€เช•เชคเชจเซ‡ เช•เชพเชฐเชฃเซ‡ เช•เซ‡ เชซเชฐเซ€เชฅเซ€ เชกเซ‡เชŸเชพ เชฒเช–เชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€:

  • เชกเซ‡เชŸเชพเชจเซ€ เชธเซเชฅเชพเชจเชฟเช•เชคเชพเชจเซ‡ เช†เชญเชพเชฐ, เชคเซ‡เช“ เชเชกเชชเชฅเซ€ เชเช•เซเชธเซ‡เชธ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡;
  • เชกเซ‡เชŸเชพเชจเซเช‚ เชกเซเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชฆเซ‚เชฐ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เชคเซ‡ เชฌเชพเชนเซเชฏ เชธเซเชŸเซ‹เชฐเซ‡เชœ เชชเชฐ เชฒเช–เชพเชฏเซ‡เชฒเซเช‚ เชจเชฅเซ€.

เชฎเซเช–เซเชฏ เชตเชธเซเชคเซ เชœเซ‡ เชนเซเช‚ เชคเชฎเชจเซ‡ เชฏเชพเชฆ เชฐเชพเช–เชตเชพ เชฎเชพเช‚เช—เซ เช›เซเช‚ เชคเซ‡ เช เช›เซ‡ เช•เซ‡ เชคเชฎเซ‡ เชคเชฎเชพเชฐเซ€ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซ€ เช…เช‚เชฆเชฐเชฅเซ€ เชœ เชธเซเชŸเซ‡เชŸ เช•เซเชตเซ‡เชฐเซ€ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เช† เชคเชฎเชจเซ‡ เชœเซ‡ เชคเช•เซ‹ เช†เชชเซ‡ เช›เซ‡ เชคเซ‡ เชตเชงเชพเชฐเซ‡ เชชเชกเชคเซเช‚ เช•เชนเซ€ เชถเช•เชพเชฏ เชจเชนเซ€เช‚. เช•เชพเชซเช•เชพเชจเชพ เชกเซ‡เชŸเชพเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เช…เชจเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชฎเชพเชŸเซ‡ เชกเซ‡เชŸเชพเชฌเซ‡เชเชฎเชพเช‚ เชฐเซ‡เช•เซ‹เชฐเซเชกเซเชธ เชธเซเชŸเซ‹เชฐ เช•เชฐเชตเชพเชจเซ‡ เชฌเชฆเชฒเซ‡, เชคเชฎเซ‡ เชธเชฎเชพเชจ เชชเชฐเชฟเชฃเชพเชฎ เชธเชพเชฅเซ‡ เชธเซเชŸเซ‡เชŸ เชธเซเชŸเซ‹เชฐเซเชธเชจเซ‡ เช•เซเชตเซ‡เชฐเซ€ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เชฐเชพเชœเซเชฏ เชธเซเชŸเซ‹เชฐเซเชธ เชชเชฐ เชธเซ€เชงเซ€ เช•เซเชตเซ‡เชฐเซ€เชเชจเซ‹ เช…เชฐเซเชฅ เช“เช›เซ‹ เช•เซ‹เชก (เช•เซ‹เชˆ เช—เซเชฐเชพเชนเช• เชจเชฅเซ€) เช…เชจเซ‡ เช“เช›เชพ เชธเซ‹เชซเซเชŸเชตเซ‡เชฐ (เชชเชฐเชฟเชฃเชพเชฎเซ‹เชจเซ‡ เชธเช‚เช—เซเชฐเชนเชฟเชค เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชกเซ‡เชŸเชพเชฌเซ‡เช เชŸเซ‡เชฌเชฒเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€).

เช…เชฎเซ‡ เช† เชชเซเชฐเช•เชฐเชฃเชฎเชพเช‚ เชฅเซ‹เชกเซ€ เชœเชฎเซ€เชจ เช†เชตเชฐเซ€ เชฒเซ€เชงเซ€ เช›เซ‡, เชคเซ‡เชฅเซ€ เช…เชฎเซ‡ เชนเชฎเชฃเชพเช‚ เชฎเชพเชŸเซ‡ เชฐเชพเชœเซเชฏเชจเชพ เชธเซเชŸเซ‹เชฐเซเชธ เชธเชพเชฎเซ‡ เช‡เชจเซเชŸเชฐเซ‡เช•เซเชŸเชฟเชต เชชเซเชฐเชถเซเชจเซ‹เชจเซ€ เช…เชฎเชพเชฐเซ€ เชšเชฐเซเชšเชพ เช›เซ‹เชกเซ€เชถเซเช‚. เชชเชฐเช‚เชคเซ เชšเชฟเช‚เชคเชพ เช•เชฐเชถเซ‹ เชจเชนเซ€เช‚: เชชเซเชฐเช•เชฐเชฃ 9 เชฎเชพเช‚, เช…เชฎเซ‡ เช‡เชจเซเชŸเชฐเซ‡เช•เซเชŸเชฟเชต เชชเซเชฐเชถเซเชจเซ‹ เชธเชพเชฅเซ‡ เชเช• เชธเชฐเชณ เชกเซ‡เชถเชฌเซ‹เชฐเซเชก เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชฌเชจเชพเชตเซ€เชถเซเช‚. เชคเซ‡ เช‡เชจเซเชŸเชฐเซ‡เช•เซเชŸเชฟเชต เช•เซเชตเซ‡เชฐเซ€เช เชฆเชฐเซเชถเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เช† เช…เชจเซ‡ เช…เช—เชพเช‰เชจเชพ เชชเซเชฐเช•เชฐเชฃเซ‹เชฎเชพเช‚เชฅเซ€ เช•เซ‡เชŸเชฒเชพเช• เช‰เชฆเชพเชนเชฐเชฃเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชถเซ‡ เช…เชจเซ‡ เชคเชฎเซ‡ เชคเซ‡เชจเซ‡ เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธเชฎเชพเช‚ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช‰เชฎเซ‡เชฐเซ€ เชถเช•เซ‹ เช›เซ‹.

เชธเชพเชฐเชพเช‚เชถ

  • KStream เช‘เชฌเซเชœเซ‡เช•เซเชŸเซเชธ เชกเซ‡เชŸเชพเชฌเซ‡เชเชฎเชพเช‚ เชฆเชพเช–เชฒ เช•เชฐเชตเชพ เชธเชพเชฅเซ‡ เชคเซเชฒเชจเชพเชคเซเชฎเช•, เช˜เชŸเชจเชพเช“เชจเชพ เชชเซเชฐเชตเชพเชนเซ‹เชจเซเช‚ เชชเซเชฐเชคเชฟเชจเชฟเชงเชฟเชคเซเชต เช•เชฐเซ‡ เช›เซ‡. KTable เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช…เชชเชกเซ‡เชŸ เชธเซเชŸเซเชฐเซ€เชฎเซเชธเชจเซเช‚ เชชเซเชฐเชคเชฟเชจเชฟเชงเชฟเชคเซเชต เช•เชฐเซ‡ เช›เซ‡, เชœเซ‡เชฎ เช•เซ‡ เชกเซ‡เชŸเชพเชฌเซ‡เชเชจเชพ เช…เชชเชกเซ‡เชŸเซเชธ. KTable เช‘เชฌเซเชœเซ‡เช•เซเชŸเชจเซเช‚ เช•เชฆ เชตเชงเชคเซเช‚ เชจเชฅเซ€, เชœเซ‚เชจเชพ เชฐเซ‡เช•เซ‹เชฐเซเชกเซเชธ เชจเชตเชพ เชฆเซเชตเชพเชฐเชพ เชฌเชฆเชฒเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.
  • เชเช•เชคเซเชฐเซ€เช•เชฐเชฃ เช•เชพเชฎเช—เซ€เชฐเซ€ เชฎเชพเชŸเซ‡ KTable เช‘เชฌเซเชœเซ‡เช•เซเชŸ เช†เชตเชถเซเชฏเช• เช›เซ‡.
  • เชตเชฟเชจเซเชกเซ‹เช‡เช‚เช— เช“เชชเชฐเซ‡เชถเชจเซเชธเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡, เชคเชฎเซ‡ เชเช•เซ€เช•เซƒเชค เชกเซ‡เชŸเชพเชจเซ‡ เชŸเชพเช‡เชฎ เชฌเช•เซ‡เชŸเชฎเชพเช‚ เชตเชฟเชญเชพเชœเชฟเชค เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹.
  • GlobalKTable เช‘เชฌเซเชœเซ‡เช•เซเชŸเซเชธ เชฎเชพเชŸเซ‡ เช†เชญเชพเชฐ, เชคเชฎเซ‡ เชชเชพเชฐเซเชŸเซ€เชถเชจเชจเซ‡ เชงเซเชฏเชพเชจเชฎเชพเช‚ เชฒเซ€เชงเชพ เชตเชฟเชจเชพ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชฎเชพเช‚ เช—เชฎเซ‡ เชคเซเชฏเชพเช‚ เชธเช‚เชฆเชฐเซเชญ เชกเซ‡เชŸเชพเชจเซ‡ เชเช•เซเชธเซ‡เชธ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹.
  • KStream, KTable เช…เชจเซ‡ GlobalKTable เช‘เชฌเซเชœเซ‡เช•เซเชŸ เชตเชšเซเชšเซ‡ เชœเซ‹เชกเชพเชฃเซ‹ เชถเช•เซเชฏ เช›เซ‡.

เช…เชคเซเชฏเชพเชฐ เชธเซเชงเซ€, เช…เชฎเซ‡ เช‰เชšเซเชš-เชธเซเชคเชฐเชจเซ€ KStream DSL เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช•เชพเชซเซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชฌเชจเชพเชตเชตเชพ เชชเชฐ เชงเซเชฏเชพเชจ เช•เซ‡เชจเซเชฆเซเชฐเชฟเชค เช•เชฐเซเชฏเซเช‚ เช›เซ‡. เชœเซ‹ เช•เซ‡ เช‰เชšเซเชš-เชธเซเชคเชฐเชจเซ‹ เช…เชญเชฟเช—เชฎ เชคเชฎเชจเซ‡ เชธเซเช˜เชก เช…เชจเซ‡ เชธเช‚เช•เซเชทเชฟเชชเซเชค เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเซเชธ เชฌเชจเชพเชตเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡, เชคเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชตเซ‡เชชเชพเชฐ-เชฌเช‚เชงเชจเซเช‚ เชชเซเชฐเชคเชฟเชจเชฟเชงเชฟเชคเซเชต เช•เชฐเซ‡ เช›เซ‡. DSL KStream เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเชตเชพเชจเซ‹ เช…เชฐเซเชฅ เช›เซ‡ เชจเชฟเชฏเช‚เชคเซเชฐเชฃเชจเซ€ เชกเชฟเช—เซเชฐเซ€ เช˜เชŸเชพเชกเซ€เชจเซ‡ เชคเชฎเชพเชฐเชพ เช•เซ‹เชกเชจเซ€ เชธเช‚เช•เซเชทเชฟเชชเซเชคเชคเชพ เชตเชงเชพเชฐเชตเซ€. เช†เช—เชณเชจเชพ เชชเซเชฐเช•เชฐเชฃเชฎเชพเช‚, เช…เชฎเซ‡ เชจเซ€เชšเชพ-เชธเซเชคเชฐเชจเชพ เชนเซ‡เชจเซเชกเชฒเชฐ เชจเซ‹เชก API เชจเซ‡ เชœเซ‹เชˆเชถเซเช‚ เช…เชจเซ‡ เช…เชจเซเชฏ เชŸเซเชฐเซ‡เชก-เช“เชซเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ€เชถเซเช‚. เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเซเชธ เชชเชนเซ‡เชฒเชพ เช•เชฐเชคเชพ เชฒเชพเช‚เชฌเชพ เชนเชถเซ‡, เชชเชฐเช‚เชคเซ เช…เชฎเซ‡ เชฒเช—เชญเช— เช•เซ‹เชˆเชชเชฃ เชนเซ‡เชจเซเชกเชฒเชฐ เชจเซ‹เชก เชฌเชจเชพเชตเซ€ เชถเช•เซ€เชถเซเช‚ เชœเซ‡เชจเซ€ เช…เชฎเชจเซ‡ เชœเชฐเซ‚เชฐ เชชเชกเซ€ เชถเช•เซ‡ เช›เซ‡.

โ†’ เชชเซเชธเซเชคเช• เชตเชฟเชถเซ‡ เชตเชงเซ เชตเชฟเช—เชคเซ‹ เช…เชนเซ€เช‚ เชฎเชณเซ€ เชถเช•เซ‡ เช›เซ‡ เชชเซเชฐเช•เชพเชถเช•เชจเซ€ เชตเซ‡เชฌเชธเชพเช‡เชŸ

โ†’ Habrozhiteli เชฎเชพเชŸเซ‡ เช•เซ‚เชชเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ 25% เชกเชฟเชธเซเช•เชพเช‰เชจเซเชŸ - เช•เชพเชซเช•เชพ เชธเซเชŸเซเชฐเซ€เชฎเซเชธ

โ†’ เชชเซเชธเซเชคเช•เชจเชพ เชชเซ‡เชชเชฐ เชตเชฐเซเชเชจ เชฎเชพเชŸเซ‡ เชšเซ‚เช•เชตเชฃเซ€ เช•เชฐเชตเชพ เชชเชฐ, เชˆเชฒเซ‡เช•เซเชŸเซเชฐเซ‹เชจเชฟเช• เชชเซเชธเซเชคเช• เชˆ-เชฎเซ‡เชฒ เชฆเซเชตเชพเชฐเชพ เชฎเซ‹เช•เชฒเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡.

เชธเซ‹เชฐเซเชธ: www.habr.com

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹