Format Dynamo DBData - AWS Data Pipeline

AWS Data Pipeline tidak lagi tersedia untuk pelanggan baru. Pelanggan yang sudah ada AWS Data Pipeline dapat terus menggunakan layanan seperti biasa. Pelajari selengkapnya

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Format Dynamo DBData

Berlaku skema untuk tabel DynamoDB untuk membuatnya dapat diakses oleh kueri Hive. DynamoDBDataFormat digunakan dengan objek HiveActivity dan input dan output DynamoDBDataNode. DynamoDBDataFormat mengharuskan Anda menentukan semua kolom dalam kueri Hive Anda. Untuk lebih banyak fleksibilitas untuk menentukan kolom tertentu dalam kueri Hive atau support Amazon S3, lihat Dinamo DBExport DataFormat.

catatan

Jenis DynamoDB Boolean tidak dipetakan ke jenis Hive Boolean. Namun, adalah mungkin untuk memetakan nilai integer DynamoDB 0 atau 1 untuk jenis Hive Boolean.

Contoh

Contoh berikut menunjukkan cara menggunakan DynamoDBDataFormat untuk menetapkan skema untuk input DynamoDBDataNode, yang mengizinkan objek HiveActivity untuk mengakses data dengan kolom bernama dan menyalin data ke output 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" } ] }

Sintaksis

Bidang Opsional Deskripsi Jenis Slot
kolom Nama kolom dengan jenis data yang ditentukan oleh masing-masing bidang untuk data yang dijelaskan oleh simpul data ini. Misalnya, hostname STRING. Untuk beberapa nilai, gunakan nama kolom dan tipe data yang dipisahkan oleh spasi. String
induk Induk dari objek saat ini dari mana slot akan diwariskan. Objek Referensi, seperti “parent”: {"ref”:” myBaseObject Id "}

Bidang Runtime Deskripsi Jenis Slot
@version Versi alur digunakan untuk membuat objek. String

Bidang Sistem Deskripsi Jenis Slot
@error Kesalahan yang menggambarkan objek yang tidak terbentuk. String
@pipelineId Id dari alur tempat objek ini berada. String
@sphere Lingkup objek menunjukkan tempatnya dalam siklus hidup: Component Objects memunculkan Instance Objects yang mengeksekusi Attempt Objects. String