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