篮之新喜 发表于 2024-3-17 13:02:22

ClickHouse(20)ClickHouse集成PostgreSQL表引擎详细解析

目录

[*]PostgreSQL

[*]创建一张表
[*]实施细节
[*]用法示例

[*]资料分享
[*]参考文章

PostgreSQL

PostgreSQL 引擎允许 ClickHouse 对存储在远程 PostgreSQL 服务器上的数据执行 SELECT 和 INSERT 查询.
创建一张表

CREATE TABLE table_name
(
    name1 ,
    name2 ,
    ...
) ENGINE = PostgreSQL('host:port', 'database', 'table', 'user', 'password'[, `schema`]);表结构可以与 PostgreSQL 源表结构不同:

[*]列名应与 PostgreSQL 源表中的列名相同,但您可以按任何顺序使用其中的一些列。
[*]列类型可能与源表中的列类型不同。 ClickHouse尝试将数值映射到ClickHouse的数据类型。
[*]设置 external_table_functions_use_nulls 来定义如何处理 Nullable 列. 默认值是 1, 当设置为 0 时 - 表函数将不会使用 nullable 列,而是插入默认值来代替 null. 这同样适用于数组数据类型中的 null 值.
引擎参数

[*]host:port — PostgreSQL 服务器地址.
[*]database — 数据库名称.
[*]table — 表名称.
[*]user — PostgreSQL 用户.
[*]password — 用户密码.
[*]schema — Non-default table schema. 可选.
实施细节

在 PostgreSQL 上的 SELECT 查询以 COPY (SELECT ...) TO STDOUT 的方式在只读 PostgreSQL 事务中运行,每次 SELECT 查询后提交。

简单的 WHERE 子句,如=,!=,>,>=,
页: [1]
查看完整版本: ClickHouse(20)ClickHouse集成PostgreSQL表引擎详细解析