카프카 스트림즈 - 리파티셔닝

함궈·2023년 10월 7일
0

아파치카프카

목록 보기
4/10
post-thumbnail

리파티셔닝이란?

새로운 토픽에 새로운 메시지 키를 가지도록 재배열하는 과정이다.

키 변경 연산자를 토폴로지에 추가했다면, 카프카 스트림즈는 그 연산자를 통과하는 데이터가 리파티셔닝될 것이라 표시한다.

이로 인해 재생성한 새 키를 가진 결과 레코드를 읽는 하위 스트림 연산자가 있다면 다음과 같은 일을 할 것이다.

  1. 새로 생성한 키를 가지는 데이터를 내부 리파티션 토픽으로 전송한다.

  2. 새로 생성한 키를 가지는 데이터를 카프카 스트림즈로 다시 읽는다.

키를 변경할 수 있는 연산자들은 다음과 같다.

  • Map
  • FlatMap
  • SelectKey
  • GroupBy

그러므로 키를 변경할 필요가 없다면 아래 연산자를 사용하도록 하자.

  • MapValues
  • FlatMapValues
  • GroupByKey

리파티셔닝은 성능에 영향을 줄 수 있다 ( 읽기, 쓰기 작업을 수행하므로 )


출처

미치 시모어, 오세봉, 카프카 스트림즈와 ksqlDB 정복, 에이콘

Udemy Kafka Streams 강의

0개의 댓글