Repolode
ClickHouse

ClickHouse/ClickBench

Suite de benchmarks reproducibles para bases de datos analíticas, con un conjunto de datos de analítica web y 43 consultas SQL estándar para comparar sistemas.

Estrellas
1,157
Forks
331
Issues abiertos
50
Último commit
hace 24 horas

¿Qué es?

ClickBench es un benchmark para bases de datos analíticas (OLAP). Ejecuta un conjunto fijo de 43 consultas SQL sobre una única tabla plana con unos 100 millones de registros anonimizados de analítica web, que abarcan análisis de flujos de clics, análisis ad hoc y consultas para dashboards en tiempo real. Cada sistema se prueba mediante un script de shell que instala el software, carga los datos, ejecuta cada consulta tres veces y registra el tiempo de carga, el tamaño de los datos y los tiempos de ejecución de las consultas.

Los objetivos declarados del proyecto son ofrecer reproducibilidad en máquinas virtuales económicas en la nube, cubrir una amplia variedad de sistemas —desde motores OLAP autogestionados y bases de datos OLTP hasta servicios gestionados y serverless— y reflejar situaciones reales mediante distribuciones de datos derivadas de entornos de producción. Los resultados se publican en un dashboard web donde los usuarios pueden filtrar sistemas y consultas y calcular puntuaciones resumidas mediante cocientes de medias geométricas. El repositorio incluye los scripts de prueba, las definiciones de tablas y los archivos de consultas para cada sistema, así como los archivos JSON con los resultados sin procesar.

El benchmark tiene algunas limitaciones: usa una sola tabla plana, se ejecuta principalmente en configuraciones de un solo nodo y lanza las consultas secuencialmente, no en paralelo. Los autores señalan que los resultados deben interpretarse con cautela.

Funciones clave

  • 01Ejecuta 43 consultas SQL estándar que abarcan escaneos completos y filtrados, búsquedas mediante índices y operaciones relacionales comunes.
  • 02Ofrece un flujo de trabajo automatizado con scripts de shell para instalar, cargar datos, ejecutar consultas y medir cada sistema.
  • 03Publica el conjunto de datos en formatos CSV, TSV, JSON Lines y Parquet.
  • 04Informa del tiempo de carga, el tamaño de almacenamiento y los tiempos de ejecución de consultas en frío y en caliente para cada sistema.
  • 05Incluye un dashboard web para filtrar sistemas y consultas y calcular puntuaciones resumidas.
  • 06Incluye bases de datos autogestionadas, gestionadas y serverless, además de algunas NoSQL y de series temporales.

Casos de uso

  • Comparar bases de datos analíticas candidatas con una carga de trabajo realista de analítica web antes de elegir una.
  • Reproducir los resultados del benchmark en tu propia máquina virtual en la nube para validar afirmaciones de rendimiento.
  • Añadir una base de datos nueva a la suite para medir su tiempo de carga, tamaño de almacenamiento y velocidad de consulta.
  • Estudiar cómo se comportan la compresión, la indexación y la ejecución de consultas de una base de datos con datos similares a los de producción.

Inicio rápido

  1. 1

    Consulta los resultados de benchmarks publicados en el sitio web de ClickBench

  2. 2

    Copia un directorio de sistema existente para añadir un sistema o una configuración nuevos

  3. 3

    Ejecuta el script benchmark.sh en una VM recién instalada con Ubuntu 24.04 o posterior

  4. 4

    Si quieres, vuelve a generar index.html a partir de los resultados

    ./generate-results.sh

Antes de usarlo

  • El conjunto de datos es una única tabla plana, lo que puede perjudicar a los almacenes de datos normalizados.
  • La mayoría de los resultados publicados proceden de configuraciones de un solo nodo, por lo que el rendimiento distribuido está menos cubierto.
  • Las consultas se ejecutan una tras otra, así que no se miden la concurrencia ni la capacidad del sistema.
  • Los metadatos no identifican claramente la licencia del proyecto.

En colecciones

Temas

Preguntas frecuentes

¿Qué es ClickBench?
Suite de benchmarks reproducibles para bases de datos analíticas, con un conjunto de datos de analítica web y 43 consultas SQL estándar para comparar sistemas. ClickBench es un benchmark para bases de datos analíticas (OLAP). Ejecuta un conjunto fijo de 43 consultas SQL sobre una única tabla plana con unos 100 millones de registros anonimizados de analítica web, que abarcan análisis de flujos de clics, análisis ad hoc y consultas para dashboards en tiempo real. Cada sistema se prueba mediante un script de shell que instala el software, carga los datos, ejecuta cada consulta tres veces y registra el tiempo de carga, el tamaño de los datos y los tiempos de ejecución de las consultas.
¿ClickBench es gratuito? ¿Qué licencia tiene?
ClickBench es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿ClickBench sigue mantenido?
Mantenimiento activo. El último commit de ClickBench fue el 6 nov 2026.
¿Para qué puedo usar ClickBench?
Comparar bases de datos analíticas candidatas con una carga de trabajo realista de analítica web antes de elegir una. Reproducir los resultados del benchmark en tu propia máquina virtual en la nube para validar afirmaciones de rendimiento. Añadir una base de datos nueva a la suite para medir su tiempo de carga, tamaño de almacenamiento y velocidad de consulta. Estudiar cómo se comportan la compresión, la indexación y la ejecución de consultas de una base de datos con datos similares a los de producción.
¿Cómo se instala ClickBench?
Consulta los resultados de benchmarks publicados en el sitio web de ClickBench Copia un directorio de sistema existente para añadir un sistema o una configuración nuevos Ejecuta el script benchmark.sh en una VM recién instalada con Ubuntu 24.04 o posterior Si quieres, vuelve a generar index.html a partir de los resultados: ./generate-results.sh
¿Dónde consigo ClickBench?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/ClickHouse/ClickBench

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados

Plataforma de código abierto para datos de eventos y alternativa autohospedable a Segment que recopila eventos y los envía a almacenes de datos y herramientas SaaS.

Datos y analítica#event-tracking#data-pipeline#data-ingestion
5,1 mil+7 esta semana405TypeScriptMITActualizado ayer