O Amazon Elastic MapReduce (Amazon EMR) é um serviço da web que permite processar vastas quantidades de dados facilmente, rapidamente e com um bom custo benefício.

O Amazon EMR usa Hadoop, uma estrutura de código aberto, para distribuir os dados e processá-los em um cluster redimensionável de instâncias do Amazon EC2. O Amazon EMR é usado em diversos aplicativos, incluindo análises de registros, indexação da web, armazenamento de dados, aprendizagem automática, análises financeiras, simulações científicas e bioinformática. Os clientes executam milhões de clusters do Amazon EMR a cada ano.


É possível iniciar um cluster Amazon EMR em minutos. Você não precisa se preocupar com o provisionamento de nós, configuração de cluster, configuração do Hadoop ou ajustar o cluster. O Amazon EMR cuida dessas tarefas para que você se concentre na análise.

Com o Amazon EMR, você pode provisionar uma, centenas ou até mesmo milhares de instâncias de computação para processar dados em qualquer escala. Você pode facilmente aumentar ou diminuir o número de instâncias e pagar somente pelo que usar.

Você pode iniciar um cluster Hadoop de 10 nós pelo preço de 0,15 USD por hora. Como o Amazon EMR tem suporte nativo para instâncias spot e reservadas do Amazon EC2, é possível economizar de 50 a 80% nos custos de instâncias subjacentes.

Você pode gastar menos tempo ajustando e monitorando seu cluster. O Amazon EMR ajustou o Hadoop para a nuvem; ele também monitora seu cluster, tentando novamente as tarefas que falharam e substituindo automaticamente instâncias com desempenho ruim.

O Amazon EMR configura automaticamente as configurações de firewall do Amazon EC2 que controlam o acesso via rede para as instâncias, e você pode executar clusters em uma Amazon Virtual Private Cloud (VPC), uma rede lógica isolada definida por você.

Você tem controle total sobre seu cluster. Você tem acesso a cada instância, de forma que pode facilmente instalar aplicativos adicionais e personalizar todos os clusters. O Amazon EMR também é compatível com várias distribuições e aplicativos do Hadoop.

O Amazon EMR pode ser usado para analisar dados de fluxos de cliques para segmentar usuários e entender suas preferências. Os publicitários também pode analisar os fluxos de cliques e publicar registros de impressão para oferecer anúncios mais eficazes.

Saiba como o Razorfish usa o EMR para análise de stream de cliques »

O Amazon EMR pode ser usado para processar grandes quantidades de dados de genoma e outros conjuntos maciços de dados científicos de maneira rápida e eficaz. Os pesquisadores podem acessar dados de genoma hospedados gratuitamente na AWS.

Leia sobre o projeto 1000 Genomes e o AWS »

O Amazon EMR pode ser usado para processar logs gerados por aplicativos móveis e da web. O Amazon EMR ajuda os clientes a transformar petabytes de dados não estruturados ou semi-estruturados em percepções úteis sobre seus aplicativos e usuários.

Saiba como a Yelp usa o EMR para gerar os principais recursos do site »

Para usar o Amazon EMR, você simplesmente:

  1. Desenvolva seu aplicativo de processamento de dados. Você pode usar Java, Hive (uma linguagem similar a SQL), Pig (uma linguagem de processamento de dados), Cascading, Ruby, Perl, Python, R, PHP, C++ ou Node.js. O Amazon EMR oferece exemplos de código e tutoriais para que você comece rapidamente.
  2. Carregue seu aplicativo e dados no Amazon S3. Se você tem uma grande quantidade de dados para carregar, você pode considerar usar o AWS Import/Export (para carregar dados usando dispositivos de armazenamento físico) ou AWS Direct Connect (para estabelecer uma conexão de rede dedicada do seu datacenter para a AWS). Se preferir, você também pode gravar seus dados diretamente em um cluster em execução.
  3. Configure e lance seu cluster. Usando o AWS Management Console, Command Line Interface do EMR, SDKs ou APIs, especifique o número de instâncias do EC2 para provisão no seu cluster, os tipos de instância a suar (padrão, com mais memória, CPU de alto desempenho ou E/S de alto desempenho, etc.), os aplicativos para instalar (Hive, Pig, HBase, etc.) e o local dos seus aplicativos e dados. Você pode usar ações do bootstrap para instalar software adicional ou alterar configurações padrão.
  4. (Opcional) Monitore o cluster. Você pode monitorar a saúde e o progresso do cluster usando o Management Console, Command Line Interface, SDKs ou APIs. O EMR integra-se com o Amazon CloudWatch para monitorar/gerar alarmes e suporta ferramentas de monitoramento populares como a Ganglia. Você pode adicionar/remover capacidade para o cluster a qualquer momento para tratar de mais ou menos dados. Para solucionar problemas, você pode usar a GUI de depuração simples do console.
  5. Recupere a saída. Recupere a saída do Amazon S3 ou HDFS no cluster. Visualize os dados com ferramentas como Tableau e MicroStrategy. O Amazon EMR encerrará automaticamente o cluster quando o processamento estiver concluído. Alternativamente, você pode deixar o cluster em execução e dar a ele mais trabalho para fazer.

Você está pronto para executar o seu primeiro cluster? Clique aqui para ver o Tutorial de conceitos básicos. No tutorial, você criará um cluster que contará a frequência de palavras em um arquivo de texto de exemplo. Em apenas alguns minutos, seu cluster estará totalmente operacional.