토픽은 데이터베이스의 테이블이나 파일시스템의 폴더와 비슷한 성질을 갖고 있음.
토픽에서 프로듀서가 데이터를 넣고 컨슈머가 받아가는 형식
무슨 데이터를 담는지 명확하게 하면 유지보수에 용이!
하나의 토픽은 여러개의 파티션을 가질 수 있고 하나의 파티션은 큐와같이 데이터가 쌓이게 됌!
컨슈머가 record를 가져가도 데이터는 삭제되지 않는다!
이 파티션에 남은 데이터는 새로운 컨슈머가 붙었을 경후 0번부터 가져갈 수 있음!
파티션이 여러개 일경우, hash값에 따라 넣거나 round robin형식으로 넣을 수 있는등 여러가지 방법이 있음
파티션을 늘리는건 가능하지만 파티션을 줄일 순없어서 늘릴때는 항상 조심해야함
그럼 왜 늘릴까? 컨슈머 그룹을 늘려서 데이터 처리를 분산시킬 수 있음!
그럼 파티션의 데이터들은 언제 제거되나? 이건 설정에 따라 다르다
→ log.retention.ms: 최대 record 보존 시간