HiveActivity - AWS Data Pipeline

AWS Data Pipeline tidak lagi tersedia untuk pelanggan baru. Pelanggan yang sudah ada dari 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.

HiveActivity

Menjalankan query Hive pada sebuah EMR cluster. HiveActivitymembuatnya lebih mudah untuk mengatur EMR aktivitas Amazon dan secara otomatis membuat tabel Hive berdasarkan data input yang masuk dari Amazon S3 atau Amazon. RDS Yang perlu Anda tentukan adalah HiveQL untuk dijalankan pada data sumber. AWS Data Pipeline secara otomatis membuat tabel Hive dengan ${input1}${input2},, dan seterusnya, berdasarkan bidang input dalam HiveActivity objek.

Untuk input Amazon S3, bidang dataFormat digunakan untuk membuat nama kolom Hive.

Untuk input Saya SQL (AmazonRDS), nama kolom untuk SQL kueri digunakan untuk membuat nama kolom Hive.

catatan

Kegiatan ini menggunakan Hive CSVSerde.

Contoh

Berikut adalah contoh dari jenis objek ini. Objek ini mereferensikan tiga objek lain yang akan Anda tetapkan dalam file definisi alur yang sama. MySchedule adalah objek Schedule dan MyS3Input dan MyS3Output adalah objek simpul data.

{ "name" : "ProcessLogData", "id" : "MyHiveActivity", "type" : "HiveActivity", "schedule" : { "ref": "MySchedule" }, "hiveScript" : "INSERT OVERWRITE TABLE ${output1} select host,user,time,request,status,size from ${input1};", "input" : { "ref": "MyS3Input" }, "output" : { "ref": "MyS3Output" }, "runsOn" : { "ref": "MyEmrCluster" } }

Sintaks

Bidang Invokasi Objek Deskripsi Jenis Slot
jadwal Objek ini dipanggil dalam pelaksanaan interval jadwal. Tentukan referensi jadwal ke objek lain untuk mengatur urutan eksekusi dependensi untuk objek ini. Anda dapat memenuhi persyaratan ini dengan secara eksplisit mengatur jadwal pada objek, misalnya, dengan menentukan “jadwal”: {"ref”: "“}. DefaultSchedule Dalam kebanyakan kasus, lebih baik untuk menempatkan referensi jadwal pada objek alur default sehingga semua objek mewarisi jadwal itu. Atau, jika alur memiliki pohon jadwal (jadwal dalam jadwal utama), Anda dapat membuat objek induk yang memiliki referensi jadwal. Untuk informasi selengkapnya tentang konfigurasi jadwal opsional, lihat https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html. Objek Referensi, misalnya “schedule”: {"ref”:” myScheduleId “}

Grup yang diperlukan (Salah satu dari berikut ini diperlukan) Deskripsi Jenis Slot
hiveScript Script Hive untuk dijalankan. String
scriptUri Lokasi skrip Hive untuk dijalankan (misalnya, s3://scriptLocation). String

Grup yang Diperlukan Deskripsi Jenis Slot
runsOn EMRCluster tempat ini HiveActivity berjalan. Objek Referensi, misalnya "runsOn“: {" ref”:” myEmrCluster Id "}
workerGroup Kelompok pekerja. Ini digunakan untuk tugas perutean. Jika Anda memberikan nilai runsOn dan workerGroup ada, workerGroup akan diabaikan. String
input Sumber data input. Objek Referensi, seperti “input”: {"ref”:” myDataNode Id "}
output Sumber data output. Objek Referensi, seperti “output”: {"ref”:” myDataNode Id "}

Bidang Opsional Deskripsi Jenis Slot
attemptStatus Baru-baru ini melaporkan status dari aktivitas jarak jauh. String
attemptTimeout Timeout untuk penyelesaian pekerjaan jarak jauh. Jika disetel, maka aktivitas jarak jauh yang tidak lengkap dalam waktu mulai yang ditetapkan mungkin dicoba lagi. Periode
dependsOn Tentukan dependensi pada objek yang bisa dijalankan lainnya. Objek Referensi, seperti "dependsOn“: {" ref”:” myActivityId “}
failureAndRerunModus Menjelaskan perilaku simpul konsumen ketika dependensi gagal atau menjalankan kembali. Pencacahan
hadoopQueue Nama antrean penjadwal Hadoop tempat tugas akan dikirimkan. String
lateAfterTimeout Waktu berlalu setelah alur mulai di mana objek harus menyelesaikan. Hal ini dipicu hanya ketika jenis jadwal tidak disetel ke ondemand. Periode
maxActiveInstances Jumlah maksimum instans aktif bersamaan dari suatu komponen. Re-runs tidak dihitung terhadap jumlah instans aktif. Bilangan Bulat
maximumRetries Jumlah maksimum upaya mencoba ulang pada kegagalan. Bilangan Bulat
onFail Tindakan untuk dijalankan ketika objek saat ini gagal. Objek Referensi, seperti "onFail“: {" ref”:” myActionId “}
onLateAction Tindakan yang harus dipicu jika objek belum dijadwalkan atau masih belum selesai. Objek Referensi, seperti "onLateAction“: {" ref”:” myActionId “}
onSuccess Tindakan untuk dijalankan ketika objek saat ini berhasil. Objek Referensi, seperti "onSuccess“: {" ref”:” myActionId “}
induk Induk dari objek saat ini dari mana slot akan diwariskan. Objek Referensi, seperti “parent”: {"ref”:” myBaseObject Id "}
pipelineLogUri S3 URI (seperti 's3://BucketName/Key/ ') untuk mengunggah log untuk pipeline. String
postActivityTaskConfig Script konfigurasi post-activity yang akan dijalankan. Ini terdiri dari skrip shell di Amazon S3 dan daftar argumen. URI Objek Referensi, seperti "postActivityTaskConfig”: {"ref”:” “} myShellScript ConfigId
preActivityTaskConfig Script konfigurasi post-activity yang akan dijalankan. Ini terdiri dari skrip shell di Amazon S3 dan daftar argumen. URI Objek Referensi, seperti "preActivityTaskConfig”: {"ref”:” “} myShellScript ConfigId
prasyarat Mendefinisikan prasyarat secara opsional. Node data tidak ditandai "READY" sampai semua prasyarat terpenuhi. Objek Referensi, seperti “prasyarat”: {"ref”:” “myPreconditionId}
reportProgressTimeout Timeout untuk panggilan berurutan kerja jarak jauh ke reportProgress. Jika disetel, maka kegiatan jarak jauh yang tidak melaporkan kemajuan untuk jangka waktu tertentu dapat dianggap terhenti dan jadi dicoba lagi. Periode
resizeClusterBeforeBerlari Mengubah ukuran klaster sebelum melakukan aktivitas ini untuk mengakomodasi simpul data DynamoDB ditentukan sebagai input atau output.
catatan

Jika aktivitas Anda menggunakan node data input atau output, dan jika Anda menyetelnya resizeClusterBeforeRunningTRUE, AWS Data Pipeline mulailah menggunakan tipe m3.xlarge instance. DynamoDBDataNode Ini akan menimpa pilihan tipe instans Anda dengan m3.xlarge, yang dapat menambah biaya bulanan Anda.

Boolean
resizeClusterMaxContoh Batas pada jumlah maksimum instans yang dapat diminta oleh algoritme resize. Bilangan Bulat
retryDelay Durasi timeout antara dua upaya coba lagi. Periode
scheduleType Jenis jadwal mengizinkan Anda untuk menentukan apakah objek dalam definisi alur Anda harus dijadwalkan pada awal interval atau akhir interval. Penjadwalan Gaya Deret Waktu berarti instans dijadwalkan pada akhir setiap interval dan Penjadwalan Gaya Cron berarti intans dijadwalkan pada awal setiap interval. Jadwal sesuai permintaan mengizinkan Anda untuk menjalankan alur satu kali per aktivasi. Ini berarti Anda tidak perlu meng-klon atau membuat ulang alur untuk menjalankannya lagi. Jika Anda menggunakan jadwal sesuai permintaan, itu harus ditentukan dalam objek default dan harus menjadi satu-satunya yang scheduleType ditentukan untuk objek dalam pipeline. Untuk menggunakan saluran pipa sesuai permintaan, Anda cukup memanggil ActivatePipeline operasi untuk setiap proses berikutnya. Nilai adalah: cron, ondemand, dan timeseries. Pencacahan
scriptVariable Menentukan variabel skrip untuk Amazon EMR untuk diteruskan ke Hive saat menjalankan skrip. Misalnya, variabel skrip contoh berikut akan meneruskan variabel SAMPLE and FILTER _ DATE ke Hive: SAMPLE=s3://elasticmapreduce/samples/hive-ads dan FILTER_DATE=#{format(@scheduledStartTime,'YYYY-MM-dd')}%. Bidang ini menerima beberapa nilai dan bekerja dengan bidang script dan scriptUri. Selain itu, fungsi scriptVariable terlepas dari apakah stage diatur ke true atau false. Bidang ini sangat berguna untuk mengirim nilai-nilai dinamis untuk Hive menggunakan ekspresi dan fungsi AWS Data Pipeline . String
stage Menentukan apakah staging diaktifkan sebelum atau setelah menjalankan script. Tidak diizinkan dengan Hive 11, jadi gunakan Amazon EMR AMI versi 3.2.0 atau lebih tinggi. Boolean

Bidang Runtime Deskripsi Jenis Slot
@activeInstances Daftar objek instans aktif terjadwal saat ini. Objek Referensi, seperti "activeInstances“: {" ref”:” myRunnableObject Id "}
@actualEndTime Waktu ketika eksekusi objek ini selesai. DateTime
@actualStartTime Waktu ketika eksekusi objek ini dimulai. DateTime
cancellationReason cancellationReason Jika objek ini dibatalkan. String
@cascadeFailedOn Deskripsi rantai dependensi tempat objek gagal. Objek Referensi, seperti "cascadeFailedOn“: {" ref”:” myRunnableObject Id "}
emrStepLog Log EMR langkah Amazon hanya tersedia pada upaya EMR aktivitas. String
errorId errorId Jika objek ini gagal. String
errorMessage errorMessage Jika objek ini gagal. String
errorStackTrace Jejak tumpukan kesalahan jika objek ini gagal. String
@finishedTime Waktu saat objek ini menyelesaikan eksekusinya. DateTime
hadoopJobLog Log pekerjaan Hadoop tersedia pada upaya untuk aktivitas EMR berbasis. String
@healthStatus Status kondisi objek yang mencerminkan keberhasilan atau kegagalan instans objek terakhir yang mencapai keadaan dihentikan. String
@healthStatusFromInstanceId Id dari objek instans terakhir yang mencapai keadaan dihentikan. String
@ healthStatusUpdated Waktu Waktu di mana status kondisi diperbarui terakhir kali. DateTime
hostname Nama host klien yang mengambil upaya tugas. String
@lastDeactivatedTime Waktu di mana objek ini terakhir dinonaktifkan. DateTime
@ latestCompletedRun Waktu Waktu proses terakhir yang eksekusinya selesai. DateTime
@latestRunTime Waktu proses terakhir untuk eksekusi yang dijadwalkan. DateTime
@nextRunTime Waktu run yang akan dijadwalkan berikutnya. DateTime
reportProgressTime Waktu terbaru bahwa aktivitas jarak jauh melaporkan kemajuan. DateTime
@scheduledEndTime Jadwalkan waktu akhir untuk sebuah objek. DateTime
@scheduledStartTime Jadwalkan waktu mulai untuk sebuah objek. DateTime
@status Status objek ini. String
@version Versi alur objek dibuat dengan. String
@waitingOn Deskripsi daftar dependensi objek ini sedang menunggu. Objek Referensi, seperti "waitingOn“: {" ref”:” myRunnableObject Id "}

Bidang Sistem Deskripsi Jenis Slot
@error Galat 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

Lihat Juga