BT

Apache Drill: Big Data interativo

por Marcelo Costa em 31 Out 2012 |

O Apache Drill é um sistema distribuído para análise interativa de Big Data baseado no Google Dremel (o Dremel está disponível como serviço  Google IaaS BigQuery desde 2006). O objetivo do Drill é processar eficientemente grandes conjuntos de dados, escalar para milhares de servidores e processar petabyes de dados e bilhões de registros em segundos. O projeto foi aceito para incubação na Apache Software Foundation em agosto de 2012, e está sendo reprojetado para o máximo de flexibilidade quanto às linguagens de consultas suportadas.

O Drill não é uma tentativa de substituir as estruturas de processamento em lotes de Big Data existentes, como o Hadoop MapReduce. Também não pretende substituir mecanismos de processamento em stream, como S4 ou Storm. O novo projeto da Apache procura preencher um vazio existente - no processamento em tempo real e interativo de grandes conjuntos de dados.

Arquitetura

O Drill é composto por três principais elementos:

● Uma camada de linguagem de consulta, com um analisador, um planejador de execução e um mecanismo de execução de baixa latência para uso do planejador. É usada uma linguagem de consulta própria, chamada DrQL;

● Um agregador de dados para armazenamento;

● Uma camada de fonte de dados escalável.

Segundo os desenvolvedores, a ideia é que o projeto passe a armazenar seus dados no Hadoop, sendo oferecido suporte ao seu sistema de arquivos, e também no HBase. Além disso, o Drill deve suportar os formatos de dados do Hadoop. A imagem abaixo (retirada do wiki do projeto), descreve o fluxo de dados a ser utilizado pelo Drill, com base na arquitetura do Dremel.

Fluxo de Dados do Apache Drill

De forma semelhante ao Dremel, a implementação do Drill é baseada no processamento de dados agrupados em estrutura de árvore, enquanto que no Dremel a informação é baseada em buffers de protocolo. A equipe do Drill planeja estender seu modelo de dados, adicionando implementações baseadas em esquemas, por exemplo o Apache Avro, além de outros modelos de dados como JSON e BSON.

Contexto e futuro

Um dos objetivos do Drill é complementar o Map-Reduce, adicionando novas funcionalidades de computação em tempo real. Os tipos de cálculos necessários para essa tarefa podem produzir tabelas simples, adequadas ao tipo de análises exploratórias, que são o forte do Drill.

Atualmente, sistemas como o Hadoop compilam suas tarefas utilizando linguagens de alto nível (ex.: HiveQL e Pig Latin) em tarefas MapReduce. Uma vez que o Drill esteja disponível, esses sistemas podem fazer uso do novo projeto como mecanismo de execução básico, de baixa latência, permitindo consultas interativas em bilhões de registros.

Mais sobre o Drill pode ser visto na página do projeto, que possui um wiki - ou no site da MapR, empresa responsável por administrar o projeto.

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão
Comentários da comunidade

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Dê sua opinião
Feedback geral
Bugs
Publicidade
Editorial
Marketing
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2016 C4Media Inc.
Política de privacidade
BT

We notice you’re using an ad blocker

We understand why you use ad blockers. However to keep InfoQ free we need your support. InfoQ will not provide your data to third parties without individual opt-in consent. We only work with advertisers relevant to our readers. Please consider whitelisting us.