Не удается получить данные из Кафки в распределенную таблицу - PullRequest
0 голосов
/ 23 февраля 2019

Мне нужно получить данные из очереди Kafka (заполненные моим сценарием) для каждой реплики в кластере ClickHouse (CH).

Я создал:

  1. 'очередь'таблица (двигатель Кафки) на каждой реплике;
  2. материализованное представление «потребителя» (получение данных из «очереди» в распределенную таблицу) на каждой реплике;
  3. таблица данных 'data';

Пока я помещаю данные в Kafka, я почти уверен, что таблицы принимают данные (просто select count(*) from data), но я всегда получаю это:

"Ход выполнения: 1,55 тыс. Строк, 1,24 МБ (297,46 строк / с., 237,18 КБ / с.) Получено исключение от сервера (версия 18.14.17): Код: 159. DB :: Exception:Получено от хоста: порт. DB :: Exception: Не удалось запросить потребителя:. 0 строк в наборе. Прошло: 5,313 с. Обработано 1,55 тыс. Строк, 1,24 МБ (291,94 строк / с., 232,78 КБ / с.) "

Когда я прекращаю заполнять Кафку, у меня появляется короткое временное окно, в котором я могу выполнить свой запрос.Но через несколько секунд я получаю - 0 считается на каждой созданной мной таблице.

1 Ответ

0 голосов
/ 25 февраля 2019

Проблема была на моей стороне: недопустимые столбцы в материализованном представлении «потребитель».Кстати, если кому-то потребуется выполнить ту же задачу, вот карта данных:

  1. Создание «локальных» таблиц на всех хостах в кластере;
  2. Создание распределенных таблиц на всех хостах в кластере;
  3. Создание таблицы механизма Kafka «очередь» + материализованное представление «потребитель» на одном хосте
...