Em meados dos anos 2000, os analistas do Google conseguiam executar cálculos enormes com o MapReduce, mas cada job levava de minutos a horas — lento demais para explorar dados de forma interativa. Os engenheiros queriam a velocidade da busca na web para perguntas no estilo de banco de dados sobre petabytes.
O Dremel, em produção desde 2006, combinava duas ideias: armazenamento em colunas que codifica registros aninhados de modo que uma consulta leia apenas os campos de que precisa, e uma árvore de atendimento multinível que distribui uma consulta para milhares de nós e agrega as respostas. O artigo da VLDB de 2010 relata varreduras de tabelas de 85 bilhões de registros em clusters de 3.000 nós, com a maioria das consultas terminando em menos de 10 segundos.
O Google lançou a tecnologia como BigQuery na conferência I/O em maio de 2010, adicionou uma GUI e uma API REST em novembro de 2011 e a tornou disponível de forma geral em maio de 2012 — anunciada como forma de permitir que usuários analisassem terabytes de dados sem comprar hardware.
Armazenar dados por coluna; responder em segundos
O layout colunar reduz os bytes lidos: uma consulta toca apenas os campos necessários.
A execução em árvore paraleliza em milhares de máquinas de uso geral.
Consultas nativas semelhantes a SQL substituem pipelines MapReduce de várias etapas.
O acesso in-situ lê dados diretamente do GFS ou do Bigtable, sem etapa de carregamento.
Organize os dados em torno das perguntas que você fará, não da forma como foram gravados: ler apenas as colunas necessárias e empurrar o trabalho por uma árvore transforma jobs que levavam um lote em consultas que cabem em uma reunião.
O BigQuery se tornou um dos principais data warehouses em nuvem, usado por milhares de empresas, e o formato colunar do Dremel influenciou sistemas posteriores como o Apache Parquet. O artigo continua sendo um dos trabalhos mais citados em sistemas de big data.
CONFIRA AS EVIDÊNCIAS
As fontes
- Dremel: Interactive Analysis of Web-Scale Datasets Proceedings of the VLDB Endowment · comp.nus.edu.sg
- Google opens BigQuery cloud analytics to all ZDNet · zdnet.com ·
- Big Data Analysis Field Expands with Launch of Google BigQuery Database Trends and Applications · dbta.com ·