인프런 커뮤니티 질문&답변

쫑긋님의 프로필 이미지

작성한 질문수

[아파치 카프카 애플리케이션 프로그래밍] 개념부터 컨슈머, 프로듀서, 커넥트, 스트림즈까지!

파티션의 갯수를 줄이지 못하는 이유는 '데이터 손실' 때문인가요?

22.07.20 02:53 작성

·

219

0

파티션의 갯수를 늘렸을때는 '파티션에 이미 존재하는 데이터의 손실'이 없습니다. 단순히 파티션의 갯수가 늘어남에따라, 저장되는 레코드의 위치가 달라지게 될것입니다. 

파티션의 갯수를 줄였을때는 '새로 들어가는 레코드는 문제가없지만, 삭제되는 파티션에 존재하는 데이터는 손실' 되기 때문에 InvalidPartitionsException 에러가 발생하는게 맞나요 ?

 

2.5.0 버전 이상부터는 UniformStickyPartitioner이 기본파티셔너로 설정된다는데, 혹시 이 부분도 연관이되어있나요 ??

 

답변 1

1

데브원영 DVWY님의 프로필 이미지
데브원영 DVWY
지식공유자

2022. 07. 20. 09:50

파티션 개수를 줄이지 못하는 이유는 카프카를 이루는 여러 설계 요인들이 복합적으로 적용되기 때문입니다. 그중 하나는 다수 브로커에 분배되어 있는 세그먼트를 다시 재배열하는 것에 상당한 리소스가 들어가는 것이라고 말씀드릴 수 있습니다. KIP-694(https://cwiki.apache.org/confluence/display/KAFKA/KIP-694%3A+Support+Reducing+Partitions+for+Topics)에서 파티션 개수를 줄이는 방안에 대해 논의했으나 더 이상 진행되고 있지는 않는점 참고부탁드립니다.

그리고 UniformStickyPartitioner와 파티션 개수 감소와는 관련이 없습니다.

쫑긋님의 프로필 이미지

작성한 질문수

질문하기