Saat mengedit Pekerjaan, Anda dapat menetapkan variabel wildcard waktu dalam parameter Pekerjaan.
Format wildcard variabel
E-MapReduce mendukung variabel wildcard dalam format ${dateexpr-1d} atau ${dateexpr-1h}. Dalam format ini, dateexpr merepresentasikan ekspresi format waktu standar. Tabel berikut menjelaskan spesifikasi format tersebut.
Penting Spesifikasi format waktu bersifat case-sensitive.
| Format | Deskripsi |
| yyyy | Tahun dalam bentuk angka empat digit. |
| MM | Bulan dalam bentuk angka dua digit (01–12). |
| dd | Hari dalam bulan dalam bentuk angka dua digit (01–31). |
| HH | Jam dalam format 24 jam (00–23). Gunakan hh untuk format 12 jam. |
| mm | Menit dalam bentuk angka dua digit (00–59). |
| ss | Detik dalam bentuk angka dua digit (00–59). |
Variabel waktu dapat berupa kombinasi apa pun dari spesifikasi waktu yang mencakup yyyy. Anda dapat menggunakan tanda plus (+) dan minus (-) untuk menentukan offset waktu. Sebagai contoh, jika variabel ${yyyy-MM-dd} merepresentasikan tanggal saat ini:
- Satu hari setelahnya: ${yyyyMMdd+1d} atau ${yyyy-MM-dd hh:mm:ss+1d}.
- Tiga jam setelahnya: ${yyyyMMddHH+3h} atau ${yyyy-MM-dd hh:mm:ss+3h}.
- Lima hari sebelumnya: ${yyyyMMdd-5d} atau ${yyyy-MM-dd hh:mm:ss-5d}.
Sebagai contoh, asumsikan waktu saat ini adalah 20160427 12:08:01:
- Memasukkan ${yyyyMMdd HH:mm:ss-1d} dalam parameter Pekerjaan akan diuraikan menjadi 20160426 12:08:01 pada waktu proses. Ekspresi ini mengurangi satu hari dari waktu saat ini, dengan mempertahankan presisi hingga detik.
- Ekspresi ${yyyyMMdd-1d} akan diuraikan menjadi 20160426 pada waktu proses, yang merepresentasikan hari sebelumnya.
- Ekspresi ${yyyyMMdd} akan diuraikan menjadi 20160427 pada waktu proses, yang merepresentasikan tanggal saat ini.
Catatan
- Saat ini, E-MapReduce hanya mendukung offset untuk hari dan jam. Artinya, bagian offset dari variabel harus menggunakan format
+Nd,-Nd,+Nh, atau-Nh, denganNsebagai bilangan bulat. - Parameter variabel waktu harus dimulai dengan
yyyy, seperti ${yyyy-MM}. Jika Anda ingin mengekstraksi komponen waktu tertentu, seperti bulan, gunakan fungsi berikut dalam konten Pekerjaan:parseDate(<parameter_name>, <time_format>): Mengonversi parameter yang ditentukan menjadi objek Date. <parameter_name> adalah nama variabel yang Anda tetapkan di bagian Configuration Parameters. <time_format> adalah format waktu yang Anda gunakan saat menetapkan variabel tersebut. Misalnya, jika Anda menetapkan variabel current_time = ${yyyyMMddHHmmss-1d}, format waktunya harus diatur keyyyyMMddHHmmss.formatDate(<Date_object>, <time_format>): Memformat objek Date menjadi string waktu.
Contoh:- Mendapatkan nilai literal jam dari variabel
current_time: ${formatDate(parseDate(current_time, 'yyyyMMddHHmmss'), 'HH')} - Mendapatkan nilai literal tahun dari variabel
current_time: ${formatDate(parseDate(current_time, 'yyyyMMddHHmmss'), 'yyyy')}
Prosedur
-
Buka halaman Proyek di Data Platform.
-
Masuk ke Konsol E-MapReduce dengan Akun Alibaba Cloud Anda.
-
Di bilah navigasi atas, pilih Wilayah dan kelompok sumber daya.
-
Klik tab Data Development.
-
- Di halaman Projects, temukan proyek yang diinginkan lalu klik Edit Job di kolom Actions.
- Konfigurasikan pengaturan Pekerjaan.
- Di halaman Edit Job, pilih Pekerjaan yang diinginkan, lalu klik Job Settings di pojok kanan atas.
- Di bagian Configuration parameters, klik ikon
untuk menambahkan parameter, lalu atur parameter tersebut menggunakan format variabel wildcard.
Sebagai contoh, jika Anda menambahkan parameter bernamady_date, Anda dapat mereferensikan parameter ini dalam konten Pekerjaan sebagai${dy_date}, misalnya--hiveconf date=${dy_date}.Parameter tersebut kini dapat direferensikan dalam konten Pekerjaan Anda.