У меня есть тема, которая уплотнена:
/opt/kafka/bin/kafka-topics.sh --zookeeper localhost --describe --topic myTopic
Topic:myTopic PartitionCount:1 ReplicationFactor:1 Configs:cleanup.policy=compact
На ней нет сообщений:
/opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic myTopic --from-beginning --property print-key=true
^CProcessed a total of 0 messages
Как самое раннее, так и самое последнее смещение для единственного раздела, который существует 12Хотя.
/opt/kafka/bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --topic myTopic --time -2
myTopic:0:12
/opt/kafka/bin/kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list localhost:9092 --topic myTopic --time -1
myTopic:0:12
Интересно, что могло произойти с этими 12 сообщениями?Цифра верна, я ожидал, что они будут там, но по какой-то причине они исчезли.
Насколько я понимаю, даже если бы у этих 12 сообщений был один и тот же ключ, я бы по крайней мере виделодин - так работает сжатие.
Тема была создана как уплотненная.Единственная странная вещь, которая могла произойти за это время, это то, что экземпляр Kafka полностью потерял свои данные Zookeeper.Возможно ли, что это также привело к потере данных?
Перефразируя последний вопрос: Может ли что-то плохое случиться с физическими данными на Kafka, если я удалю все связанные с Kafka ZNodes на Zookeeper?
Кроме того, здесь приведены некоторые журналы запуска Kafka.
[2019-04-30 12: 02: 16,510] WARN [раздел журнала = myTopic-0, dir =/ var / lib / kafka] Обнаружен поврежденный индексный файл, соответствующий файлу журнала /var/lib/kafka/myTopic-0/00000000000000000000.log из-за найденного поврежденного индекса, индексный файл (/ var / lib / kafka / myTopic-0 /00000000000000000000.index) имеет ненулевой размер, но последнее смещение равно 0, что не больше базового смещения 0.}, восстановление сегмента и восстановление файлов индекса ... (kafka.log.Log)
[2019-04-30 12: 02: 16,524] ИНФОРМАЦИЯ [Раздел журнала = myTopic-0, dir = / var / lib / kafka] Завершена загрузка журнала с 1 сегментами, смещение начала журнала 0 и смещение конца журнала 12 за 16 мс (kafka.log.Log)
[2019-04-30 12: 35: 34,530] ИНФОРМАЦИЯ Получил KeeperException на уровне пользователя, гдеn обработка sessionid: 0x16a6e1ea2000001 тип: setData cxid: 0x1406 zxid: 0xd11 txntype: -1 reqpath: n / a Путь ошибки: / config / themes / myTopic Ошибка: KeeperErrorCode = NoNode для / config / themes / myTopic (org.apache.z..server.PrepRequestProcessor)
[2019-04-30 12: 35: 34,535] ИНФОРМАЦИЯ Карта создания темы (myTopic-0 -> ArrayBuffer (0)) (kafka.zk.AdminZkClient)
[2019-04-30 12: 35: 34,547] ИНФОРМАЦИЯ [ReplicaFetcherManager on broker 0] Удалено средство извлечения для разделов myTopic-0 (kafka.server.ReplicaFetcherManager)
[2019-04-30 12:35:34 580] INFO [Partition myTopic-0 broker = 0] Не найдена контрольная точка верхнего знака для раздела myTopic-0 (kafka.cluster.Partition)
[2019-04-30 12: 35: 34 580] INFO Реплика загруженадля раздела myTopic-0 с начальным верхним водяным знаком 0 (kafka.cluster.Replica)
[2019-04-30 12: 35: 34,580] INFO [Partition myTopic-0 broker = 0] myTopic-0 начинается сЭпоха Лидера 0 со смещения 12. Предыдущая Эпоха Лидера была: -1 (kafka.cluster.Partition)
И сообщения действительно были удалены:
[2019-04-30 12: 39: 24,199] INFO [Журнал раздел = myTopic-0, dir = / var / lib/ kafka] Найдены удаляемые сегменты с базовыми смещениями [0] из-за нарушения времени хранения 10800000ms (kafka.log.Log)
[2019-04-30 12: 39: 24,201] INFO [Журнал раздела = myTopic-0, dir = / var / lib / kafka] Свернутый новый сегмент журнала со смещением 12 за 2 мс.(kafka.log.Log)