AWS Data Pipeline-Beispiele unter Verwendung der AWS CLI
Die folgenden Codebeispiele zeigen, wie Sie Aktionen durchführen und gängige Szenarien implementieren, indem Sie die AWS Command Line Interface mit AWS Data Pipeline nutzen.
Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Während Aktionen Ihnen zeigen, wie Sie einzelne Service-Funktionen aufrufen, können Sie Aktionen im Kontext der zugehörigen Szenarien anzeigen.
Jedes Beispiel enthält einen Link zum vollständigen Quellcode, wo Sie Anleitungen zum Einrichten und Ausführen des Codes im Kontext finden.
Themen
Aktionen
Das folgende Codebeispiel zeigt, wie activate-pipeline verwendet wird.
- AWS CLI
-
So aktivieren Sie eine Pipeline
In diesem Beispiel wird die angegebene Pipeline aktiviert:
aws datapipeline activate-pipeline --pipeline-iddf-00627471SOVYZEXAMPLEVerwenden Sie den folgenden Befehl, um die Pipeline an einem bestimmten Zeitpunkt zu aktivieren:
aws datapipeline activate-pipeline --pipeline-iddf-00627471SOVYZEXAMPLE--start-timestamp2015-04-07T00:00:00Z-
API-Details finden Sie unter ActivatePipeline
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie add-tags verwendet wird.
- AWS CLI
-
So fügen Sie einer Pipeline ein Tag hinzu
In diesem Beispiel wird der angegebenen Pipeline das spezifizierte Tag hinzugefügt:
aws datapipeline add-tags --pipeline-iddf-00627471SOVYZEXAMPLE--tagskey=environment,value=productionkey=owner,value=salesVerwenden Sie den Befehl describe-pipelines, um die Tags anzuzeigen. Die im Beispielbefehl hinzugefügten Tags werden in der Ausgabe für describe-pipelines wie folgt angezeigt:
{ ... "tags": [ { "value": "production", "key": "environment" }, { "value": "sales", "key": "owner" } ] ... }-
API-Details finden Sie unter AddTags
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie create-pipeline verwendet wird.
- AWS CLI
-
So erstellen Sie eine Pipeline
In diesem Beispiel wird eine Pipeline erstellt:
aws datapipeline create-pipeline --namemy-pipeline--unique-idmy-pipeline-tokenDas Folgende ist Ausgabebeispiel:
{ "pipelineId": "df-00627471SOVYZEXAMPLE" }-
API-Details finden Sie unter CreatePipeline
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie deactivate-pipeline verwendet wird.
- AWS CLI
-
So deaktivieren Sie eine Pipeline
In diesem Beispiel wird die angegebene Pipeline deaktiviert:
aws datapipeline deactivate-pipeline --pipeline-iddf-00627471SOVYZEXAMPLEVerwenden Sie den folgenden Befehl, um die Pipeline erst nach der Ausführung aller Aktivitäten zu deaktivieren:
aws datapipeline deactivate-pipeline --pipeline-iddf-00627471SOVYZEXAMPLE--no-cancel-active-
API-Details finden Sie unter DeactivatePipeline
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie delete-pipeline verwendet wird.
- AWS CLI
-
So löschen Sie eine Pipeline
In diesem Beispiel wird die angegebene Pipeline gelöscht:
aws datapipeline delete-pipeline --pipeline-iddf-00627471SOVYZEXAMPLE-
API-Details finden Sie unter DeletePipeline
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie describe-pipelines verwendet wird.
- AWS CLI
-
So beschreiben Sie Ihre Pipelines
In diesem Beispiel wird die angegebene Pipeline beschrieben:
aws datapipeline describe-pipelines --pipeline-idsdf-00627471SOVYZEXAMPLEDas Folgende ist Ausgabebeispiel:
{ "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": [] } ] }-
API-Details finden Sie unter DescribePipelines
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie get-pipeline-definition verwendet wird.
- AWS CLI
-
So rufen Sie eine Pipeline-Definition ab
Dieses Beispiel ruft die Pipeline-Definition für die angegebene Pipeline ab:
aws datapipeline get-pipeline-definition --pipeline-iddf-00627471SOVYZEXAMPLEDas Folgende ist Ausgabebeispiel:
{ "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" } }-
API-Details finden Sie unter GetPipelineDefinition
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-pipelines verwendet wird.
- AWS CLI
-
So listen Sie Ihre Pipelines auf
Dieses Beispiel listet Ihre Pipelines auf:
aws datapipeline list-pipelinesDas Folgende ist Ausgabebeispiel:
{ "pipelineIdList": [ { "id": "df-00627471SOVYZEXAMPLE", "name": "my-pipeline" }, { "id": "df-09028963KNVMREXAMPLE", "name": "ImportDDB" }, { "id": "df-0870198233ZYVEXAMPLE", "name": "CrossRegionDDB" }, { "id": "df-00189603TB4MZEXAMPLE", "name": "CopyRedshift" } ] }-
API-Details finden Sie unter ListPipelines
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie list-runs verwendet wird.
- AWS CLI
-
Beispiel 1: So listen Sie Ihre Pipeline-Läufe auf
Im folgenden
list-runs-Beispiel werden die Läufe für die angegebene Pipeline aufgelistet.aws datapipeline list-runs --pipeline-iddf-00627471SOVYZEXAMPLEAusgabe:
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:09Beispiel 2: So listen Sie die Pipeline-Läufe zwischen den angegebenen Daten auf
Im folgenden
list-runs-Beispiel wird--start-intervalverwendet, um die Daten anzugeben, die in die Ausgabe aufgenommen werden sollen.aws datapipeline list-runs --pipeline-iddf-01434553B58A2SHZUKO5--start-interval2017-10-07T00:00:00,2017-10-08T00:00:00-
API-Details finden Sie unter ListRuns
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie put-pipeline-definition verwendet wird.
- AWS CLI
-
So laden Sie eine Pipeline-Definition hoch
Dieses Beispiel lädt die angegebene Pipeline-Definition auf die spezifizierte Pipeline hoch:
aws datapipeline put-pipeline-definition --pipeline-iddf-00627471SOVYZEXAMPLE--pipeline-definitionfile://my-pipeline-definition.jsonDas Folgende ist Ausgabebeispiel:
{ "validationErrors": [], "errored": false, "validationWarnings": [] }-
API-Details finden Sie unter PutPipelineDefinition
in der AWS CLI-Befehlsreferenz.
-
Das folgende Codebeispiel zeigt, wie remove-tags verwendet wird.
- AWS CLI
-
So entfernen Sie ein Tag aus einer Pipeline
In diesem Beispiel wird das spezifizierte Tag aus der angegebenen Pipeline entfernt:
aws datapipeline remove-tags --pipeline-iddf-00627471SOVYZEXAMPLE--tag-keysenvironment-
API-Details finden Sie unter RemoveTags
in der AWS CLI-Befehlsreferenz.
-