Kafka-K sql Перезапись в потоке приводит к исчезновению данных через несколько минут - PullRequest
1 голос
/ 02 апреля 2020

Повторное использование прекрасно работает в следующих сценариях 1. Базовая топи c для потоковой передачи, затем повторной передачи - хорошо 2. Таблица для потоковой передачи, затем повторной передачи - хорошо

Но при попытке с таблицей - соединение таблицы приводит к новому table, создайте поток для этой результирующей таблицы, затем повторно измените поток - кажется, что он работает нормально в течение нескольких минут (запрос на выборку получает ожидаемый результат), а затем данные исчезают из вновь созданного потока.

-- Table on Table join - works as expected
CREATE TABLE JOINRESULT_T AS 
SELECT d.DEVICE_ID, d.LOCATION_ALIAS,d.UPDATED_BY, 
d.UPDATED_TIMESTAMP AS UPDATED_TIMESTAMP, d.__DELETED AS __DELETED
FROM TABLE1 d LEFT JOIN TABLE2 l ON d.LOCATION_ALIAS=l.ALIAS;

-- Stream from table - works as expected
CREATE STREAM FROMJOIN_S WITH(KAFKA_TOPIC='JOINRESULT_T', VALUE_FORMAT='AVRO');

-- Rekey the above stream - Data disappears after few minutes
CREATE STREAM REKEY_S AS SELECT * FROM FROMJOIN_S PARTITION BY DEVICE_ID;

Команда расширенного описания в потоке отображает количество сообщений, которые в данный момент хранятся в потоке. Но команда выбора не дает никаких результатов. Команда print topi c на связанной topi c также ничего не печатает.

введите описание изображения здесь

K sql версия: 5.3. 1, также пробовал последнюю версию Разделы = 1, реплики = 1.

пытался выяснить, содержит ли пространство хранения topi c на сервере kafka какие-либо данные, и обнаружил, что файл журнала и файлы моментальных снимков пусты .

что может привести к исчезновению данных после записи в топи c?

...