Движок таблицы ExternalDistributed
Движок ExternalDistributed позволяет выполнять запросы SELECT к данным, которые хранятся на удалённых серверах с MySQL или PostgreSQL. Принимает в качестве аргумента движки MySQL или PostgreSQL, поэтому возможен шардинг.
Создание таблицы
См. подробное описание запроса CREATE TABLE.
Структура таблицы может отличаться от структуры исходной таблицы:
- Имена столбцов должны совпадать с именами в исходной таблице, но вы можете использовать только часть этих столбцов и в любом порядке.
- Типы столбцов могут отличаться от типов в исходной таблице. ClickHouse пытается привести значения к типам данных ClickHouse.
Параметры движка
engine— Движок таблицыMySQLилиPostgreSQL.host:port— Адрес сервера MySQL или PostgreSQL.database— Имя удалённой базы данных.table— Имя удалённой таблицы.user— Имя пользователя.password— Пароль пользователя.
Детали реализации
Поддерживаются несколько реплик; их необходимо перечислять через |, а шарды — через ,. Например:
При задании реплик при чтении для каждого шарда выбирается одна из доступных реплик. Если подключение не удалось, выбирается следующая реплика и так далее для всех реплик. Если попытка подключения ко всем репликам завершилась неудачей, попытка повторяется тем же образом несколько раз.
Вы можете указывать любое количество шардов и любое количество реплик для каждого шарда.
См. также