Crie um cluster do Hadoop
É possível usar o Dataproc para criar uma ou mais instâncias do Compute Engine capazes de se conectar a uma instância do Bigtable e executar jobs do Hadoop. Nesta página, explicamos como usar o Dataproc para automatizar as seguintes tarefas:
- instalação do Hadoop e o cliente HBase para Java
- Como configurar o Hadoop e o Bigtable
- Definição dos escopos corretos de autorização para o Bigtable
Após criar um cluster do Dataproc, use-o para executar jobs do Hadoop que leem e gravam dados no Bigtable.
Para compreender melhor as instruções desta página, você precisa estar familiarizado com o Hadoop. Para mais informações sobre o Dataproc, consulte a documentação do Dataproc.
Antes de começar
Antes de começar, você precisará concluir as seguintes tarefas:
- Crie uma instância do Bigtable. Anote o ID do projeto e o ID da instância do Bigtable.
-
Enable the Cloud Bigtable API, Cloud Bigtable Admin API, Dataproc, and Cloud Storage JSON APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. - Verifique se sua conta de usuário tem um papel que inclui a permissão
storage.objects.get
.Abra a página do IAM no console Google Cloud .
- Instale a Google Cloud CLI. Consulte as instruções de configuração da CLI para mais detalhes.
-
Instale o Apache Maven, usado para executar um job do Hadoop de amostra.
No Debian GNU/Linux ou Ubuntu, execute o seguinte comando:
sudo apt-get install maven
No RedHat Enterprise Linux ou CentOS, execute o seguinte comando:
sudo yum install maven
No macOS, instale o Homebrew e execute o seguinte comando:
brew install maven
- Clone o repositório do GitHub
GoogleCloudPlatform/cloud-bigtable-examples,
que contém um exemplo de um job do Hadoop que usa o Bigtable:
git clone https://github.com/GoogleCloudPlatform/cloud-bigtable-examples.git
crie um bucket do Cloud Storage
O Dataproc usa um bucket do Cloud Storage para armazenar arquivos temporários. Para evitar conflitos de nomes de arquivos, crie um novo bucket para o Dataproc.
Os nomes de buckets do Cloud Storage precisam ser globalmente exclusivos. Escolha um nome de bucket que provavelmente esteja disponível, por exemplo, um que incorpore o nome do seu projeto Google Cloud .
Após escolher um nome, use o comando abaixo para criar um bucket novo, substituindo os valores entre colchetes pelos valores apropriados:
gcloud storage buckets create gs://[BUCKET_NAME] --project=[PROJECT_ID]
Criar o cluster do Dataproc
Execute o seguinte comando para criar um cluster do Dataproc com quatro nós de trabalho, substituindo os valores entre colchetes pelos valores apropriados:
gcloud dataproc clusters create [DATAPROC_CLUSTER_NAME] --bucket [BUCKET_NAME] \
--region [region] --num-workers 4 --master-machine-type n1-standard-4 \
--worker-machine-type n1-standard-4
Consulte a documentação de gcloud dataproc clusters create
para conhecer as outras configurações que se pode definir. Se você receber uma mensagem de erro que inclua o texto Insufficient 'CPUS' quota
, tente configurar a sinalização --num-workers
com um valor mais baixo.
Testar o cluster do Dataproc
Depois de configurar seu cluster do Dataproc, teste o cluster executando um exemplo de job do Hadoop que conta o número de vezes que uma palavra aparece em um arquivo de texto. O exemplo de job usa o Bigtable para armazenar os resultados da operação. Use essa amostra como referência ao configurar seus próprios jobs do Hadoop.
Executar o job de amostra do Hadoop
- No diretório em que você clonou o repositório do GitHub, passe para o diretório
java/dataproc-wordcount
. Execute o comando abaixo para criar o projeto, substituindo os valores entre colchetes pelos valores apropriados:
mvn clean package -Dbigtable.projectID=[PROJECT_ID] \ -Dbigtable.instanceID=[BIGTABLE_INSTANCE_ID]
Execute o comando abaixo para iniciar o job do Hadoop, substituindo os valores entre colchetes pelos valores apropriados:
./cluster.sh start [DATAPROC_CLUSTER_NAME]
Quando o job é concluído, ele exibe o nome da tabela de saída, que é a palavra WordCount
seguida por um hífen e um número exclusivo:
Output table is: WordCount-1234567890
Verificar os resultados do job do Hadoop
Após executar o job do Hadoop, você também pode usar a
CLI cbt
para
verificar se ele foi executado com êxito:
-
Abra uma janela de terminal no Cloud Shell.
- Instale a
CLI
cbt
:gcloud components update
gcloud components install cbt
- Verifique a tabela de saída para visualizar os resultados do job do Hadoop, substituindo
[TABLE_NAME]
pelo nome da tabela de saída:cbt -instance [BIGTABLE_INSTANCE_ID] read [TABLE_NAME]
Após confirmar que o cluster foi configurado corretamente, use-o para executar seus próprios jobs do Hadoop.
Exclua o cluster do Dataproc
Quando terminar de usar o cluster do Dataproc, execute o seguinte comando para encerrar e excluir o cluster, substituindo [DATAPROC_CLUSTER_NAME]
pelo nome do cluster do Dataproc:
gcloud dataproc clusters delete [DATAPROC_CLUSTER_NAME]
A seguir
- Saiba mais sobre o Dataproc.
- Primeiros passos com o cliente HBase para Java.