Repolode
ClickHouse

ClickHouse/ClickBench

Uma suíte de benchmark reproduzível para bancos de dados analíticos, que usa um conjunto de dados de analytics da web e 43 consultas SQL padrão para comparar sistemas.

Estrelas
1,157
Forks
331
Issues abertas
50
Último commit
há 22 horas

O que é?

ClickBench é um benchmark para bancos de dados analíticos (OLAP). Ele executa um conjunto fixo de 43 consultas SQL em uma única tabela plana com cerca de 100 milhões de registros anonimizados de analytics da web. As consultas abrangem análise de clickstream, analytics ad hoc e consultas para dashboards em tempo real. Cada sistema é testado por meio de um shell script que instala o software, carrega os dados, executa cada consulta três vezes e registra o tempo de carga, o tamanho dos dados e os tempos de execução das consultas.

Os objetivos declarados do projeto são permitir a reprodução dos testes em VMs de nuvem econômicas, abranger uma ampla variedade de sistemas — de engines OLAP autogerenciadas e bancos de dados OLTP a serviços gerenciados e serverless — e oferecer realismo por meio de distribuições de dados derivadas de ambientes de produção. Os resultados são publicados em um dashboard web, no qual é possível filtrar sistemas e consultas e calcular pontuações resumidas usando razões de média geométrica. O repositório inclui os scripts de teste, as definições das tabelas e os arquivos de consulta de cada sistema, além dos arquivos JSON com os resultados brutos.

O benchmark tem algumas limitações: usa uma única tabela plana, é executado principalmente em configurações de nó único e roda as consultas em sequência, sem concorrência. Os autores ressaltam que os resultados devem ser interpretados com cautela.

Recursos principais

  • 01Executa 43 consultas SQL padrão que abrangem varreduras completas, varreduras com filtros, buscas em índices e operações relacionais comuns.
  • 02Oferece um fluxo automatizado com shell script para instalar, carregar dados, executar consultas e medir cada sistema.
  • 03Disponibiliza o conjunto de dados nos formatos CSV, TSV, JSON Lines e Parquet.
  • 04Informa o tempo de carga, o tamanho do armazenamento e os tempos de execução das consultas em condições cold e hot para cada sistema.
  • 05Inclui um dashboard web para filtrar sistemas e consultas e calcular pontuações resumidas.
  • 06Abrange bancos de dados autogerenciados, gerenciados, serverless e alguns NoSQL ou de séries temporais.

Casos de uso

  • Comparar bancos de dados analíticos candidatos usando uma carga de trabalho realista, no estilo de analytics da web, antes de escolher um.
  • Reproduzir os resultados do benchmark na sua própria VM de nuvem para validar alegações de desempenho.
  • Adicionar um novo banco de dados à suíte para medir seu tempo de carga, tamanho de armazenamento e velocidade das consultas.
  • Analisar como a compressão, a indexação e a execução de consultas de um banco de dados se comportam com dados semelhantes aos de produção.

Início rápido

  1. 1

    Consulte os resultados de benchmark publicados no site do ClickBench

  2. 2

    Copie um diretório de sistema existente para adicionar um novo sistema ou configuração

  3. 3

    Execute o script benchmark.sh em uma VM recém-instalada com Ubuntu 24.04 ou superior

  4. 4

    Se quiser, gere novamente o index.html a partir dos resultados

    ./generate-results.sh

Antes de usar

  • O conjunto de dados é uma única tabela plana, o que pode desfavorecer data warehouses normalizados.
  • A maioria dos resultados publicados vem de configurações de nó único, então o desempenho distribuído é menos abordado.
  • As consultas são executadas uma após a outra, portanto a simultaneidade e a capacidade do sistema não são medidas.
  • Os metadados não identificam claramente a licença do projeto.

Em coleções

Tópicos

Perguntas frequentes

O que é ClickBench?
Uma suíte de benchmark reproduzível para bancos de dados analíticos, que usa um conjunto de dados de analytics da web e 43 consultas SQL padrão para comparar sistemas. ClickBench é um benchmark para bancos de dados analíticos (OLAP). Ele executa um conjunto fixo de 43 consultas SQL em uma única tabela plana com cerca de 100 milhões de registros anonimizados de analytics da web. As consultas abrangem análise de clickstream, analytics ad hoc e consultas para dashboards em tempo real. Cada sistema é testado por meio de um shell script que instala o software, carrega os dados, executa cada consulta três vezes e registra o tempo de carga, o tamanho dos dados e os tempos de execução das consultas.
ClickBench é gratuito? Qual é a licença?
ClickBench é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
ClickBench ainda é mantido?
Manutenção ativa. O último commit de ClickBench foi em 6 de nov. de 2026.
Para que posso usar ClickBench?
Comparar bancos de dados analíticos candidatos usando uma carga de trabalho realista, no estilo de analytics da web, antes de escolher um. Reproduzir os resultados do benchmark na sua própria VM de nuvem para validar alegações de desempenho. Adicionar um novo banco de dados à suíte para medir seu tempo de carga, tamanho de armazenamento e velocidade das consultas. Analisar como a compressão, a indexação e a execução de consultas de um banco de dados se comportam com dados semelhantes aos de produção.
Como instalar ClickBench?
Consulte os resultados de benchmark publicados no site do ClickBench Copie um diretório de sistema existente para adicionar um novo sistema ou configuração Execute o script benchmark.sh em uma VM recém-instalada com Ubuntu 24.04 ou superior Se quiser, gere novamente o index.html a partir dos resultados: ./generate-results.sh
Onde consigo ClickBench?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/ClickHouse/ClickBench

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados

Plataforma open source de dados de eventos e alternativa ao Segment que pode ser hospedada por você, coleta eventos e os encaminha para data warehouses e ferramentas SaaS.

Dados e análise#event-tracking#data-pipeline#data-ingestion
5,1 mil+7 esta semana405TypeScriptMITAtualizado ontem