Skills Agentes

Chdb Sql

Ejecuta SQL analítico con chDB, ClickHouse embebido en Python, sobre archivos locales, URLs, S3 o bases remotas (Postgres, MySQL, MongoDB, Iceberg, Delta Lake) sin servidor.

Oficial

Reemplaza a: Montar un servidor ClickHouse para consultas SQL analíticas, chdb-datastore para operaciones estilo pandas

Estrellas
536

en todo el repo

Actividad
45

0–100, la ruta de este skill

Actualizado
hace 4 meses

último commit aquí

Commits
0

últimos 90 días

Contexto
1.2k tok

217 tok en reposo

Paquete
8 archivos

40 KB

Instalar

Funciona con cualquier agente que lea SKILL.md

npx -y skills add ClickHouse/agent-skills --skill chdb-sql --agent claude-code

Se instala solo en este repositorio.

Qué hace

  • Ejecuta SQL de ClickHouse directamente en Python sin servidor, vía chdb.query()
  • Consulta archivos locales (parquet/csv/json), URLs, rutas S3 y bases remotas (Postgres, MySQL, MongoDB, ClickHouse Cloud, Iceberg, Delta Lake)
  • Permite pipelines multi-paso con estado usando Session, y consultas parametrizadas
  • Habilita joins entre fuentes distintas con funciones de tabla como s3(), mysql(), postgresql(), iceberg(), deltaLake(), remoteSecure()
  • Ofrece una conexión DB-API 2.0 vía chdb.connect()

Úsalo cuando

  • El usuario quiere ejecutar SQL analítico sobre archivos parquet/csv o fuentes remotas
  • Se usan funciones SQL avanzadas de ClickHouse (window functions, windowFunnel, geoToH3, JSON path ops)
  • Se necesita Session para consultas con estado o consultas parametrizadas
  • Se importa chdb o se llama a chdb.query() en Python

No lo uses cuando

  • Operaciones estilo pandas con DataFrame en cadena (usar el skill chdb-datastore)
  • Administración de servidor ClickHouse

Qué lo activa

Di cualquiera de estas frases y el agente debería cargar este skill.

  • “Quiero hacer una consulta SQL sobre un archivo parquet local sin montar un servidor”
  • “Cómo hago un JOIN entre una tabla de MySQL y un archivo parquet usando chdb”
  • “Necesito ejecutar SQL analítico sobre datos en S3 con ClickHouse embebido en Python”

SKILL.md

En inglés

chdb SQL — ClickHouse in Your Python Process

Run ClickHouse SQL directly in Python — no server needed. Query local files, remote databases, and cloud storage with full ClickHouse SQL power.

pip install chdb

Decision Tree: Pick the Right API

1. One-off query on files or databases → chdb.query()
2. Multi-step analysis with tables      → Session
3. DB-API 2.0 connection                → chdb.connect()
4. Pandas-style DataFrame operations    → Use chdb-datastore skill instead

chdb.query() — One Line, Any Data

import chdb

chdb.query("SELECT * FROM file('data.parquet', Parquet) WHERE price > 100 LIMIT 10")       # local files
chdb.query("SELECT * FROM mysql('db:3306', 'shop', 'orders', 'root', 'pass')")              # databases
chdb.query("SELECT * FROM s3('s3://bucket/data.parquet', NOSIGN) LIMIT 10")                 # cloud storage
chdb.query("SELECT * FROM deltaLake('s3://bucket/delta/table', NOSIGN) LIMIT 10")           # data lakes

# Cross-source join
chdb.query("""
    SELECT u.name, o.amount FROM mysql('db:3306', 'crm', 'users', 'root', 'pass') AS u
    JOIN file('orders.parquet', Parquet) AS o ON u.id = o.user_id ORDER BY o.amount DESC
""")

data = {"name": ["Alice", "Bob"], "score": [95, 87]}
chdb.query("SELECT * FROM Python(data) ORDER BY score DESC")                                # Python data
df = chdb.query("SELECT * FROM numbers(10)", "DataFrame")                                   # output formats
chdb.query("SELECT toDate({d:String}) + number FROM numbers({n:UInt64})",
    "DataFrame", params={"d": "2025-01-01", "n": 30})                                      # parametrized

Table functions → table-functions.md | SQL functions → sql-functions.md | Full API → api-reference.md

Session — Stateful Analysis Pipelines

from chdb import session as chs
sess = chs.Session("./analytics_db")   # persistent; Session() for in-memory

sess.query("CREATE TABLE users ENGINE=MergeTree() ORDER BY id AS SELECT * FROM mysql('db:3306','crm','users','root','pass')")
sess.query("CREATE TABLE events ENGINE=MergeTree() ORDER BY (ts,user_id) AS SELECT * FROM s3('s3://logs/events/*.parquet',NOSIGN)")
sess.query("""
    SELECT u.country, count() AS cnt, uniqExact(e.user_id) AS users
    FROM events e JOIN users u ON e.user_id = u.id
    WHERE e.ts >= today() - 7 GROUP BY u.country ORDER BY cnt DESC
""", "Pretty").show()
sess.close()

Connection API (DB-API 2.0)

from chdb import dbapi
conn = dbapi.connect()
cur = conn.cursor()
cur.execute("SELECT * FROM file('data.parquet', Parquet) WHERE value > 100")
print(cur.fetchall())
cur.close()
conn.close()

Troubleshooting

Problem Fix
ImportError: No module named 'chdb' pip install chdb
DB::Exception: FILE_NOT_FOUND Check file path; use absolute path or verify cwd
DB::Exception: Unknown table function Check function name spelling (e.g., deltaLake not deltalake)
Connection refused to remote DB Check host:port format; ensure remote DB allows connections
Environment check Run python scripts/verify_install.py (from skill directory)

References

Note: This skill teaches how to use chdb SQL. For pandas-style operations, use the chdb-datastore skill. For contributing to chdb source code, see CLAUDE.md in the project root.

Reproducido de ClickHouse/agent-skills bajo licencia Apache-2.0. Leer esta página en markdown.

Archivos

8 archivos en el paquete. Solo se lee SKILL.md al activarse — las referencias se cargan si el skill decide que las necesita.

Antes de instalar

Requiere Python 3.9+ en macOS o Linux, e instalar chdb con pip install chdb.

Necesita en el PATH:pip

Detalles

Creador
ClickHouse
Categoría
Bases de datos
Licencia
Apache-2.0
Recursos incluidos
scripts en python + referencias
Código fuente
Ver SKILL.md

Etiquetas

Más de ClickHouse/agent-skills

Este repo incluye 11 skills. Si instalas uno, normalmente ya tienes los demás. Ver el pack agent-skills entero y su comando de instalación

Genera código TypeScript/JavaScript que lee/decodifica y escribe/codifica streams RowBinary de ClickHouse para el servidor HTTP; solo para Node.js, no cubre navegadores.

Costo de contexto al activarse
1.3k tok
Tamaño del paquete
193 archivos
Última actualización
hace 2 meses
Oficialbases de datos

Configura y gestiona ClickHouse con la CLI clickhousectl: servidor local para desarrollo y servicios ClickHouse Cloud gestionados para producción, incluyendo auth, esquemas y conexión.

Costo de contexto al activarse
661 tok
Tamaño del paquete
5 archivos
Última actualización
hace 2 meses
Oficialbases de datos

Configura y gestiona Postgres con clickhousectl: Postgres local con Docker para desarrollo, o servicios Postgres gestionados en ClickHouse Cloud (conexiones, TLS, réplicas, failover, restauración).

Costo de contexto al activarse
664 tok
Tamaño del paquete
5 archivos
Última actualización
hace 2 meses
Oficialbases de datos

Conecta un colector OpenTelemetry a un servicio Managed ClickStack en ClickHouse Cloud, desplegando uno nuevo o configurando el existente, y envía telemetría sintética para verificarlo en ClickStack.

Costo de contexto al activarse
9.9k tok
Tamaño del paquete
2 archivos
Última actualización
hace 2 meses
Oficialdevops infraestructura

Escribe código idiomático para el cliente Node.js de ClickHouse (@clickhouse/client): configuración, ping, inserts, selects, parámetros, sesiones y tipos de datos. No usar para código de cliente Web/navegador.

Costo de contexto al activarse
2.8k tok
Tamaño del paquete
13 archivos
Última actualización
hace 3 meses
Oficialbases de datos

Soluciona problemas comunes del cliente Node.js de ClickHouse (@clickhouse/client): socket hang-up, Keep-Alive, streams, tipos de datos, TLS/proxy y timeouts.

Costo de contexto al activarse
1.3k tok
Tamaño del paquete
10 archivos
Última actualización
hace 3 meses
Oficialbases de datos

Skills relacionados

Úsalo obligatoriamente al diseñar arquitecturas ClickHouse, elegir patrones de ingesta o modelado, o traducir buenas prácticas en diseños específicos del workload.

Costo de contexto al activarse
791 tok
Tamaño del paquete
15 archivos
Última actualización
hace 4 meses
Oficialbases de datos

Úsalo obligatoriamente al revisar schemas, queries o configuraciones de ClickHouse: contiene 31 reglas que deben verificarse antes de dar recomendaciones.

Costo de contexto al activarse
2.6k tok
Tamaño del paquete
37 archivos
Última actualización
hace 4 meses
Oficialbases de datos

Escribe código idiomático para el cliente Node.js de ClickHouse (@clickhouse/client): configuración, ping, inserts, selects, parámetros, sesiones y tipos de datos. No usar para código de cliente Web/navegador.

Costo de contexto al activarse
2.8k tok
Tamaño del paquete
13 archivos
Última actualización
hace 3 meses
Oficialbases de datos