Sintaks berkas definisi pipa - AWS Data Pipeline

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

Sintaks berkas definisi pipa

Petunjuk di bagian ini adalah untuk bekerja secara manual dengan file definisi alur menggunakan antarmuka baris perintah (CLI) AWS Data Pipeline. Ini adalah alternatif untuk merancang alur secara interaktif menggunakan konsol AWS Data Pipeline.

Anda dapat membuat file definisi alur secara manual menggunakan editor teks apa pun yang mendukung penyimpanan file menggunakan format file UTF-8, dan mengirimkan file menggunakan antarmuka baris perintah AWS Data Pipeline.

AWS Data Pipeline juga mendukung berbagai ekspresi dan fungsi kompleks dalam definisi alur. Untuk informasi selengkapnya, lihat Ekspresi dan Fungsi Alur.

Struktur File

Langkah pertama dalam pembuatan alur adalah membuat objek definisi alur dalam file definisi alur. Contoh berikut mengilustrasikan struktur umum file definisi alur. File ini mendefinisikan dua objek, yang dibatasi oleh '{' dan '}', dan dipisahkan dengan koma.

Dalam contoh berikut, objek pertama mendefinisikan dua pasangan nama-nilai, yang dikenal sebagai bidang. Objek kedua mendefinisikan tiga bidang.

{ "objects" : [ { "name1" : "value1", "name2" : "value2" }, { "name1" : "value3", "name3" : "value4", "name4" : "value5" } ] }

Saat membuat file definisi alur, Anda harus memilih tipe objek alur yang Anda butuhkan, menambahkannya ke file definisi alur, lalu menambahkan bidang yang sesuai. Untuk informasi selengkapnya tentang objek alur, lihat Referensi Objek Alur.

Misalnya, Anda bisa membuat objek definisi alur untuk simpul data input dan yang lain untuk simpul data output. Kemudian buat objek definisi alur lain untuk suatu aktivitas, seperti memproses data input menggunakan Amazon EMR.

Bidang Alur

Setelah Anda mengetahui tipe objek mana yang akan disertakan dalam file definisi alur, Anda menambahkan bidang ke definisi setiap objek alur. Nama bidang diapit dalam tanda kutip, dan dipisahkan dari nilai bidang dengan spasi, titik dua, dan spasi, seperti yang diperlihatkan dalam contoh berikut.

"name" : "value"

Nilai bidang dapat berupa string teks, referensi ke objek lain, pemanggilan fungsi, ekspresi, atau daftar berurutan dari tipe sebelumnya. Untuk informasi selengkapnya tentang tipe data yang bisa digunakan untuk nilai bidang, lihat Tipe Data Sederhana. Untuk informasi selengkapnya tentang fungsi yang dapat Anda gunakan untuk mengevaluasi nilai bidang, lihat Evaluasi Ekspresi.

Bidang dibatasi hingga 2048 karakter. Objek dapat berukuran 20 KB, yang berarti Anda tidak dapat menambahkan banyak bidang besar ke objek.

Setiap objek alur harus berisi bidang berikut: id dan type, seperti yang ditunjukkan dalam contoh berikut. Bidang lain mungkin juga diperlukan berdasarkan tipe objek. Pilih nilai untuk id yang berarti bagi Anda, dan unik dalam definisi alur. Nilai untuk type menentukan tipe objek. Tentukan salah satu tipe objek definisi alur yang didukung, yang tercantum dalam topik Referensi Objek Alur.

{ "id": "MyCopyToS3", "type": "CopyActivity" }

Untuk informasi selengkapnya tentang bidang wajib dan opsional untuk setiap objek, lihat dokumentasi untuk objek tersebut.

Untuk menyertakan bidang dari satu objek ke objek lain, gunakan bidang parent dengan referensi ke objek. Misalnya, objek "B" mencakup bidangnya, "B1" dan "B2", ditambah bidang dari objek "A", "A1" dan "A2".

{ "id" : "A", "A1" : "value", "A2" : "value" }, { "id" : "B", "parent" : {"ref" : "A"}, "B1" : "value", "B2" : "value" }

Anda dapat menentukan bidang umum dalam objek dengan ID "Default". Bidang ini secara otomatis disertakan dalam setiap objek dalam file definisi alur yang tidak secara eksplisit mengatur bidang parent-nya untuk mereferensikan objek yang berbeda.

{ "id" : "Default", "onFail" : {"ref" : "FailureNotification"}, "maximumRetries" : "3", "workerGroup" : "myWorkerGroup" }

Bidang yang ditentukan pengguna

Anda dapat membuat bidang yang ditentukan pengguna atau bidang khusus pada komponen alur Anda dan merujuknya dengan ekspresi. Contoh berikut menunjukkan bidang kustom bernama myCustomField dan my_customFieldReference ditambahkan ke DataNode objek S3:

{ "id": "S3DataInput", "type": "S3DataNode", "schedule": {"ref": "TheSchedule"}, "filePath": "s3://bucket_name", "myCustomField": "This is a custom value in a custom field.", "my_customFieldReference": {"ref":"AnotherPipelineComponent"} },

Bidang yang ditentukan pengguna harus memiliki nama yang diawali dengan kata "saya" dalam huruf kecil semua, diikuti dengan huruf kapital atau karakter garis bawah. Selain itu, bidang yang ditentukan pengguna dapat berupa nilai string seperti contoh myCustomField sebelumnya, atau mereferensikan ke komponen alur lain seperti contoh my_customFieldReference sebelumnya.

catatan

Pada bidang yang ditentukan pengguna, AWS Data Pipeline hanya memeriksa referensi yang valid ke komponen alur lainnya, bukan nilai string bidang kustom apa pun yang Anda tambahkan.