카프카 / 메시지 유지 시간 / 유지 기간 / 삭제 기간 / 언제 삭제 / 어떻게 조정 / 시간 연장 / 시간 단축 / run out of
kafka message 유지 기간
기본적으로 kafka 는 어떤 message 가 consume 됐는지 여부를 consumer 가 결정하는 정책이라고 한다.[ref. 1] (이 덕분에 horizontal scalability 가 가능하다.)
log.retention.hours
- 이 시간이 지나면 topic 에서 자동으로 사라진다.(not-consumed 여도 사라진다.)
<kafka>/config/server.properties
에서 설정할 수 있다.
# The minimum age of a log file to be eligible for deletion due to age
log.retention.hours=168
disk 가 다 차면
디스크를 전부 사용하게 돼서, 즉 용량이 다 차도 message 는 사라진다.
개별 메시지 삭제
bin/kafka-delete-records.sh
를 사용해서 message 를 지울 수 있다. 아래는 0~90 까지 지우는 예제이다.
./bin/kafka-delete-records.sh --bootstrap-server localhost:9092 --offset-json-file ./offsetfile.json
// offsetfile.json
{"partitions": [{"topic": "mytopic", "partition": 0, "offset": 90}], "version":1 }
댓글 없음:
댓글 쓰기