AWS Data Pipeline ist für Neukunden nicht mehr verfügbar. Bestehende Kunden von AWS Data Pipeline können den Service weiterhin wie gewohnt nutzen. Weitere Informationen
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
ynamoDBDataD-Format
Wendet ein Schema auf eine DynamoDB-Tabelle an, um sie über eine Hive-Abfrage zugänglich zu machen. DynamoDBDataFormat
wird mit einem HiveActivity
Objekt und einer DynamoDBDataNode
Eingabe und Ausgabe verwendet. DynamoDBDataFormat
erfordert, dass Sie alle Spalten in Ihrer Hive-Abfrage angeben. Mehr Flexibilität bei der Angabe bestimmter Spalten in einer Hive-Abfrage oder Amazon S3 S3-Unterstützung finden Sie unterD ynamoDBExport DataFormat.
Anmerkung
Boolesche DynamoDB-Typen sind nicht zu booleschen Hive-Typen zugeordnet. Es ist aber möglich, DynamoDB-Ganzzahlwerte von 0 oder 1 den booleschen Hive-Typen zuzuordnen.
Beispiel
Das folgende Beispiel zeigt, wie Sie mit DynamoDBDataFormat
ein Schema einer DynamoDBDataNode
-Eingabe zuweisen, wodurch ein HiveActivity
-Objekt auf die Daten nach benannten Spalten zugreifen und die Daten in eine DynamoDBDataNode
-Ausgabe kopieren kann.
{
"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
Optionale Felder | Beschreibung | Slot-Typ |
---|---|---|
column | Der Spaltenname mit dem Datentyp, der von jedem Feld für die Daten angegeben wird, die von diesem Datenknoten beschrieben werden. Beispiel, hostname STRING . Verwenden Sie für mehrere Werte Spaltennamen und Datentypen, die durch ein Leerzeichen getrennt sind. |
String |
übergeordneter | Das übergeordnetes Objekt des aktuellen Objekts, aus dem Slots übernommen werden. | Referenzobjekt, z. B. „parent“: {"ref“:“ myBaseObject Id "} |
Laufzeitfelder | Beschreibung | Slot-Typ |
---|---|---|
@Version | Die Pipeline-Version, mit der das Objekt erstellt wurde | String |
Systemfelder | Beschreibung | Slot-Typ |
---|---|---|
@error | Der Fehler mit einer Beschreibung des falsch formatierten Objekts. | String |
@pipelineId | Die Id der Pipeline, zu der dieses Objekt gehört. | String |
@sphere | Die Kugel eines Objekts bezeichnet seinen Platz im Lebenszyklus: Komponentenobjekte ergeben Instance-Objekte, die Versuchsobjekte ausführen. | String |