DynamoDBDataFormat - AWS Data Pipeline

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

DynamoDBDataFormat

DynamoDB テーブルにスキーマを適用して、Hive クエリでアクセスできるようにします。DynamoDBDataFormatとともに使用され、HiveActivityオブジェクトとDynamoDBDataNode入力と出力。DynamoDBDataFormatHive クエリですべての列を指定する必要があります。Hive クエリで特定の列を柔軟に指定する方法の詳細または Amazon S3 サポートについては、DynamoDBExportDataFormat

注記

DynamoDB のブール型は、Hive のブール型にマッピングされません。ただし、Hive のブール型に、0 または 1 の DynamoDB 整数値をマッピングすることができます。

Example

以下の例は、DynamoDBDataFormat を使用して DynamoDBDataNode 入力にスキーマを割り当てる方法を示します。こうすることで、HiveActivity オブジェクトがデータに列名でアクセスし、データを DynamoDBDataNode 出力にコピーできるようになります。

{ "objects": [ { "id" : "Exists.1", "name" : "Exists.1", "type" : "Exists" }, { "id" : "DataFormat.1", "name" : "DataFormat.1", "type" : "DynamoDBDataFormat", "column" : [ "hash STRING", "range STRING" ] }, { "id" : "DynamoDBDataNode.1", "name" : "DynamoDBDataNode.1", "type" : "DynamoDBDataNode", "tableName" : "$INPUT_TABLE_NAME", "schedule" : { "ref" : "ResourcePeriod" }, "dataFormat" : { "ref" : "DataFormat.1" } }, { "id" : "DynamoDBDataNode.2", "name" : "DynamoDBDataNode.2", "type" : "DynamoDBDataNode", "tableName" : "$OUTPUT_TABLE_NAME", "schedule" : { "ref" : "ResourcePeriod" }, "dataFormat" : { "ref" : "DataFormat.1" } }, { "id" : "EmrCluster.1", "name" : "EmrCluster.1", "type" : "EmrCluster", "schedule" : { "ref" : "ResourcePeriod" }, "masterInstanceType" : "m1.small", "keyPair" : "$KEYPAIR" }, { "id" : "HiveActivity.1", "name" : "HiveActivity.1", "type" : "HiveActivity", "input" : { "ref" : "DynamoDBDataNode.1" }, "output" : { "ref" : "DynamoDBDataNode.2" }, "schedule" : { "ref" : "ResourcePeriod" }, "runsOn" : { "ref" : "EmrCluster.1" }, "hiveScript" : "insert overwrite table ${output1} select * from ${input1} ;" }, { "id" : "ResourcePeriod", "name" : "ResourcePeriod", "type" : "Schedule", "period" : "1 day", "startDateTime" : "2012-05-04T00:00:00", "endDateTime" : "2012-05-05T00:00:00" } ] }

Syntax

オプションのフィールド 説明 スロットタイプ
column このデータノードで記述されたデータに対して各フィールドで指定されたデータ型を持つ列名。たとえば、hostname STRING と指定します。複数の値の場合は、列名とデータ型をスペースで区切って使用します。 文字列
parent スロットの継承元となる現在のオブジェクトの親。 参照オブジェクト ("parent":​{"ref":"myBaseObjectId"} など)

実行時フィールド 説明 スロットタイプ
@バージョン オブジェクトを作成するために使用されたパイプラインのバージョン。 文字列

システムフィールド 説明 スロットタイプ
@error 形式が正しくないオブジェクトを説明するエラー。 文字列
@pipelineId このオブジェクトが属するパイプラインの ID。 文字列
@sphere オブジェクトの球は、ライフサイクルにおける場所を示します。コンポーネントオブジェクトにより、試行オブジェクトを実行するインスタンスオブジェクトが発生します。 文字列