0.11 이상에서는 bin/kafka-delete-records.sh 명령을 실행하여 메시지를 삭제하도록 표시 할 수 있습니다.
https://github.com/apache/kafka/blob/trunk/bin/kafka-delete-records.sh
예를 들어 다음 새 kafka-delete-records.sh 명령 행 도구를 사용하여 100 개의 메시지 (90)를 삭제 100 메시지
seq 100 | ./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic mytest
을 게시
./bin/kafka-delete-records.sh --bootstrap-server localhost:9092 --offset-json-file ./offsetfile.json
곳 offsetfile.json에 포함 된 내용은
입니다.
처음부터 메시지를 사용하여 100 메시지 중 90 개가 실제로 삭제 된 것으로 표시되는지 확인하십시오.
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic mytest --from-beginning
91
92
93
94
95
96
97
98
99
100
먼저 언급 한 보유 시간 트릭이 훨씬 좋습니다. 두 번째 방법은 복제 된 주제에 대해 문제를 일으키고 주제에 대한 메타 데이터를 현실과 일치시키지 않습니다. 오프셋 번호는 0으로 돌아 가지 않습니다. – dawsaw