*ps: Este tutorial foi testado com o sistema operacional Ubuntu 16.04 e 14.04. Caso deseje configurar em uma versão mais antiga, recente ou em outro SO, pequenas mudanças podem ocorrer nos procedimentos apresentados.
O projeto Apache Hadoop é um software de código aberto mantido pela Apache Foundation que tem como propósito fornecer uma implementação de código aberto do modelo de programação MapReduce de forma confiável e escalável. O Hadoop é projetado para ampliar o processamento de um único servidor em milhares de máquinas, onde cada uma das máquinas oferecem poder de processamento e armazenamento local. Esta ferramenta é utilizada para processamento em batch de grandes volumes de dados (Big Data). Atualmente, o Apache Hadoop é uma das ferramentas mais conhecidas para processamento distribuído, mas existem outras ferramentas similares que se integram ao Hadoop, como o Apache Spark, Apache Storm e dentre outros.
*ps: para mais informações a respeito do Apache Hadoop acessem o site http://hadoop.apache.org/
Neste tutorial você irá aprender a utilizar alguns comandos básicos do Apache Hadoop. Além disso, será mostrado como gerenciar arquivos no sistema de arquivos Hadoop Distributed File System (HDFS).
O Apache Hadoop fornece por padrão alguns scripts para o gerenciamento das instâncias da ferramenta. O diretório padrão onde se encontram os scripts é o hadoop/sbin
.
Observa-se que na pasta hadoop/sbin
encontra-se os seguintes scripts que inclui sua versão para sistemas bash (Linux e MacOS) como também para o prompt de comando do sistema operacional MS Windows.
Por comodidade é mais prático configurarmos este diretório no arquivo ~/.bashrc
ou no /etc/profile
. Para isso devemos especificar o caminho hadoop/sbin
no Path do sistema, adicionando o seguinte comando.
Os comandos básicos mais utilizados é o de iniciar o sistema de arquivos HDFS e do Hadoop YARN. Como por exemplo:
Existem alguns scripts deprecated neste diretório, mas que ainda funcionam perfeitamente com o Hadoop:
O Apache Hadoop fornece alguns arquivos binários onde podem ser realizadas algumas operações importantes. O diretório padrão onde se encontra os binários é o hadoop/bin
, nele você encontra os seguintes binários:
Por comodidade é mais prático configurarmos este diretório no arquivo ~/.bashrc
ou no /etc/profile
. Para isso devemos especificar o caminho hadoop/bin
no Path do sistema, adicionando o seguinte comando.
*ps: Não se esqueça de atualizar as variáveis de ambiente com o comando source ~/.bashrc
our /etc/profile
O comando mais utilizado é o HDFS, com ele é possível executar as rotinas MapReduce. Para executar um código MapReduce basta executar o seguinte comando:
Com o comando HDFS também é possível gerenciar os arquivos que estão no sistema de arquivos do Hadoop. A seguir e demonstrado alguns exemplos básicos de comando básicos no sistema de arquivos HDFS, note que todos os comando apresentados se assemelham ao comandos do bash.
*ps: Todos os comando iniciam com o prefixo hdfs dfs
, mas existe também a possibilidade de utilizar o comando depreciado hadoop fs
.
Criar um diretório:
Listar diretórios:
Fazer upload de um arquivo:
Fazer download de um arquivo:
Remover um arquivo:
Remover um diretório:
Renomear um arquivo:
Mover um arquivo:
Mover um diretório:
Mostrar o tamanho do arquivo em bytes:
Visualizar o conteúdo de um arquivo:
Agora você aprendeu alguns comandos básicos do Hadoop. Agora você já pode gerenciar arquivos no HDFS e aplicar algumas operações básicas :)
Material desenvolvido durante o meu Mestrado no Instituto de Ciências Matemáticas e de Computação da Universidade de São Paulo (ICMC-USP). Além disso, faço um agradecimento em especial ao Laboratório de Sistemas Distribuídos e Programação Concorrente (LaSDPC), o qual faço parte que me permitiu a criação deste material. Por fim, informo que é permitido livremente a reprodução integral deste material desde que sejam feitas as devidas referências ao autor ;)
[1] Apache Foundation. Hadoop: Apache Hadoop. Acessado em Agosto de 2016. Disponível em: http://hadoop.apache.org Dzone
[2] Dzone/Big Data Zone. Top 10 Hadoop Shell Commands to Manage HDFS. Acessado em Outubro de 2016. Disponível em https://dzone.com/articles/top-10-hadoop-shell-commands