ExternalDistributed 表引擎
ExternalDistributed 引擎允许对存储在远程服务器上 MySQL 或 PostgreSQL 实例中的数据执行 SELECT 查询。它接受 MySQL 或 PostgreSQL 引擎作为参数,从而支持分片。
创建表
在 CREATE TABLE 查询中查看该语句的详细说明。
表结构可以与原始表结构不同:
- 列名应与原始表中的列名相同,但你可以只使用其中一部分列,并按任意顺序排列。
- 列类型可以与原始表中的类型不同。ClickHouse 会尝试将值转换为 ClickHouse 数据类型。
引擎参数
engine— 表引擎MySQL或PostgreSQL。host:port— MySQL 或 PostgreSQL 服务器地址。database— 远程数据库名称。table— 远程表名称。user— 用户名。password— 用户密码。
实现细节
支持多个副本,多个副本之间必须使用 | 分隔,多个分片之间必须使用 , 分隔。例如:
在为分片指定副本后,读取时会为每个分片从可用副本中选择一个副本。如果连接失败,则选择下一个副本,依此类推遍历所有副本。如果对所有副本的连接尝试都失败,则会以相同方式重复尝试多次。
可以为任意数量的分片指定任意数量的副本。
另请参阅