одним ETL инструментом в кликхаус через ODBC драйвер.
Объем данных - 1 строка, но вставка повторяется бесконечно. В логе ODBC драйвера можно увидеть последовательные POST запросы с данными этой строки.
Сам ETL инструмент строки не множит. Почему такое может происходить?
Какое такое? ))) Что в результате в таблице не 1 строка? 1) КХ не гарантирует отсутствие дублей 2) зависит от движка таблицы 3) зависит от настроек КХ
>>Какое такое? ))) При попытке вставить одну строчку в таблицу через ODBC драйвер начинается бесконечная повторяющаяся вставка этой строки. Чем дольше ждать тем больше раз вставится. 2) MergeTree. 3) Каких именно, если не сложно.
Я про insert_deduplicate. Но это явно не ваш случай. И судя по тому, что в odbc логе много вставок, проблема где-то до КХ
А materialized view на таблицу нет?
через КХ клиент проходит инсерт который вы видите в post? в КХ логах есть ошибки про этот инсерт? /var/log/clickhouse-server/clickhouse-server.err.log
возможно ваш ETL слишком умен и проверяет сколько строк инсерт вставил с помощью значения от execute(SQL) а КХ возвращает всегда 0, потому что в КХ нету этой фичи
нет, по http протоколу работает, в КХ логах ошибки нет
насчет ETL не знаю но в логе ODBC драйвера после каждого POST запроса есть такие строки пуьть до драйвера/driver/api/odbc.cpp:764 in SQLRowCount: SQLRowCount пуьть до драйвера/driver/api/odbc.cpp:772 in operator(): getNumRows=0 это наводит на чтото?
в общем понятно ваш ETL тул несовместим с КХ
Обсуждают сегодня