Присоединяюсь к потоку со столом. Результат соединения успешен только частично. Некоторые значения заполнены точно, а другие равны нулю. Я проверил, существуют ли значения как в таблице, так и в потоке, и что столбец, используемый для соединения, является ключом для обоих.
Я использую конфлюэнт для загрузки тем, которые читаются из таблиц в MSSQL с помощью jdbc.
Затем я создаю поток и таблицу из соответствующих тем с помощью KSQL, и все данные находятся в формате JSON.
Отметки времени для отсутствующих данных в таблице старше, чем у потока.
create stream casecode_contract_stream as select ct.projectid, ct.casecode, cs.isTrue from contract_stream cs left join casecode_table ct on cs.projectid = ct.projectid;
select * from casecode_contract_stream limit 1;
1532034321292 | 706083 | null | null | true
ksql> select * from casecode_contract_stream where casecode is not null limit 1;
1532034321292 | 705147 | 705147 | data1 | true
select * from casecode_table where projectid = 705147;
1532033878462 | 705147 | 705147 | data1
select * from casecode_table where projectid = 706083;
1532033878463 | 706083 | 706083 | data2
select * from contract_stream where projectid = 705147;
1532034321292 | 705147 | 705147 | true
select * from contract_stream where projectid = 706083;
1532034321292 | 706083 | 706083 | true
Какие-либо предложения?