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