AWS Data Pipeline exemplos usando AWS CLI - AWS SDKExemplos de código

Há mais AWS SDK exemplos disponíveis no GitHub repositório AWS Doc SDK Examples.

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á.

AWS Data Pipeline exemplos usando AWS CLI

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface with AWS Data Pipeline.

Ações são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar funções de serviço individuais, é possível ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, onde você pode encontrar instruções sobre como configurar e executar o código no contexto.

Tópicos

Ações

O código de exemplo a seguir mostra como usar activate-pipeline.

AWS CLI

Para ativar um pipeline

Este exemplo ativa o pipeline especificado:

aws datapipeline activate-pipeline --pipeline-id df-00627471SOVYZEXAMPLE

Para ativar o pipeline em uma data e hora específicas, use o seguinte comando:

aws datapipeline activate-pipeline --pipeline-id df-00627471SOVYZEXAMPLE --start-timestamp 2015-04-07T00:00:00Z
  • Para API obter detalhes, consulte ActivatePipelinena Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar add-tags.

AWS CLI

Para adicionar uma tag a um pipeline

Este exemplo adiciona a tag especificada ao pipeline especificado:

aws datapipeline add-tags --pipeline-id df-00627471SOVYZEXAMPLE --tags key=environment,value=production key=owner,value=sales

Para visualizar as tags, use o comando describe-pipelines. Por exemplo, as tags adicionadas no comando de exemplo aparecem da seguinte forma na saída de describe-pipelines:

{ ... "tags": [ { "value": "production", "key": "environment" }, { "value": "sales", "key": "owner" } ] ... }
  • Para API obter detalhes, consulte AddTagsna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar create-pipeline.

AWS CLI

Para criar um pipeline

Este exemplo cria um pipeline:

aws datapipeline create-pipeline --name my-pipeline --unique-id my-pipeline-token

A seguir está um exemplo de saída:

{ "pipelineId": "df-00627471SOVYZEXAMPLE" }
  • Para API obter detalhes, consulte CreatePipelinena Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar deactivate-pipeline.

AWS CLI

Para desativar um pipeline

Este exemplo desativa o pipeline especificado:

aws datapipeline deactivate-pipeline --pipeline-id df-00627471SOVYZEXAMPLE

Para desativar o pipeline somente após a conclusão de todas as atividades em execução, use o seguinte comando:

aws datapipeline deactivate-pipeline --pipeline-id df-00627471SOVYZEXAMPLE --no-cancel-active

O código de exemplo a seguir mostra como usar delete-pipeline.

AWS CLI

Para excluir um pipeline

Este exemplo exclui o pipeline especificado:

aws datapipeline delete-pipeline --pipeline-id df-00627471SOVYZEXAMPLE
  • Para API obter detalhes, consulte DeletePipelinena Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar describe-pipelines.

AWS CLI

Para descrever seus pipelines

Este exemplo descreve o pipeline especificado:

aws datapipeline describe-pipelines --pipeline-ids df-00627471SOVYZEXAMPLE

A seguir está um exemplo de saída:

{ "pipelineDescriptionList": [ { "fields": [ { "stringValue": "PENDING", "key": "@pipelineState" }, { "stringValue": "my-pipeline", "key": "name" }, { "stringValue": "2015-04-07T16:05:58", "key": "@creationTime" }, { "stringValue": "df-00627471SOVYZEXAMPLE", "key": "@id" }, { "stringValue": "123456789012", "key": "pipelineCreator" }, { "stringValue": "PIPELINE", "key": "@sphere" }, { "stringValue": "123456789012", "key": "@userId" }, { "stringValue": "123456789012", "key": "@accountId" }, { "stringValue": "my-pipeline-token", "key": "uniqueId" } ], "pipelineId": "df-00627471SOVYZEXAMPLE", "name": "my-pipeline", "tags": [] } ] }
  • Para API obter detalhes, consulte DescribePipelinesna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar get-pipeline-definition.

AWS CLI

Para obter uma definição de pipeline

Este exemplo obtém a definição do pipeline para o pipeline especificado:

aws datapipeline get-pipeline-definition --pipeline-id df-00627471SOVYZEXAMPLE

A seguir está um exemplo de saída:

{ "parameters": [ { "type": "AWS::S3::ObjectKey", "id": "myS3OutputLoc", "description": "S3 output folder" }, { "default": "s3://us-east-1.elasticmapreduce.samples/pig-apache-logs/data", "type": "AWS::S3::ObjectKey", "id": "myS3InputLoc", "description": "S3 input folder" }, { "default": "grep -rc \"GET\" ${INPUT1_STAGING_DIR}/* > ${OUTPUT1_STAGING_DIR}/output.txt", "type": "String", "id": "myShellCmd", "description": "Shell command to run" } ], "objects": [ { "type": "Ec2Resource", "terminateAfter": "20 Minutes", "instanceType": "t1.micro", "id": "EC2ResourceObj", "name": "EC2ResourceObj" }, { "name": "Default", "failureAndRerunMode": "CASCADE", "resourceRole": "DataPipelineDefaultResourceRole", "schedule": { "ref": "DefaultSchedule" }, "role": "DataPipelineDefaultRole", "scheduleType": "cron", "id": "Default" }, { "directoryPath": "#{myS3OutputLoc}/#{format(@scheduledStartTime, 'YYYY-MM-dd-HH-mm-ss')}", "type": "S3DataNode", "id": "S3OutputLocation", "name": "S3OutputLocation" }, { "directoryPath": "#{myS3InputLoc}", "type": "S3DataNode", "id": "S3InputLocation", "name": "S3InputLocation" }, { "startAt": "FIRST_ACTIVATION_DATE_TIME", "name": "Every 15 minutes", "period": "15 minutes", "occurrences": "4", "type": "Schedule", "id": "DefaultSchedule" }, { "name": "ShellCommandActivityObj", "command": "#{myShellCmd}", "output": { "ref": "S3OutputLocation" }, "input": { "ref": "S3InputLocation" }, "stage": "true", "type": "ShellCommandActivity", "id": "ShellCommandActivityObj", "runsOn": { "ref": "EC2ResourceObj" } } ], "values": { "myS3OutputLoc": "s3://my-s3-bucket/", "myS3InputLoc": "s3://us-east-1.elasticmapreduce.samples/pig-apache-logs/data", "myShellCmd": "grep -rc \"GET\" ${INPUT1_STAGING_DIR}/* > ${OUTPUT1_STAGING_DIR}/output.txt" } }

O código de exemplo a seguir mostra como usar list-pipelines.

AWS CLI

Para listar seus pipelines

Este exemplo lista seus pipelines:

aws datapipeline list-pipelines

A seguir está um exemplo de saída:

{ "pipelineIdList": [ { "id": "df-00627471SOVYZEXAMPLE", "name": "my-pipeline" }, { "id": "df-09028963KNVMREXAMPLE", "name": "ImportDDB" }, { "id": "df-0870198233ZYVEXAMPLE", "name": "CrossRegionDDB" }, { "id": "df-00189603TB4MZEXAMPLE", "name": "CopyRedshift" } ] }
  • Para API obter detalhes, consulte ListPipelinesna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar list-runs.

AWS CLI

Exemplo 1: Para listar as execuções do seu pipeline

O list-runs exemplo a seguir lista as execuções do pipeline especificado.

aws datapipeline list-runs --pipeline-id df-00627471SOVYZEXAMPLE

Saída:

Name Scheduled Start Status ID Started Ended ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 1. EC2ResourceObj 2015-04-12T17:33:02 CREATING @EC2ResourceObj_2015-04-12T17:33:02 2015-04-12T17:33:10 2. S3InputLocation 2015-04-12T17:33:02 FINISHED @S3InputLocation_2015-04-12T17:33:02 2015-04-12T17:33:09 2015-04-12T17:33:09 3. S3OutputLocation 2015-04-12T17:33:02 WAITING_ON_DEPENDENCIES @S3OutputLocation_2015-04-12T17:33:02 2015-04-12T17:33:09 4. ShellCommandActivityObj 2015-04-12T17:33:02 WAITING_FOR_RUNNER @ShellCommandActivityObj_2015-04-12T17:33:02 2015-04-12T17:33:09

Exemplo 2: Para listar as execuções do pipeline entre as datas especificadas

O list-runs exemplo a seguir usa o --start-interval para especificar as datas a serem incluídas na saída.

aws datapipeline list-runs --pipeline-id df-01434553B58A2SHZUKO5 --start-interval 2017-10-07T00:00:00,2017-10-08T00:00:00
  • Para API obter detalhes, consulte ListRunsna Referência de AWS CLI Comandos.

O código de exemplo a seguir mostra como usar put-pipeline-definition.

AWS CLI

Para fazer o upload de uma definição de pipeline

Este exemplo carrega a definição do pipeline especificado para o pipeline especificado:

aws datapipeline put-pipeline-definition --pipeline-id df-00627471SOVYZEXAMPLE --pipeline-definition file://my-pipeline-definition.json

A seguir está um exemplo de saída:

{ "validationErrors": [], "errored": false, "validationWarnings": [] }

O código de exemplo a seguir mostra como usar remove-tags.

AWS CLI

Para remover uma tag de um pipeline

Esse exemplo remove a tag especificada do pipeline especificado:

aws datapipeline remove-tags --pipeline-id df-00627471SOVYZEXAMPLE --tag-keys environment
  • Para API obter detalhes, consulte RemoveTagsna Referência de AWS CLI Comandos.