Gunakan Apache Oozie dengan Apache Hadoop untuk menentukan dan menjalankan alur kerja pada Azure HDInsight berbasis Linux
Pelajari cara menggunakan Apache Oozie dengan Apache Hadoop di Microsoft Azure HDInsight. Oozie adalah sistem alur kerja dan koordinasi yang mengelola pekerjaan Hadoop. Oozie terintegrasi dengan tumpukan Hadoop, dan mendukung pekerjaan berikut:
- Apache Hadoop MapReduce
- Apache Babi
- Apache Hive 2.1.0
- Apache Sqoop
Anda juga dapat menggunakan Oozie untuk menjadwalkan pekerjaan yang khusus untuk sistem, seperti program Java atau skrip shell.
Catatan
Opsi lain untuk menentukan alur kerja dengan MIcrosoft Azure HDInsight adalah menggunakan Azure Data Factory. Untuk mempelajari selengkapnya tentang Data Factory, lihat Menggunakan Apache Pig dan Apache Hive dengan Data Factory. Untuk menggunakan Oozie pada kluster dengan Paket Keamanan Perusahaan, harap lihat Menjalankan Apache Oozie di kluster Microsoft Azure HDInsight Hadoop dengan Paket Keamanan Perusahaan.
Prasyarat
Kluster Hadoop di Microsoft Azure HDInsight. Lihat Mulai menggunakan Microsoft Azure HDInsight di Linux.
Klien SSH. Lihat Sambungkan ke Microsoft Azure HDInsight (Apache Hadoop) menggunakan SSH.
Azure SQL Database. Lihat Buat Azure SQL Database di portal Microsoft Azure. Artikel ini menggunakan database bernama oozietest.
Skema URI untuk penyimpanan utama kluster Anda.
wasb://
untuk Azure Storage,abfs://
untuk Azure Data Lake Storage Gen2 atauadl://
untuk Azure Data Lake Storage Gen1. Jika transfer aman diaktifkan untuk Azure Storage, URI akan menjadiwasbs://
. Lihat juga, transfer aman.
Contoh alur kerja
Alur kerja yang digunakan dalam dokumen ini berisi dua tindakan. Tindakan adalah definisi untuk tugas, seperti menjalankan Apache Hive, Sqoop, MapReduce, atau proses lainnya:
Tindakan Apache Hive menjalankan skrip HiveQL untuk mengekstrak rekaman dari
hivesampletable
yang disertakan dengan HDInsight. Setiap baris data menjelaskan kunjungan dari perangkat seluler tertentu. Format rekaman muncul seperti teks berikut:8 18:54:20 en-US Android Samsung SCH-i500 California United States 13.9204007 0 0 23 19:19:44 en-US Android HTC Incredible Pennsylvania United States NULL 0 0 23 19:19:46 en-US Android HTC Incredible Pennsylvania United States 1.4757422 0 1
Skrip Apache Hive yang digunakan dalam dokumen ini menghitung total kunjungan untuk setiap platform, seperti Android atau iPhone, dan menyimpan hitungan ke tabel Apache Hive baru.
Untuk informasi selengkapnya tentang Apache Hive, lihat [Gunakan Apache Hive dengan HDInsight][hdinsight-use-hive].
Tindakan Sqoop mengekspor konten tabel Apache Hive baru ke tabel yang dibuat di Azure SQL Database. Untuk informasi selengkapnya tentang Sqoop, lihat Gunakan Apache Sqoop dengan Microsoft Azure HDInsight.
Catatan
Untuk versi Oozie yang didukung di kluster Microsoft Azure HDInsight, lihat Apa yang baru dalam versi kluster Hadoop yang disediakan oleh Microsoft Azure HDInsight.
Buat direktori kerja
Oozie mengharapkan Anda untuk menyimpan semua sumber daya yang diperlukan untuk pekerjaan di direktori yang sama. Contoh ini menggunakanwasbs:///tutorials/useoozie
. Untuk membuat direktori ini, selesaikan langkah-langkah berikut:
Edit kode di bawah ini untuk mengganti
sshuser
dengan nama pengguna SSH untuk kluster, dan gantiCLUSTERNAME
dengan nama kluster. Kemudian masukkan kode untuk terhubung ke kluster Microsoft Azure HDInsight dengan menggunakan SSH.ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.net
Untuk membuat direktori, gunakan perintah berikut:
hdfs dfs -mkdir -p /tutorials/useoozie/data
Catatan
Parameter
-p
menyebabkan pembuatan semua direktori di jalur tersebut. Direktoridata
digunakan untuk menyimpan data yang digunakan oleh skripuseooziewf.hql
.Edit kode di bawah ini untuk mengganti
sshuser
dengan nama pengguna SSH Anda. Untuk memastikan bahwa Oozie dapat meniru akun pengguna Anda, gunakan perintah berikut:sudo adduser sshuser users
Catatan
Anda dapat mengabaikan kesalahan yang mengindikasikan bahwa pengguna sudah menjadi anggota grup
users
.
Tambahkan driver database
Alur kerja ini menggunakan Sqoop untuk mengekspor data ke database SQL. Jadi Anda harus memberikan salinan driver JDBC yang digunakan untuk berinteraksi dengan database SQL. Untuk menyalin driver JDBC ke direktori kerja, gunakan perintah berikut dari sesi SSH:
hdfs dfs -put /usr/share/java/sqljdbc_7.0/enu/mssql-jdbc*.jar /tutorials/useoozie/
Penting
Verifikasi driver JDBC aktual yang ada di /usr/share/java/
.
Jika alur kerja Anda menggunakan sumber daya lain, seperti jar yang berisi aplikasi MapReduce, Anda juga perlu menambahkan sumber daya tersebut.
Tentukan kueri Apache Hive
Gunakan langkah-langkah berikut untuk membuat skrip bahasa komputer kueri Apache Hive (HiveQL) yang menentukan kueri. Anda akan menggunakan kueri dalam alur kerja Oozie nanti di dokumen ini.
Dari koneksi SSH, gunakan perintah berikut untuk membuat file bernama
useooziewf.hql
:nano useooziewf.hql
Setelah editor nano GNU terbuka, gunakan kueri berikut sebagai konten file:
DROP TABLE ${hiveTableName}; CREATE EXTERNAL TABLE ${hiveTableName}(deviceplatform string, count string) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' STORED AS TEXTFILE LOCATION '${hiveDataFolder}'; INSERT OVERWRITE TABLE ${hiveTableName} SELECT deviceplatform, COUNT(*) as count FROM hivesampletable GROUP BY deviceplatform;
Ada dua variabel yang digunakan dalam skrip:
${hiveTableName}
: Berisi nama tabel yang akan dibuat.${hiveDataFolder}
: Berisi lokasi untuk menyimpan file data untuk tabel.File definisi alur kerja, workflow.xml artikel ini, meneruskan nilai-nilai ini ke skrip HiveQL ini pada runtime.
Untuk menyimpan file, pilih Ctrl+X, masukkan Y, lalu pilih Enter.
Gunakan perintah berikut untuk menyalin
useooziewf.hql
kewasbs:///tutorials/useoozie/useooziewf.hql
:hdfs dfs -put useooziewf.hql /tutorials/useoozie/useooziewf.hql
Perintah ini menyimpan file
useooziewf.hql
dalam penyimpanan yang kompatibel dengan HDFS untuk kluster.
Tentukan alur kerja
Definisi alur kerja Oozie ditulis dalam Hadoop Process Definition Language (hPDL), yang merupakan bahasa definisi proses XML. Ikuti langkah-langkah berikut untuk menentukan alur kerja:
Gunakan pernyataan berikut untuk membuat dan mengedit file baru:
nano workflow.xml
Setelah editor nano terbuka, masukkan XML berikut sebagai konten file:
<workflow-app name="useooziewf" xmlns="uri:oozie:workflow:0.2"> <start to = "RunHiveScript"/> <action name="RunHiveScript"> <hive xmlns="uri:oozie:hive-action:0.2"> <job-tracker>${jobTracker}</job-tracker> <name-node>${nameNode}</name-node> <configuration> <property> <name>mapred.job.queue.name</name> <value>${queueName}</value> </property> </configuration> <script>${hiveScript}</script> <param>hiveTableName=${hiveTableName}</param> <param>hiveDataFolder=${hiveDataFolder}</param> </hive> <ok to="RunSqoopExport"/> <error to="fail"/> </action> <action name="RunSqoopExport"> <sqoop xmlns="uri:oozie:sqoop-action:0.2"> <job-tracker>${jobTracker}</job-tracker> <name-node>${nameNode}</name-node> <configuration> <property> <name>mapred.compress.map.output</name> <value>true</value> </property> </configuration> <arg>export</arg> <arg>--connect</arg> <arg>${sqlDatabaseConnectionString}</arg> <arg>--table</arg> <arg>${sqlDatabaseTableName}</arg> <arg>--export-dir</arg> <arg>${hiveDataFolder}</arg> <arg>-m</arg> <arg>1</arg> <arg>--input-fields-terminated-by</arg> <arg>"\t"</arg> <archive>mssql-jdbc-7.0.0.jre8.jar</archive> </sqoop> <ok to="end"/> <error to="fail"/> </action> <kill name="fail"> <message>Job failed, error message[${wf:errorMessage(wf:lastErrorNode())}] </message> </kill> <end name="end"/> </workflow-app>
Ada dua tindakan yang ditentukan dalam alur kerja:
RunHiveScript
: Tindakan ini adalah tindakan awal dan menjalankan skrip Apache Hiveuseooziewf.hql
.RunSqoopExport
: Tindakan ini mengekspor data yang dibuat dari skrip Apache Hive ke database SQL dengan menggunakan Sqoop. Tindakan ini hanya berjalan jika tindakanRunHiveScript
berhasil.Alur kerja memiliki beberapa entri, seperti
${jobTracker}
. Anda akan mengganti entri ini dengan nilai yang Anda gunakan dalam definisi kerja. Anda akan membuat definisi kerja nanti di dokumen ini.Perhatikan juga entri
<archive>mssql-jdbc-7.0.0.jre8.jar</archive>
di bagian Sqoop. Entri ini menginstruksikan Oozie untuk menyediakan arsip ini untuk Sqoop ketika tindakan ini berjalan.
Untuk menyimpan file, pilih Ctrl+X, masukkan Y, lalu pilih Enter.
Gunakan perintah berikut untuk menyalin
workflow.xml
file ke/tutorials/useoozie/workflow.xml
:hdfs dfs -put workflow.xml /tutorials/useoozie/workflow.xml
Buat tabel
Catatan
Ada banyak cara untuk menyambungkan ke Azure SQL Database dan buat tabel. Langkah-langkah berikut menggunakan FreeTDS dari kluster HDInsight.
Gunakan perintah berikut untuk memasang FreeTDS pada kluster Microsoft Azure HDInsight:
sudo apt-get --assume-yes install freetds-dev freetds-bin
Edit kode di bawah ini untuk mengganti
<serverName>
dengan nama server SQL logis Anda, dan<sqlLogin>
dengan login server. Masukkan perintah untuk menyambungkan ke database SQL prasyarat. Masukkan kata sandi pada permintaan.TDSVER=8.0 tsql -H <serverName>.database.windows.net -U <sqlLogin> -p 1433 -D oozietest
Anda menerima output seperti teks berikut:
locale is "en_US.UTF-8" locale charset is "UTF-8" using default charset "UTF-8" Default database being set to oozietest 1>
Di perintah
1>
, masukkan baris berikut:CREATE TABLE [dbo].[mobiledata]( [deviceplatform] [nvarchar](50), [count] [bigint]) GO CREATE CLUSTERED INDEX mobiledata_clustered_index on mobiledata(deviceplatform) GO
Ketika pernyataan
GO
dimasukkan, pernyataan sebelumnya dievaluasi. Pernyataan ini membuat tabel, bernamamobiledata
, yang digunakan oleh alur kerja.Untuk memverifikasi bahwa tabel telah dibuat, gunakan perintah berikut:
SELECT * FROM information_schema.tables GO
Anda melihat output seperti teks berikut:
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE oozietest dbo mobiledata BASE TABLE
Keluar dari utilitas tsql dengan memasukkan
exit
di permintaan1>
.
Buat definisi kerja
Definisi kerja menjelaskan tempat untuk menemukan workflow.xml. Definisi kerja juga menjelaskan tempat untuk menemukan file lain yang digunakan oleh alur kerja, seperti useooziewf.hql
. Selain itu, definisi kerja ini mendefinisikan nilai untuk properti yang digunakan dalam alur kerja dan file terkait.
Untuk mendapatkan alamat lengkap penyimpanan default, gunakan perintah berikut. Alamat ini digunakan dalam file konfigurasi yang Anda buat di langkah berikutnya.
sed -n '/<name>fs.default/,/<\/value>/p' /etc/hadoop/conf/core-site.xml
Perintah ini mengembalikan informasi seperti XML berikut ini:
<name>fs.defaultFS</name> <value>wasbs://mycontainer@mystorageaccount.blob.core.windows.net</value>
Catatan
Jika kluster Microsoft Azure HDInsight menggunakan Azure Storage sebagai penyimpanan default, konten elemen
<value>
dimulai denganwasbs://
. Jika Azure Data Lake Storage Gen1 digunakan sebagai gantinya, maka akan dimulai denganadl://
. Jika Azure Data Lake Storage Gen2 digunakan sebagai gantinya, maka akan dimulai denganabfs://
.Simpan konten elemen
<value>
, seperti yang digunakan di langkah berikutnya.Edit xml di bawah ini sebagai berikut:
Nilai tempat penampung Nilai yang diganti wasbs://mycontainer@mystorageaccount.blob.core.windows.net Nilai diterima dari langkah 1. admin Nama login Anda untuk kluster Microsoft Azure HDInsight jika bukan admin. serverName Nama server Azure SQL Database. sqlLogin Login server Azure SQL Database. sqlPassword Kata sandi login server Azure SQL Database. <?xml version="1.0" encoding="UTF-8"?> <configuration> <property> <name>nameNode</name> <value>wasbs://mycontainer@mystorageaccount.blob.core.windows.net</value> </property> <property> <name>jobTracker</name> <value>headnodehost:8050</value> </property> <property> <name>queueName</name> <value>default</value> </property> <property> <name>oozie.use.system.libpath</name> <value>true</value> </property> <property> <name>hiveScript</name> <value>wasbs://mycontainer@mystorageaccount.blob.core.windows.net/tutorials/useoozie/useooziewf.hql</value> </property> <property> <name>hiveTableName</name> <value>mobilecount</value> </property> <property> <name>hiveDataFolder</name> <value>wasbs://mycontainer@mystorageaccount.blob.core.windows.net/tutorials/useoozie/data</value> </property> <property> <name>sqlDatabaseConnectionString</name> <value>"jdbc:sqlserver://serverName.database.windows.net;user=sqlLogin;password=sqlPassword;database=oozietest"</value> </property> <property> <name>sqlDatabaseTableName</name> <value>mobiledata</value> </property> <property> <name>user.name</name> <value>admin</value> </property> <property> <name>oozie.wf.application.path</name> <value>wasbs://mycontainer@mystorageaccount.blob.core.windows.net/tutorials/useoozie</value> </property> </configuration>
Sebagian besar informasi dalam file ini digunakan untuk mengisi nilai yang digunakan dalam file workflow.xml atau ooziewf.hql, seperti
${nameNode}
. Jika jalur tersebut adalah jalurwasbs
, Anda harus menggunakan jalur lengkap. Jangan mempersingkat hanya menjadiwasbs:///
. Entrioozie.wf.application.path
menentukan tempat untuk menemukan file workflow.xml. File ini memuat alur kerja yang dijalankan oleh tugas ini.Untuk membuat konfigurasi definisi kerja Oozie, gunakan perintah berikut:
nano job.xml
Setelah editor nano terbuka, tempel XML yang diedit sebagai konten file.
Untuk menyimpan file, pilih Ctrl+X, masukkan Y, lalu pilih Enter.
Kirim dan kelola pekerjaan
Langkah-langkah berikut menggunakan perintah Oozie untuk mengirimkan dan mengelola alur kerja Oozie pada kluster. Perintah Oozie adalah antarmuka yang mudah digunakan melalui API Oozie REST.
Penting
Ketika Anda menggunakan perintah Oozie, Anda harus menggunakan FQDN untuk simpul kepala HDInsight. FQDN ini hanya dapat diakses dari kluster, atau jika kluster berada di jaringan virtual Azure, dari mesin lain di jaringan yang sama.
Untuk mendapatkan URL ke layanan Oozie, gunakan perintah berikut:
sed -n '/<name>oozie.base.url/,/<\/value>/p' /etc/oozie/conf/oozie-site.xml
Perintah ini mengembalikan informasi seperti XML berikut ini:
<name>oozie.base.url</name> <value>http://ACTIVE-HEADNODE-NAME.UNIQUEID.cx.internal.cloudapp.net:11000/oozie</value>
Bagian
http://ACTIVE-HEADNODE-NAME.UNIQUEID.cx.internal.cloudapp.net:11000/oozie
tersebut adalah URL yang akan digunakan dengan perintah Oozie.Edit kode untuk mengganti URL dengan yang Anda terima sebelumnya. Untuk membuat variabel lingkungan untuk URL, gunakan yang berikut ini, sehingga Anda tidak perlu memasukkannya untuk setiap perintah:
export OOZIE_URL=http://HOSTNAMEt:11000/oozie
Untuk mengirimkan pekerjaan, gunakan kode berikut:
oozie job -config job.xml -submit
Perintah ini memuat informasi pekerjaan dari
job.xml
dan mengirimkannya ke Oozie, tetapi tidak menjalankannya.Setelah perintah selesai, ID pekerjaan harus dikembalikan, misalnya,
0000005-150622124850154-oozie-oozi-W
. ID ini digunakan untuk mengelola pekerjaan.Edit kode di bawah ini untuk mengganti
<JOBID>
dengan ID yang dikembalikan pada langkah sebelumnya. Untuk melihat status pekerjaan, gunakan perintah berikut:oozie job -info <JOBID>
Perintah ini mengembalikan informasi seperti teks berikut ini:
Job ID : 0000005-150622124850154-oozie-oozi-W ------------------------------------------------------------------------------------------------------------------------------------ Workflow Name : useooziewf App Path : wasb:///tutorials/useoozie Status : PREP Run : 0 User : USERNAME Group : - Created : 2015-06-22 15:06 GMT Started : - Last Modified : 2015-06-22 15:06 GMT Ended : - CoordAction ID: - ------------------------------------------------------------------------------------------------------------------------------------
Pekerjaan ini memiliki status
PREP
. Status ini menunjukkan bahwa pekerjaan telah dibuat, tetapi belum dimulai.Edit kode di bawah ini untuk mengganti
<JOBID>
dengan ID yang dikembalikan sebelumnya. Untuk memulai pekerjaan, gunakan perintah berikut:oozie job -start <JOBID>
Jika Anda memeriksa status setelah perintah ini, statusnya dalam keadaan berjalan, dan informasi dikembalikan untuk tindakan dalam pekerjaan. Pekerjaan akan memakan waktu beberapa menit untuk menyelesaikannya.
Edit kode di bawah ini untuk mengganti
<serverName>
dengan nama server Anda, dan<sqlLogin>
dengan login server. Setelah tugas selesai dengan sukses, Anda dapat memverifikasi bahwa data dihasilkan dan diekspor ke tabel database SQL dengan menggunakan perintah berikut ini. Masukkan kata sandi pada permintaan.TDSVER=8.0 tsql -H <serverName>.database.windows.net -U <sqlLogin> -p 1433 -D oozietest
Di perintah
1>
, masukkan baris berikut:SELECT * FROM mobiledata GO
Informasi yang dikembalikan seperti teks berikut:
deviceplatform count Android 31591 iPhone OS 22731 proprietary development 3 RIM OS 3464 Unknown 213 Windows Phone 1791 (6 rows affected)
Untuk informasi selengkapnya tentang perintah Oozie, lihat alat baris alat baris perintah Apache Oozie.
REST API Oozie
Dengan REST API Oozie, Anda dapat membangun alat Anda sendiri yang berfungsi dengan Oozie. Informasi spesifik HDInsight berikut tentang penggunaan REST API Oozie:
URI: Anda dapat mengakses REST API dari luar kluster di
https://CLUSTERNAME.azurehdinsight.net/oozie
.Autentikasi: Untuk mengautentikasi, gunakan API akun HTTP kluster (admin) dan kata sandi. Contohnya:
curl -u admin:PASSWORD https://CLUSTERNAME.azurehdinsight.net/oozie/versions
Untuk informasi selengkapnya tentang cara menggunakan REST API Oozie, lihat API Layanan Web Apache Oozie.
Oozie web UI
Oozie web UI menyediakan tampilan berbasis web ke dalam status pekerjaan Oozie pada kluster. Dengan UI web Anda bisa melihat informasi berikut:
- Status pekerjaan
- Definisi tugas
- Konfigurasi
- Grafik tindakan dalam pekerjaan
- Log untuk pekerjaan
Anda juga dapat melihat detail tindakan dalam pekerjaan.
Untuk mengakses UI web Oozie, selesaikan langkah-langkah berikut:
Buat perowonganan SSH ke kluster Microsoft Azure HDInsight. Untuk informasi selengkapnya, lihat Gunakan Penerowongan SSH dengan Microsoft Azure HDInsight.
Setelah Anda membuat perowonganan, buka UI web Ambari di browser web Anda menggunakan URI
http://headnodehost:8080
.Dari sisi kiri halaman, pilih Oozie>Tautan Cepat>UI Web Oozie.
UI web Oozie default untuk menampilkan pekerjaan alur kerja yang sedang berjalan. Untuk melihat semua pekerjaan alur kerja, pilih Semua Pekerjaan.
Untuk melihat informasi selengkapnya tentang pekerjaan, pilih pekerjaan.
Dari tab Info Pekerjaan, Anda dapat melihat informasi dasar pekerjaan dan tindakan individual dalam pekerjaan. Anda dapat menggunakan tab di bagian atas untuk melihat Definisi Kerja, Konfigurasi Pekerjaan, mengakses Log Pekerjaan, atau melihat grafik asiklik terarah (DAG) pekerjaan di bawah DAG Pekerjaan.
Log Pekerjaan: Pilih tombol Dapatkan Log untuk mendapatkan semua log untuk pekerjaan tersebut, atau gunakan
Enter Search Filter
bidang untuk memfilter log.DAG Pekerjaan: DAG adalah ringkasan grafik dari jalur data yang diambil melalui alur kerja.
Jika Anda memilih salah satu tindakan dari tab Info Pekerjaan, tindakan tersebut akan memunculkan informasi untuk tindakan tersebut. Misalnya, pilih tindakan RunSqoopExport.
Anda dapat melihat detail tindakan, seperti tautan ke URL Konsol. Gunakan tautan ini untuk melihat informasi pelacak pekerjaan untuk pekerjaan tersebut.
Jadwalkan pekerjaan
Anda dapat menggunakan koordinator untuk menentukan awal, akhir, dan frekuensi kejadian untuk pekerjaan. Untuk menentukan jadwal alur kerja, selesaikan langkah-langkah berikut ini:
Gunakan perintah berikut untuk membuat file bernama coordinator.xml:
nano coordinator.xml
Gunakan XML berikut sebagai konten file:
<coordinator-app name="my_coord_app" frequency="${coordFrequency}" start="${coordStart}" end="${coordEnd}" timezone="${coordTimezone}" xmlns="uri:oozie:coordinator:0.4"> <action> <workflow> <app-path>${workflowPath}</app-path> </workflow> </action> </coordinator-app>
Catatan
Variabel
${...}
digantikan oleh nilai dalam definisi pekerjaan pada runtime. Variabelnya adalah:${coordFrequency}
: Waktu antara menjalankan instans pekerjaan.${coordStart}
: Waktu mulai pekerjaan.${coordEnd}
: Waktu akhir pekerjaan.${coordTimezone}
: Pekerjaan koordinator berada di zona waktu tetap tanpa daylight saving time, biasanya diwakili dengan menggunakan UTC. Zona waktu ini disebut sebagai zona waktu pemrosesan Oozie.${wfPath}
: Jalur menuju alur kerja.xml.
Untuk menyimpan file, pilih Ctrl+X, masukkan Y, lalu pilih Enter.
Untuk menyalin file ke direktori kerja untuk tugas ini, gunakan perintah berikut:
hadoop fs -put coordinator.xml /tutorials/useoozie/coordinator.xml
Untuk mengubah file
job.xml
yang Anda buat sebelumnya, gunakan perintah berikut:nano job.xml
Lakukan perubahan berikut:
Untuk menginstruksikan Oozie untuk menjalankan file koordinator alih-alih alur kerja, ubah
<name>oozie.wf.application.path</name>
ke<name>oozie.coord.application.path</name>
.Untuk mengatur variabel
workflowPath
yang digunakan oleh koordinator, tambahkan XML berikut:<property> <name>workflowPath</name> <value>wasbs://mycontainer@mystorageaccount.blob.core.windows.net/tutorials/useoozie</value> </property>
Ganti teks
wasbs://mycontainer@mystorageaccount.blob.core.windows
dengan nilai yang digunakan dalam entri lain dalam job.xml file.Untuk menentukan awal, akhir, dan frekuensi untuk koordinator, tambahkan XML berikut:
<property> <name>coordStart</name> <value>2018-05-10T12:00Z</value> </property> <property> <name>coordEnd</name> <value>2018-05-12T12:00Z</value> </property> <property> <name>coordFrequency</name> <value>1440</value> </property> <property> <name>coordTimezone</name> <value>UTC</value> </property>
Nilai-nilai ini mengatur waktu mulai menjadi 12.00 siang pada 10 Mei 2018, dan waktu akhir hingga 12 Mei 2018. Interval untuk menjalankan pekerjaan ini diatur ke harian. Frekuensi dalam hitungan menit, jadi 24 jam x 60 menit = 1440 menit. Akhirnya, zona waktu diatur ke UTC.
Untuk menyimpan file, pilih Ctrl+X, masukkan Y, lalu pilih Enter.
Untuk memulai pekerjaan, gunakan perintah berikut:
oozie job -config job.xml -run
Jika Anda masuk ke UI web Oozie dan memilih tab Pekerjaan Koordinator, Anda akan melihat informasi seperti dalam gambar berikut:
Entri Materialisasi Berikutnya berisi waktu berikutnya saat pekerjaan berjalan.
Seperti pekerjaan alur kerja sebelumnya, jika Anda memilih entri pekerjaan di UI web, entri tersebut menampilkan informasi tentang pekerjaan:
Catatan
Gambar ini hanya memperlihatkan keberhasilan menjalankan pekerjaan, bukan tindakan individual dalam alur kerja terjadwal. Untuk melihat tindakan individual, pilih salah satu entri Tindakan.
Langkah berikutnya
Dalam artikel ini, Anda belajar cara menentukan alur kerja Oozie dan cara menjalankan pekerjaan Oozie. Untuk mempelajari selengkapnya tentang cara bekerja dengan Microsoft Azure HDInsight, lihat artikel berikut ini: