简介
快速开始
测试用例:TPC-H
| 查询 | PostgreSQL | pg_clickhouse | 下推 |
|---|---|---|---|
| [查询 1] | 4693 ms | 268 ms | ✔︎ |
| [查询 2] | 458 ms | 3446 ms | |
| [查询 3] | 742 ms | 111 ms | ✔︎ |
| [查询 4] | 270 ms | 130 ms | ✔︎ |
| [查询 5] | 337 ms | 1460 ms | ✔︎ |
| [查询 6] | 764 ms | 53 ms | ✔︎ |
| [查询 7] | 619 ms | 96 ms | ✔︎ |
| [查询 8] | 342 ms | 156 ms | ✔︎ |
| [查询 9] | 3094 ms | 298 ms | ✔︎ |
| [查询 10] | 581 ms | 197 ms | ✔︎ |
| [查询 11] | 212 ms | 24 ms | |
| [查询 12] | 1116 ms | 84 ms | ✔︎ |
| [查询 13] | 958 ms | 1368 ms | |
| [查询 14] | 181 ms | 73 ms | ✔︎ |
| [查询 15] | 1118 ms | 557 ms | |
| [查询 16] | 497 ms | 1714 ms | |
| [查询 17] | 1846 ms | 32709 ms | |
| [查询 18] | 5823 ms | 10649 ms | |
| [查询 19] | 53 ms | 206 ms | ✔︎ |
| [查询 20] | 421 ms | - | |
| [查询 21] | 1349 ms | 4434 ms | |
| [查询 22] | 258 ms | 1415 ms |
从源码编译
通用 Unix
pg_config 和
curl-config 放在 path 中,因此你应该可以直接运行 make (或
gmake) ,然后执行 make install,接着在你的 database 中执行
CREATE EXTENSION pg_clickhouse。
Debian / Ubuntu / APT
RedHat / CentOS / Yum
通过 PGXN 安装
pgxnclient 的 Yum 软件包安装) 下载、编译
并安装 pg_clickhouse:
编译并安装
pg_clickhouse,请运行:
pg_config:
curl-config,可以显式指定其路径:
gmake 的名称安装的:
pg_config,并且它已在你的 path 中。如果你是通过
RPM 等包管理系统安装 PostgreSQL 的,请确保
-devel 包也已安装。如有必要,请告知构建过程应在哪里找到它:
prefix 参数传递给 install (但不要传给其他 make 目标) :
postgresql.conf
参数]中包含该前缀:
测试
加载
pg_clickhouse 后,使用超级用户连接到数据库,并运行以下命令即可将其添加到数据库中:
pg_clickhouse 及其所有相关对象安装到
某个特定的 schema 中,可以使用 SCHEMA 子句来指定该 schema,例如:
依赖项
pg_clickhouse 扩展需要 PostgreSQL 13 或更高版本、libcurl
以及 libuuid。构建该扩展还需要 C 和 C++ 编译器、libSSL、GNU
make 和 CMake。
路线图
- 让其余 10 个尚未下推的 TPC-H 查询获得最优规划
- 测试并修复 ClickBench 查询的下推
- 支持对所有 PostgreSQL 聚合函数进行透明下推
- 支持对所有 PostgreSQL 函数进行透明下推
- 允许通过 CREATE SERVER 和 GUCs 设置服务器级和会话级 ClickHouse 设置
- 支持所有 ClickHouse 数据类型
- 支持轻量级 DELETE 和 UPDATE
- 支持通过 COPY 进行批次插入
- 添加一个函数,用于执行任意 ClickHouse 查询,并将其 结果以表的形式返回
- 当 UNION 查询都针对远程数据库时,增加对其下推的支持
版权
- Copyright (c) 2025-2026, ClickHouse
- 部分版权归 Ildus Kurbangaliev 所有 (c) 2023-2025
- 部分版权归 Adjust GmbH 所有 (c) 2019-2023
- 部分版权归 PostgreSQL Global Development Group 所有 (c) 2012-2019