Esempi di AWS Data Pipeline con la AWS CLI
Gli esempi di codice seguenti mostrano come eseguire azioni e implementare scenari comuni utilizzando la AWS Command Line Interface con AWS Data Pipeline.
Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le operazioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.
Ogni esempio include un link al codice sorgente completo, dove è possibile trovare le istruzioni su come configurare ed eseguire il codice nel contesto.
Argomenti
Operazioni
L’esempio di codice seguente mostra come utilizzare activate-pipeline.
- AWS CLI
-
Come attivare una pipeline
Questo esempio attiva la pipeline specificata:
aws datapipeline activate-pipeline --pipeline-iddf-00627471SOVYZEXAMPLEPer attivare la pipeline a una data e a un’ora specifiche, utilizzare il comando seguente:
aws datapipeline activate-pipeline --pipeline-iddf-00627471SOVYZEXAMPLE--start-timestamp2015-04-07T00:00:00Z-
Per informazioni dettagliate sull’API, consulta ActivatePipeline
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare add-tags.
- AWS CLI
-
Come aggiungere un tag a una pipeline
Questo esempio aggiunge il tag specificato alla pipeline specificata:
aws datapipeline add-tags --pipeline-iddf-00627471SOVYZEXAMPLE--tagskey=environment,value=productionkey=owner,value=salesPer visualizzare i tag, utilizzare il comando describe-pipelines. Ad esempio, i tag aggiunti al comando example vengono visualizzati come segue nell’output di describe-pipelines:
{ ... "tags": [ { "value": "production", "key": "environment" }, { "value": "sales", "key": "owner" } ] ... }-
Per informazioni dettagliate sull’API, consulta AddTags
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare create-pipeline.
- AWS CLI
-
Per creare una pipeline
Questo esempio crea una pipeline:
aws datapipeline create-pipeline --namemy-pipeline--unique-idmy-pipeline-tokenDi seguito è riportato un output di esempio:
{ "pipelineId": "df-00627471SOVYZEXAMPLE" }-
Per informazioni dettagliate sull’API, consulta CreatePipeline
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare deactivate-pipeline.
- AWS CLI
-
Come disattivare una pipeline
Questo esempio disattiva la pipeline specificata:
aws datapipeline deactivate-pipeline --pipeline-iddf-00627471SOVYZEXAMPLEPer disattivare la pipeline solo dopo che tutte le attività in esecuzione sono terminate, utilizzare il comando seguente:
aws datapipeline deactivate-pipeline --pipeline-iddf-00627471SOVYZEXAMPLE--no-cancel-active-
Per informazioni dettagliate sull’API, consulta DeactivatePipeline
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare delete-pipeline.
- AWS CLI
-
Per eliminare una pipeline
Questo esempio elimina la pipeline specificata:
aws datapipeline delete-pipeline --pipeline-iddf-00627471SOVYZEXAMPLE-
Per informazioni dettagliate sull’API, consulta DeletePipeline
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare describe-pipelines.
- AWS CLI
-
Come descrivere le pipeline
Questo esempio descrive come eliminare la pipeline specificata:
aws datapipeline describe-pipelines --pipeline-idsdf-00627471SOVYZEXAMPLEDi seguito è riportato un output di esempio:
{ "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": [] } ] }-
Per informazioni dettagliate sull’API, consulta DescribePipelines
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare get-pipeline-definition.
- AWS CLI
-
Come ottenere una definizione di pipeline
L’esempio seguente riceve la definizione di pipeline per la pipeline specificata:
aws datapipeline get-pipeline-definition --pipeline-iddf-00627471SOVYZEXAMPLEDi seguito è riportato un output di esempio:
{ "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://amzn-s3-demo-bucket/", "myS3InputLoc": "s3://us-east-1.elasticmapreduce.samples/pig-apache-logs/data", "myShellCmd": "grep -rc \"GET\" ${INPUT1_STAGING_DIR}/* > ${OUTPUT1_STAGING_DIR}/output.txt" } }-
Per informazioni dettagliate sull’API, consulta GetPipelineDefinition
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-pipelines.
- AWS CLI
-
Come elencare le pipeline
Questo esempio elenca le pipeline:
aws datapipeline list-pipelinesDi seguito è riportato un output di esempio:
{ "pipelineIdList": [ { "id": "df-00627471SOVYZEXAMPLE", "name": "my-pipeline" }, { "id": "df-09028963KNVMREXAMPLE", "name": "ImportDDB" }, { "id": "df-0870198233ZYVEXAMPLE", "name": "CrossRegionDDB" }, { "id": "df-00189603TB4MZEXAMPLE", "name": "CopyRedshift" } ] }-
Per informazioni dettagliate sull’API, consulta ListPipelines
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-runs.
- AWS CLI
-
Esempio 1: elencare le esecuzioni della pipeline
L’esempio
list-runsseguente elenca le esecuzioni per la pipeline specificata.aws datapipeline list-runs --pipeline-iddf-00627471SOVYZEXAMPLEOutput:
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:09Esempio 2: elencare le esecuzioni della pipeline tra le date specificate
L’esempio
list-runsseguente utilizza--start-intervalper specificare le date da includere nell’output.aws datapipeline list-runs --pipeline-iddf-01434553B58A2SHZUKO5--start-interval2017-10-07T00:00:00,2017-10-08T00:00:00-
Per informazioni dettagliate sull’API, consulta ListRuns
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare put-pipeline-definition.
- AWS CLI
-
Come caricare una definizione di pipeline
Questo esempio carica la definizione della pipeline specificata nella pipeline specificata:
aws datapipeline put-pipeline-definition --pipeline-iddf-00627471SOVYZEXAMPLE--pipeline-definitionfile://my-pipeline-definition.jsonDi seguito è riportato un output di esempio:
{ "validationErrors": [], "errored": false, "validationWarnings": [] }-
Per informazioni dettagliate sull’API, consulta PutPipelineDefinition
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare remove-tags.
- AWS CLI
-
Come rimuovere un tag da una pipeline
Questo esempio rimuove il tag specificato dalla pipeline specificata:
aws datapipeline remove-tags --pipeline-iddf-00627471SOVYZEXAMPLE--tag-keysenvironment-
Per informazioni dettagliate sull’API, consulta RemoveTags
in AWS CLI Command Reference.
-