Перейти к основному содержимому
Перейти к основному содержимому

ExternalDistributed

Движок ExternalDistributed позволяет выполнять запросы SELECT к данным, хранящимся на удаленных серверах MySQL или PostgreSQL. Принимает MySQL или PostgreSQL в качестве аргумента, что делает возможным шардирование.

Создание таблицы

Смотрите детальное описание запроса CREATE TABLE.

Структура таблицы может отличаться от оригинальной структуры таблицы:

  • Имена столбцов должны совпадать с именами в оригинальной таблице, но вы можете использовать только некоторые из этих столбцов и в любом порядке.
  • Типы столбцов могут отличаться от тех, что в оригинальной таблице. ClickHouse пытается преобразовать значения в типы данных ClickHouse.

Параметры движка

  • engine — Движок таблицы MySQL или PostgreSQL.
  • host:port — Адрес сервера MySQL или PostgreSQL.
  • database — Имя удаленной базы данных.
  • table — Имя удаленной таблицы.
  • user — Имя пользователя.
  • password — Пароль пользователя.

Подробности реализации

Поддерживает несколько реплик, которые должны быть перечислены через |, а шардирование должно быть перечислено через ,. Например:

При указании реплик одна из доступных реплик выбирается для каждой шард при чтении. Если подключение не удается, выбирается следующая реплика, и так продолжается со всеми репликами. Если попытка подключения не удается для всех реплик, попытка повторяется тем же образом несколько раз.

Вы можете указать любое количество шард и любое количество реплик для каждой шард.

Смотрите также