Introducción
Primeros pasos
Caso de prueba: TPC-H
| Consulta | PostgreSQL | pg_clickhouse | Pushdown |
|---|---|---|---|
| [Consulta 1] | 4693 ms | 268 ms | ✔︎ |
| [Consulta 2] | 458 ms | 3446 ms | |
| [Consulta 3] | 742 ms | 111 ms | ✔︎ |
| [Consulta 4] | 270 ms | 130 ms | ✔︎ |
| [Consulta 5] | 337 ms | 1460 ms | ✔︎ |
| [Consulta 6] | 764 ms | 53 ms | ✔︎ |
| [Consulta 7] | 619 ms | 96 ms | ✔︎ |
| [Consulta 8] | 342 ms | 156 ms | ✔︎ |
| [Consulta 9] | 3094 ms | 298 ms | ✔︎ |
| [Consulta 10] | 581 ms | 197 ms | ✔︎ |
| [Consulta 11] | 212 ms | 24 ms | |
| [Consulta 12] | 1116 ms | 84 ms | ✔︎ |
| [Consulta 13] | 958 ms | 1368 ms | |
| [Consulta 14] | 181 ms | 73 ms | ✔︎ |
| [Consulta 15] | 1118 ms | 557 ms | |
| [Consulta 16] | 497 ms | 1714 ms | |
| [Consulta 17] | 1846 ms | 32709 ms | |
| [Consulta 18] | 5823 ms | 10649 ms | |
| [Consulta 19] | 53 ms | 206 ms | ✔︎ |
| [Consulta 20] | 421 ms | - | |
| [Consulta 21] | 1349 ms | 4434 ms | |
| [Consulta 22] | 258 ms | 1415 ms |
Compilar a partir del código fuente
Unix en general
pg_config y
curl-config en el PATH, por lo que debería bastar con ejecutar make (o
gmake), luego make install y, después, en tu base de datos
CREATE EXTENSION pg_clickhouse.
Debian / Ubuntu / APT
RedHat / CentOS / Yum
Instalar desde PGXN
pgxnclient) para descargar, compilar
e instalar pg_clickhouse:
Compilar e instalar
pg_clickhouse, ejecute:
pg_config:
curl-config no está en el PATH de su host, puede especificar la ruta
explícitamente:
gmake:
pg_config esté instalado y disponible en tu path. Si usaste un
sistema de gestión de paquetes como RPM para instalar PostgreSQL, asegúrate de que el
paquete -devel también esté instalado. Si es necesario, indícale al proceso de compilación dónde
encontrarlo:
prefix a install (pero no a ningún otro objetivo de make):
postgresql.conf
parámetros]:
Pruebas
Carga
pg_clickhouse, puede añadirlo a una base de datos conectándose
como superusuario y ejecutando:
pg_clickhouse y todos sus objetos de soporte en
un esquema específico, utiliza la cláusula SCHEMA para especificar el esquema, así:
Dependencias
pg_clickhouse requiere PostgreSQL 13 o superior, libcurl
y libuuid. Para compilar la extensión se necesita un compilador de C y C++, libSSL, GNU
make y CMake.
Hoja de ruta
- Lograr una planificación óptima para las 10 consultas TPC-H restantes sin pushdown
- Probar y corregir el pushdown para las consultas de ClickBench
- Admitir el pushdown transparente de todas las funciones de agregación de PostgreSQL
- Admitir el pushdown transparente de todas las funciones de PostgreSQL
- Permitir ajustes de ClickHouse a nivel de servidor y de sesión mediante CREATE SERVER y GUCs
- Admitir todos los tipos de datos de ClickHouse
- Admitir eliminaciones ligeras y UPDATEs
- Admitir inserción por lotes mediante COPY
- Añadir una función para ejecutar una consulta arbitraria de ClickHouse y devolver sus resultados en forma de tabla
- Añadir compatibilidad con el pushdown de consultas UNION cuando todas consulten la base de datos remota
Derechos de autor
- Copyright (c) 2025-2026, ClickHouse
- Partes con Copyright (c) 2023-2025, Ildus Kurbangaliev
- Partes con Copyright (c) 2019-2023, Adjust GmbH
- Partes con Copyright (c) 2012-2019, PostgreSQL Global Development Group