AWS Data Pipeline は、新規顧客には利用できなくなりました。の既存のお客様 AWS Data Pipeline は、通常どおりサービスを引き続き使用できます。詳細はこちら
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
CopyActivity
ある場所から別の場所にデータをコピーします。 は入力および出力SqlDataNodeとして S3DataNode と CopyActivity
をサポートし、コピーオペレーションは通常 で実行されます record-by-record。ただし、以下のすべての条件が満たされた場合、CopyActivity
は Amazon S3 から Amazon S3 への高速コピーを実行します。
-
入力と出力は S3DataNodes
-
dataFormat
フィールドが入力と出力で同じであること
入力として圧縮データファイルを指定した場合に、それを S3 データノードの compression
フィールドを使用して示していなければ、CopyActivity
は失敗することがあります。この場合、CopyActivity
がレコード終了文字を適切に検出できないために、操作が失敗しています。さらに、 はディレクトリから別のディレクトリへのコピーとディレクトリへのファイルのコピーCopyActivity
をサポートしますが、 record-by-record コピーはディレクトリをファイルにコピーするときに行われます。また、CopyActivity
では、マルチパートの Amazon S3 ファイルのコピーはサポートされません。
CopyActivity
には、そのCSVサポートに対する特定の制限があります。に S3DataNode as 入力を使用する場合CopyActivity
、Amazon S3 の入力フィールドと出力フィールドには、CSVデータファイル形式の Unix/Linux バリアントのみを使用できます。 Amazon S3 この Unix/Linux 形式では、次の条件が満たされる必要があります。
-
区切り文字はカンマ(,)文字です。
-
レコードが引用符で囲まれることはありません。
-
デフォルトのエスケープ文字はASCII値 92 (バックスラッシュ) です。
-
レコード終了識別子はASCII値 10 (または "\n") です。
Windows ベースのシステムは通常、キャリッジリターンとラインフィードを一緒に使用するという異なる end-of-record 文字シーケンスを使用します (ASCII値 13 とASCII値 10)。入力データを変更するコピー前スクリプトなどを利用して、この違いを吸収し、CopyActivity
が適切にレコード終端を検出できるようにする必要があります。そうしないと、CopyActivity
が繰り返し失敗します。
CopyActivity
を使用して PostgreSQL RDS オブジェクトからTSVデータ形式にエクスポートする場合、デフォルトのNULL文字は \n です。
例
以下は、このオブジェクト型の例です。このオブジェクトは、同じパイプライン定義ファイルで定義した他のオブジェクトを 3 つ参照します。CopyPeriod
は Schedule
オブジェクトで、InputData
と OutputData
はデータノードオブジェクトです。
{ "id" : "S3ToS3Copy", "type" : "CopyActivity", "schedule" : { "ref" : "CopyPeriod" }, "input" : { "ref" : "InputData" }, "output" : { "ref" : "OutputData" }, "runsOn" : { "ref" : "MyEc2Resource" } }
構文
オブジェクト呼び出しフィールド | 説明 | スロットタイプ |
---|---|---|
schedule | このオブジェクトは、スケジュール期間の実行中に呼び出されます。ユーザーは、このオブジェクトの依存関係の実行順序を設定するには、別のオブジェクトへのスケジュール参照を指定する必要があります。ユーザーは、オブジェクトに明示的にスケジュールを設定することで、この要件を満たすことができます。例えば、「スケジュール」: {"ref": "DefaultSchedule"} を指定します。ほとんどの場合、すべてのオブジェクトがそのスケジュールを継承するように、スケジュール参照をデフォルトのパイプラインオブジェクトに配置することをお勧めします。または、パイプラインにスケジュールのツリー (マスタースケジュール内のスケジュール) がある場合、ユーザーは、スケジュール参照がある親オブジェクトを作成することができます。オプションのスケジュール設定の例については、「https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html」を参照してください。 | リファレンスオブジェクト、例:「schedule」:{「ref"myScheduleId」} |
必須のグループ (次のいずれかが必要です) | 説明 | スロットタイプ |
---|---|---|
runsOn | アクティビティまたはコマンドを実行するコンピューティングリソース。例えば、Amazon EC2インスタンスや Amazon EMRクラスターなどです。 | リファレンスオブジェクト、例: "runsOn":{"ref"myResourceId"} |
workerGroup | ワーカーグループ。これはルーティングタスクに使用されます。 runsOn 値を指定して workerGroup 存在する場合、 workerGroup は無視されます。 | 文字列 |
オプションのフィールド | 説明 | スロットタイプ |
---|---|---|
attemptStatus | リモートアクティビティから最も最近報告されたステータス。 | 文字列 |
attemptTimeout | リモートの作業完了のタイムアウト。設定された場合、設定された開始時間内に完了しなかったリモートアクティビティを再試行することができます。 | [Period] (期間) |
dependsOn | 実行可能な別のオブジェクトで依存関係を指定します。 | リファレンスオブジェクト、例: "dependsOn":{"ref"myActivityId"} |
failureAndRerunモード | 依存関係が失敗または再実行されたときのコンシューマーノードの動作を示します。 | 一覧表 |
input | 入力データソース。 | リファレンスオブジェクト、例:「input」:{「ref"myDataNodeId」} |
lateAfterTimeout | オブジェクトが完了しなければならない、パイプライン開始からの経過時間。スケジュールタイプが ondemand に設定されていない場合にのみトリガーされます。 |
[Period] (期間) |
maxActiveInstances | コンポーネントで同時にアクティブになるインスタンスの最大数。再実行はアクティブなインスタンスの数にはカウントされません。 | 整数 |
maximumRetries | 失敗時の最大再試行回数 | 整数 |
onFail | 現在のオブジェクトが失敗したときに実行するアクション。 | リファレンスオブジェクト、例: "onFail":{"ref"myActionId"} |
onLateAction | オブジェクトが予定されていないか、まだ完了していない場合にトリガーされるアクション。 | リファレンスオブジェクト、例: "onLateAction":{"ref"myActionId"} |
onSuccess | 現在のオブジェクトが成功したときに実行するアクション。 | リファレンスオブジェクト、例: "onSuccess":{"ref"myActionId"} |
output | 出力データソース。 | リファレンスオブジェクト、例:「output」:{「ref"myDataNodeId」} |
parent | スロットの継承元となる現在のオブジェクトの親。 | リファレンスオブジェクト、例:「parent」:{「ref"myBaseObjectId」} |
pipelineLogUri | パイプラインのログをアップロードするための S3 URI (「s3://BucketName/Key/」など)。 | 文字列 |
precondition | オプションで前提条件を定義します。データノードは、すべての前提条件が満たされREADYるまで「」とマークされません。 | リファレンスオブジェクト、例:「precondition」:{「ref"myPreconditionId」} |
reportProgressTimeout | へのリモートワークの連続呼び出しのタイムアウトreportProgress。設定された場合、指定された期間の進捗状況を報告しないリモートアクティビティは停止されたと見なし、再試行できます。 | [Period] (期間) |
retryDelay | 2 回の再試行の間のタイムアウト期間。 | [Period] (期間) |
scheduleType | スケジュールタイプによって、パイプライン定義のオブジェクトを、期間の最初にスケジュールするか、最後にスケジュールするかを指定できます。[Time Series Style Scheduling] は、インスタンスが各間隔の最後にスケジュールされることを意味し、[Cron Style Scheduling] は、インスタンスが各間隔の最初にスケジュールされることを意味します。オンデマンドスケジュールにより、アクティベーションごとに 1 回パイプラインを実行することができます。つまり、パイプラインを再実行するために、クローンしたり再作成したりする必要はありません。オンデマンドスケジュールを使用する場合は、デフォルトオブジェクトで指定する必要があり、パイプライン内のオブジェクトに対して scheduleType 指定されるのは のみです。オンデマンドパイプラインを使用するには、後続の実行ごとに ActivatePipeline オペレーションを呼び出すだけです。値は、cron、ondemand、および timeseries です。 | 一覧表 |
実行時フィールド | 説明 | スロットタイプ |
---|---|---|
@activeInstances | 現在スケジュールされているアクティブなインスタンスオブジェクトのリスト。 | リファレンスオブジェクト、例: "activeInstances":{"ref"myRunnableObjectId"} |
@actualEndTime | このオブジェクトの実行が終了した時刻。 | DateTime |
@actualStartTime | このオブジェクトの実行が開始された時刻。 | DateTime |
cancellationReason | このオブジェクト cancellationReason がキャンセルされた場合の 。 | 文字列 |
@cascadeFailedOn | オブジェクトが失敗した際の依存関係チェーンの説明。 | リファレンスオブジェクト、例: "cascadeFailedOn":{"ref"myRunnableObjectId"} |
emrStepLog | EMR EMRアクティビティの試行でのみ使用できるステップログ | 文字列 |
errorId | このオブジェクトが失敗 errorId した場合の 。 | 文字列 |
errorMessage | このオブジェクトが失敗 errorMessage した場合の 。 | 文字列 |
errorStackTrace | このオブジェクトが失敗した場合は、エラースタックトレース。 | 文字列 |
@finishedTime | このオブジェクトが実行を終了した時刻。 | DateTime |
hadoopJobLog | EMRベースのアクティビティの試行で使用可能な Hadoop ジョブログ。 | 文字列 |
@healthStatus | 終了状態に達した最後のオブジェクトインスタンスの成功または失敗を反映する、オブジェクトのヘルスステータス。 | 文字列 |
@healthStatusFromInstanceId | 終了状態に達した最後のインスタンスオブジェクトの ID。 | 文字列 |
@healthStatusUpdatedTime | ヘルス状態が最後に更新された時間。 | DateTime |
hostname | タスクの試行を取得したクライアントのホスト名。 | 文字列 |
@lastDeactivatedTime | このオブジェクトが最後に非アクティブ化された時刻。 | DateTime |
@latestCompletedRunTime | 実行が完了した最後の実行の時刻。 | DateTime |
@latestRunTime | 実行がスケジュールされた最後の実行の時刻。 | DateTime |
@nextRunTime | 次回にスケジュールされた実行の時刻。 | DateTime |
reportProgressTime | リモートアクティビティで進捗状況が報告された最新の時刻。 | DateTime |
@scheduledEndTime | オブジェクトの予定された終了時刻 | DateTime |
@scheduledStartTime | オブジェクトの予定された開始時刻 | DateTime |
@status | このオブジェクトのステータス。 | 文字列 |
@version | オブジェクトが作成されたパイプラインのバージョン。 | 文字列 |
@waitingOn | このオブジェクトが待機している依存関係のリストの説明。 | リファレンスオブジェクト、例: "waitingOn":{"ref"myRunnableObjectId"} |
システムフィールド | 説明 | スロットタイプ |
---|---|---|
@error | 形式が正しくないオブジェクトを説明するエラー | 文字列 |
@pipelineId | このオブジェクトが属するパイプラインの ID | 文字列 |
@sphere | オブジェクトの球は、ライフサイクルにおける場所を示します。コンポーネントオブジェクトにより、試行オブジェクトを実行するインスタンスオブジェクトが発生します | 文字列 |