inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

세그먼트와 삭제 주기(cleanup.policy)

retention.byte에 대해 질문있습니다.

273

카데

작성한 질문수 3

0

안녕하세요. 카프카가 데이터를 삭제할 때 세그먼트, 즉 파일 단위로 삭제한다고 말씀해주셨습니다.

retention.ms는 active 세그먼트가 아닌 세그먼트가 해당 기간을 지났을 때 삭제한다는 것이 명료해서 이해가 갔는데, retention.byte는 조금 헷갈립니다.

세그먼트의 기본 크기가 1GB로 알고 있습니다. 만약 retention.ms를 사용하지 않는다고 가정하면 (매우 큰값이라고 가정한다면) 세그먼트 삭제는 retention.byte에 의해 좌우될텐데요, retention.byte를 1GB보다 크게 주는 경우, 세그먼트는 영영 삭제되지 않는 것일까요?

kafka 데이터-엔지니어링

답변 2

0

데브원영 DVWY

안녕하세요.

retention.ms를 사용하지 않는 경우 말씀대로 retention.byte에 의해 좌우됩니다. retention.byte가 1GB보다 큰 2GB로 줄경우, segment file 여러개의 용량에 따라 데이터가 삭제될 수 있습니다.

그러므로, 여러 하나의 세그먼트 파일 단위가 아닌 여러 세그먼트 단위로 생각하시면 좋을것 같습니다!

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.
카데님, 카프카에서 retention.bytes 설정은 토픽에 저장할 수 있는 총 데이터의 크기를 제한하는 설정입니다. 즉, retention.bytes의 값이 세그먼트의 크기보다 크게 설정되어 있다면, 그 범위 내에서는 여러 세그먼트가 유지될 수 있습니다.

만약 retention.bytes를 1GB보다 크게 설정하고 retention.ms는 매우 크게 설정하거나 사용하지 않는다면, 실제 삭제는 retention.bytes에 도달했을 때 기준으로 발생하게 됩니다. 이는 저장소 사용량이 retention.bytes 값을 초과할 때까지 더 많은 세그먼트가 보관된다는 의미이며, 결과적으로 retention.bytes가 세그먼트의 크기보다 클 경우 세그먼트는 주어진 저장 공간 기준 안에서 영구적으로 삭제되지 않을 수 있습니다. 단, 파일 시스템의 용량이나 클러스터의 다른 설정에 의해 영향을 받을 수도 있습니다.

더 자세한 정보를 원하신다면, Kafka 공식 문서의 “Configuring Topics: Data Retention And More” 섹션을 참조하시면 됩니다.
참조 URL: https://kafka.apache.org/documentation/#multitenancy-topic-configs

도움이 되셨기를 바랍니다.

consume 이후 lag가 줄어들지 않음

0

75

2

안녕하세요. 강의의 카프카 버전과 현재 시점의 카프카의 차이점 문의 드립니다.

0

118

2

멱등성 프로듀서 retries 관련 질문입니다.

0

99

2

채팅 서비스 개발 시 주의점이 있을까요?

0

100

2

충분히 큰 파티션 생성시 궁금증이 존재합니다.

0

88

2

KTable 키가 없는 레코드 처리

0

73

2

컨슈머 테스트 코드 작성

0

94

2

리밸런스 onPartitionRevoked이 필요한 상황

0

74

2

카프카 클러스터에서 감당 가능한 파티션(레플리카) 수 문의

0

120

2

reset offset 질문

0

77

2

KStreamJoinKTable 실행시 오류

0

78

2

auto.commit.interval.ms 옵션 관련 질문 드립니다.

0

142

2

파티션, 컨슈머 그룹, 컨슈머 관련 질문

0

117

1

java, kotlin

0

130

2

shutdownThread 에 대한 문의 입니다.

0

155

2

zookeeper실행시 오류가 발생합니다.

0

271

2

커스텀 소스 커넥터에서 Thread.sleep (1000) 은 왜 하는거에요?

0

153

2

처리량을 늘리기 위해서 파티션을 늘리고 컨슈머를 늘려야한다고 설명하셨는데요

0

181

3

파티션 개수와 컨슈머 개수의 처리량 관련 질문

0

164

2

동영상 및 이미지 처리 관련 문의 드립니다.

0

226

2

주키퍼 없이 사용 문의 드립니다.

0

303

1

kafka 를 띄우니 오류가 발생하고 종료합니다.

0

281

3

zookeeper 실행시 오류 .. 무엇을 해야 할까요?

0

220

2

파티션 추가로 해결할 수 있지만 늘어난 파티션은 줄일 수 없지 않나요?

0

192

2