

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Enviar um trabalho do Pig
<a name="emr-pig-launch"></a>

Esta seção demonstra como enviar trabalhos do Pig para um cluster do Amazon EMR. Os exemplos a seguir geram um relatório contendo o total de bytes transferidos, uma lista dos 50 principais endereços IP, uma lista dos 50 principais indicadores externos e os 50 principais termos de pesquisa usando o Bing e o Google. O script do Pig está localizado no bucket `s3://elasticmapreduce/samples/pig-apache/do-reports2.pig` do Amazon S3. Os dados de entrada estão localizados no bucket `s3://elasticmapreduce/samples/pig-apache/input` do Amazon S3. Os dados de saída são salvos em um bucket do Amazon S3.

## Enviar trabalhos do Pig usando o console do Amazon EMR
<a name="ConsoleCreatingaPigJob"></a>

Este exemplo descreve como usar o console do Amazon EMR para adicionar uma etapa do Pig a um cluster. 

**Para enviar uma etapa do Pig**

1. [Abra o console do Amazon EMR em https://console.aws.amazon.com /emr.](https://console.aws.amazon.com/emr/)

1. Escolha **Criar cluster** para criar um cluster com o Pig instalado. Para conhecer as etapas sobre como criar um cluster, consulte [Planejar e configurar um cluster do Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-gs.html#emr-getting-started-plan-and-configure).

1. Abra um terminal e use SSH no nó principal do cluster seguindo as etapas descritas em [Conectar-se ao nó principal usando SSH](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-connect-master-node-ssh.html). Depois de fazer isso, execute as etapas a seguir.

   ```
   sudo mkdir -p /home/hadoop/lib/pig/
   sudo aws s3 cp s3://elasticmapreduce/libs/pig/0.3/piggybank-0.3-amzn.jar /home/hadoop/lib/pig/piggybank.jar
   ```

1. No console, clique em **Lista de clusters** e selecione o nome do cluster que você criou.

1. Role até a seção **Steps (Etapas)** e expanda-a. Em seguida, escolha **Add step (Adicionar etapa)**.

1. Na caixa de diálogo **Add Step (Adicionar etapa)**:
   + Para **Step type (Tipo de etapa)**, escolha **Pig program (Programa Pig)**.
   + Para **Name (Nome)**, aceite o nome padrão (programa Pig) ou digite um novo nome.
   + Para **Script S3 location (Local do script do S3)**, digite o local do script do Pig. Por exemplo: **s3://elasticmapreduce/samples/pig-apache/do-reports2.pig**.
   + Para **Input S3 location (Local de entrada do S3)**, digite o local dos dados de entrada. Por exemplo: **s3://elasticmapreduce/samples/pig-apache/input**.
   + Em **Local de saída do S3**, digite ou navegue até o nome do bucket de saída do Amazon S3.
   + Para **Arguments (Argumentos)**, deixe o campo em branco.
   + Para **Action on failure (Ação na falha)**, aceite a opção padrão **Continue (Continuar)**.

1. Escolha **Adicionar**. A etapa é exibida no console com o status Pendente. 

1. O status da etapa muda de Pending (Pendente) para Running (Em execução) e depois para Completed (Concluído) conforme ela é executada. Para atualizar o status, escolha o ícone **Refresh (Atualizar)** acima da coluna **Actions (Ações)**. Quando sua etapa estiver concluída, verifique o bucket do Amazon S3 para confirmar se os arquivos de saída da etapa do Pig estão lá.

## Envie trabalhos do Pig usando o AWS CLI
<a name="emr-pig-submit-work"></a>

**Para enviar uma etapa do Pig usando o AWS CLI**

Ao iniciar um cluster usando o AWS CLI, use o `--applications` parâmetro para instalar o Pig. Para enviar uma etapa do Pig, use o parâmetro `--steps`. 

1. Para iniciar um cluster com o Pig instalado, digite o seguinte comando, substituindo-o *myKey* pelo nome do seu key pair do EC2 e do bucket Amazon S3. *amzn-s3-demo-bucket/*

   ```
   aws emr create-cluster \
   --name "Test cluster" \
   --log-uri s3://amzn-s3-demo-bucket/ \
   --release-label emr-5.36.2 \
   --applications Name=Pig \
   --use-default-roles \
   --ec2-attributes KeyName=myKey \
   --instance-type m5.xlarge \
   --instance-count 3
   ```
**nota**  
Os caracteres de continuação de linha do Linux (\$1) são incluídos para facilitar a leitura. Eles podem ser removidos ou usados ​​em comandos do Linux. No Windows, remova-os ou substitua-os por um sinal de interpolação (^).

   Quando você especifica a contagem de instâncias sem usar o parâmetro `--instance-groups`, um único nó principal é executado, e as instâncias restantes são executadas como nós core. Todos os nós usam o tipo de instância especificado no comando.
**nota**  
Se você não tiver criado o perfil de serviço padrão do EMR e o perfil de instância do EC2, digite `aws emr create-default-roles` para criá-los antes de digitar o subcomando `create-cluster`.

1. Para enviar uma etapa do Pig, digite o comando a seguir, substituindo *myClusterId* e *amzn-s3-demo-bucket* pelo ID do cluster e pelo nome do bucket do Amazon S3.

   ```
   aws emr add-steps \
   --cluster-id myClusterId \
   --steps Type=PIG,Name="Pig Program",ActionOnFailure=CONTINUE,Args=[-f,s3://elasticmapreduce/samples/pig-apache/do-reports2.pig,-p,INPUT=s3://elasticmapreduce/samples/pig-apache/input,-p,OUTPUT=s3://amzn-s3-demo-bucket/pig-apache/output]
   ```

   Esse comando retornará um ID de etapa, que você pode usar para verificar o `State` da sua etapa.

1. Consulte o status da sua etapa com o comando `describe-step`.

   ```
   aws emr describe-step --cluster-id myClusterId --step-id s-1XXXXXXXXXXA
   ```

   O `State` da etapa é alterado de `PENDING` para `RUNNING` e para `COMPLETED`, conforme a etapa é executada. Quando sua etapa estiver concluída, verifique o bucket do Amazon S3 para confirmar se os arquivos de saída da etapa do Pig estão lá.

Para obter mais informações sobre o uso dos comandos do Amazon EMR no AWS CLI, consulte a Referência de [AWS CLI comandos](https://docs.aws.amazon.com/cli/latest/reference/emr).