Habilidades cc-skill-clickhouse-io
📦

cc-skill-clickhouse-io

Seguro

Domina Analítica ClickHouse y Optimización de Consultas

¿Luchas con consultas analíticas lentas en grandes conjuntos de datos? Aprende patrones específicos de ClickHouse para almacenamiento orientado a columnas, optimización de consultas y agregaciones en tiempo real para lograr analítica de alto rendimiento.

Soporta: Claude Codex Code(CC)
📊 70 Adecuado
1

Descargar el ZIP de la skill

2

Subir en Claude

Ve a Configuración → Capacidades → Skills → Subir skill

3

Activa y empieza a usar

Pruébalo

Usando "cc-skill-clickhouse-io". Crear una tabla para estadísticas de mercado por hora

Resultado esperado:

CREATE TABLE market_stats_hourly (hour DateTime, market_id String, total_volume AggregateFunction(sum, UInt64), total_trades AggregateFunction(count, UInt32), unique_users AggregateFunction(uniq, String)) ENGINE = AggregatingMergeTree() PARTITION BY toYYYYMM(hour) ORDER BY (hour, market_id)

Usando "cc-skill-clickhouse-io". Consultar usuarios activos diarios de los últimos 30 días

Resultado esperado:

SELECT toDate(timestamp) AS date, uniq(user_id) AS daily_active_users FROM events WHERE timestamp >= today() - INTERVAL 30 DAY GROUP BY date ORDER BY date

Usando "cc-skill-clickhouse-io". Calcular percentiles de tamaño de operación (mediana, p95, p99)

Resultado esperado:

SELECT quantile(0.50)(trade_size) AS median, quantile(0.95)(trade_size) AS p95, quantile(0.99)(trade_size) AS p99 FROM trades WHERE created_at >= now() - INTERVAL 1 HOUR

Auditoría de seguridad

Seguro
v1 • 2/25/2026

This skill is documentation-only containing SQL queries and TypeScript code examples for ClickHouse database operations. All 87 static analyzer findings are false positives: backticks are markdown code fences not shell execution, SQL aggregation functions (uniq, sum, countMerge) are not cryptographic algorithms, and system table queries are legitimate ClickHouse monitoring features. No executable code or security risks detected.

1
Archivos escaneados
437
Líneas analizadas
0
hallazgos
1
Auditorías totales
No se encontraron problemas de seguridad
Auditado por: claude

Puntuación de calidad

38
Arquitectura
90
Mantenibilidad
87
Contenido
23
Comunidad
100
Seguridad
100
Cumplimiento de la especificación

Lo que puedes crear

Ingeniero de Datos Construyendo Plataforma Analítica

Diseña y optimiza tablas ClickHouse para seguimiento de eventos de alto volumen y analítica de usuario con vistas materializadas para dashboards en tiempo real.

Analista Realizando Análisis de Cohortes

Ejecuta análisis de retención, seguimiento de conversión de embudos y consultas de series temporales en grandes conjuntos de datos usando funciones de agregación específicas de ClickHouse.

Desarrollador Integrando Métricas en Tiempo Real

Implementa ingesta de datos en streaming y pipelines ETL automatizados para sincronizar datos transaccionales desde PostgreSQL hacia ClickHouse para cargas de trabajo analíticas.

Prueba estos prompts

Principiante: Crear una Tabla Analítica Básica
Ayúdame a crear una tabla ClickHouse para almacenar datos de mercado diarios con columnas para fecha, market_id, volumen y conteo de operaciones. Usa el motor y estrategia de particionamiento apropiados para consultas basadas en tiempo.
Intermedio: Optimizar una Consulta Lenta
Mi consulta ClickHouse filtrando por market_name y volume es lenta en una tabla con 100M de filas. La tabla está ordenada por (date, market_id). Sugiere optimizaciones y explica cómo reestructurar la tabla o consulta para mejor rendimiento.
Avanzado: Diseñar Backend de Dashboard en Tiempo Real
Diseña un esquema ClickHouse con vistas materializadas para powering un dashboard de trading en tiempo real mostrando volumen por hora, conteo de operaciones y traders únicos por mercado. Incluye la tabla base, definición de vista materializada y consultas de muestra para el dashboard.
Experto: Implementar Análisis de Retención de Usuarios
Crea una consulta ClickHouse para calcular cohortes de retención de usuarios por mes de registro, mostrando usuarios activos en el día 0, día 1, día 7 y día 30 después del registro. Usa una tabla de eventos con columnas user_id y timestamp.

Mejores prácticas

  • Particiona tablas por tiempo (mes o día) usando columnas DATE o DateTime para optimizar consultas de rangos temporales
  • Ordena claves por columnas filtradas más frecuentemente con mayor cardinalidad primero para maximizar uso de índices
  • Usa inserciones en lote en lugar de inserciones de filas individuales para mejorar significativamente el rendimiento de ingesta

Evitar

  • Usar SELECT * en lugar de especificar columnas - aumenta E/S y uso de memoria innecesariamente
  • Realizar inserciones pequeñas y frecuentes en lugar de hacer lotes - causa operaciones de fusión excesivas y degrada el rendimiento
  • Depender de la cláusula FINAL en consultas - fuerza la fusión de datos antes de la ejecución de la consulta, ralentizando significativamente las lecturas

Preguntas frecuentes

¿Cuál es la diferencia entre los motores MergeTree y ReplacingMergeTree?
MergeTree es el motor de propósito general para la mayoría de casos de uso. ReplacingMergeTree deduplica automáticamente filas con la misma clave primaria durante fusiones, útil al ingerir datos desde múltiples fuentes que pueden producir duplicados.
¿Cómo funcionan las vistas materializadas en ClickHouse?
Las vistas materializadas procesan automáticamente operaciones INSERT en tablas origen y poblan tablas destino con datos transformados o agregados. Habilitan agregaciones en tiempo real sin trabajos ETL manuales.
¿Cuál es el tamaño de lote óptimo para insertar datos?
Apunta a lotes de 10,000 a 100,000 filas o 10-100 MB por inserción. Evita insertar más frecuentemente que una vez por segundo por tabla para prevención creación excesiva de particiones.
¿Cuándo debo usar AggregatingMergeTree?
Usa AggregatingMergeTree cuando necesites almacenar agregaciones precomputadas que pueden fusionarse después. Requiere tipos de datos AggregateFunction y funciones state/merge pero provee consultas rápidas de métricas agregadas.
¿Cómo puedo monitorear consultas lentas en ClickHouse?
Consulta la tabla system.query_log filtrando por query_duration_ms y type='QueryFinish'. Esto muestra tiempo de ejecución, filas leídas, bytes leídos y uso de memoria para consultas completadas.
¿ClickHouse soporta transacciones?
ClickHouse no soporta transacciones ACID tradicionales. Está optimizado para cargas de trabajo analíticas con operaciones de append intensivas. Usa operaciones INSERT atómicas y diseña esquemas para manejar consistencia eventual.

Detalles del desarrollador

Estructura de archivos

📄 SKILL.md