Anda dapat menggunakan antarmuka baris perintah konsol untuk mengakses proyek DataHub dan menjalankan perintah. Topik ini menjelaskan cara menginstal, mengonfigurasi, menjalankan klien, serta memberikan panduan penggunaannya.
Prasyarat
Sebelum menggunakan antarmuka baris perintah konsol, pastikan persyaratan berikut terpenuhi:
Perangkat tempat Anda ingin menginstal klien konsol telah menginstal Java 8 atau versi yang lebih baru.
Instal dan konfigurasi klien konsol
Unduh paket datahub_console.tar.gz dan ekstrak.
Setelah mengekstrak paket tersebut, Anda akan menemukan folder bin, conf, dan lib.
Buka folder conf dan masukkan informasi AccessKey dan endpoint ke dalam file datahub.properties. Isi file tersebut adalah sebagai berikut:
datahub.accessid=
datahub.accesskey=
datahub.endpoint=Parameter-parameter tersebut dijelaskan sebagai berikut:
Parameter | Wajib | Deskripsi | Contoh |
datahub.accessid | Ya | ID AccessKey Akun Alibaba Cloud atau Pengguna Resource Access Management (RAM) Anda. | N/A |
datahub.accesskey | Ya | Rahasia AccessKey yang sesuai dengan ID AccessKey tersebut. | N/A |
datahub.endpoint | Ya | Titik akhir layanan DataHub. Anda harus mengonfigurasi titik akhir berdasarkan wilayah dan jenis konektivitas jaringan yang dipilih saat membuat proyek DataHub. Untuk informasi selengkapnya mengenai titik akhir untuk berbagai wilayah dan jenis jaringan, lihat DataHub Domain Names. | https://dh-cn-hangzhou.aliyuncs.com |
Jalankan klien konsol
Anda dapat memulai klien konsol dengan salah satu cara berikut:
Metode 1: Di folder bin pada jalur instalasi klien konsol, klik ganda file datahubcmd.bat (untuk Windows) untuk memulai klien konsol. Informasi berikut akan dikembalikan, yang menunjukkan bahwa klien telah dimulai.
Metode 2: Di jendela command line sistem operasi Anda, buka folder bin pada jalur instalasi klien konsol. Jalankan perintah datahubcmd (untuk Windows) atau perintah sh datahubcmd.sh (untuk Linux atau macOS) untuk memulai klien. Gambar berikut menunjukkan bahwa klien telah terhubung ke DataHub.
Dapatkan bantuan perintah
Anda dapat memperoleh bantuan untuk perintah klien konsol dengan salah satu cara berikut:
Metode 1: Lihat informasi bantuan perintah di klien konsol
Lihat bantuan untuk semua perintah.
helpTentukan kata kunci untuk melihat informasi bantuan perintah terkait.
Misalnya, untuk mengambil daftar topik:
DataHub=>help lt
NAME
lt - List topic
SYNOPSYS
lt [-p] string
OPTIONS
-p string
projectName
[Mandatory]
Metode 2: Di jendela command line sistem operasi Anda, pindah ke folder bin pada jalur instalasi klien konsol. Jalankan perintah berikut untuk melihat informasi bantuan semua perintah:
...\bin>datahubcmd helpPanduan penggunaan
Operasi proyek
Buat proyek
-p: Nama proyek.
-c: Deskripsi proyek.
cp -p test_project -c test_commentHapus proyek
-p: Nama proyek.
dp -p test_projectCatatan: Sebelum menghapus proyek, Anda harus menghapus semua resource dalam proyek tersebut, termasuk topik, subscription, dan tugas sinkronisasi. Jika tidak, penghapusan akan gagal.
Dapatkan daftar proyek
lpOperasi topik
Buat topik
-p: Nama proyek.
-t: Nama topik.
-m: Kategori topik. BLOB menunjukkan topik BLOB, dan TUPLE menunjukkan topik TUPLE.
-f: Format bidang untuk topik TUPLE adalah [(fieldName,fieldType,isNull)]. Pisahkan beberapa bidang dengan koma (,).
-s: Jumlah shard.
-l: Masa hidup data dalam hari. Nilai yang valid: 1 hingga 7.
-c: Deskripsi topik.
ct -p test_project -t test_topic -m TUPLE -f [(name,string,true)] -s 3 -l 3 -c test_commentHapus topik
-p: Nama proyek.
-t: Nama topik.
dt -p test_project -t test_topicDapatkan informasi topik
-p: Nama proyek.
-t: Nama topik.
gt -p test_project -t test_topicEkspor skema topik ke file JSON
-f: Jalur tempat file disimpan.
-p: Nama proyek.
-t: Nama topik.
gts -f filepath -p test_project -t test_topicDapatkan daftar topik
-p: Nama proyek.
lt -p test_projectBuat topik dari file JSON
-s: Jumlah shard.
-l: Masa hidup data dalam hari. Nilai yang valid: 1 hingga 7.
-f: Jalur file.
-p: Menentukan nama proyek.
-t: Nama topik.
rtt -s 3 -l 3 -c test_comment -f filepath -p test_project -t test_topicUbah siklus hidup topik
-p: Menentukan nama proyek.
-t: Nama topik.
-l: Menentukan siklus hidup topik.
-c: Deskripsi topik.
utl -p test_project -t test_topic -l 3 -c test_commentOperasi konektor
Buat konektor ODPS
-p: Nama proyek.
-t: Nama topik.
-m: Jenis sinkronisasi. Jenis sinkronisasi berikut didukung untuk ODPS: SYSTEM_TIME, USER_DEFINE, EVENT_TIME, dan META_TIME.
-e: Titik akhir ODPS. Anda harus memasukkan titik akhir jaringan klasik.
-op: Nama proyek ODPS.
-oa: ID AccessKey yang digunakan untuk mengakses ODPS.
-ok: AccessKey yang digunakan untuk mengakses ODPS.
-tr: Interval partisi dalam menit. Nilai default di tool konsol adalah 60.
-tf: Format partisi. `ds` menunjukkan partisi per hari, `ds hh` menunjukkan partisi per jam, dan `ds hh mm` menunjukkan partisi per menit.
coc -p test_project -t test_topic -m SYSTEM_TIME -e odpsEndpoint -op odpsProject -ot odpsTable -oa odpsAccessId -ok odpsAccessKey -tr 60 -c (field1,field2) -tf ds hh mmTambahkan bidang untuk sinkronisasi ODPS
-p: Nama proyek.
-t: Nama topik.
-c: ID konektor. Anda dapat melihat ID tersebut di tab Data Synchronization.
-f: Nama bidang baru.
acf -p test_project -t test_topic -c connectorId -f fieldNameBuat konektor untuk menyinkronkan data ke MySQL atau RDS
-p: Nama proyek.
-t: Nama topik.
-h: Host. Anda harus memasukkan alamat jaringan klasik.
-po: Port.
-ty: Jenis sinkronisasi. Dua jenis tersedia:
SINK_MYSQL: Membuat konektor untuk menyinkronkan data ke MySQL.
SINK_ADS: Membuat konektor untuk menyinkronkan data ke ADS.
-d: Menentukan nama database.
-ta: Nama tabel.
-u: Username
-pa: Password.
-ht: Mode insert. Dua mode tersedia:
IGNORE
OVERWRITE
-n: Bidang yang akan disinkronkan. Misalnya, (field1,field2).
cdc -p test_project -t test_topic -h host -po 3306 -ty mysql -d mysql_database -ta msyql_table -u username -pa password -ht IGNORE -n (field1,field2)Buat konektor DataHub
-p: Nama proyek.
-t: Nama topik.
-sp: Proyek sink tempat data diimpor.
-st: Topik sink tempat data diimpor.
-m: Jenis otentikasi.
AK: Otentikasi menggunakan AccessKey. Anda harus menentukan ID AccessKey dan rahasia AccessKey.
Menentukan bahwa otentikasi dilakukan menggunakan STS.
cdhc -p test_project -t test_topic -sp sinkProject -st sinkTopic -m AK -i accessid k accessKeyBuat konektor FC
-p: Nama proyek.
-t: Nama topik.
-e: Titik akhir FC. Anda harus memasukkan titik akhir jaringan klasik.
-s: Nama layanan FC.
-f: Nama fungsi FC
-au: Metode autentikasi.
AK: Otentikasi menggunakan AccessKey. Anda harus menentukan ID AccessKey dan rahasia AccessKey.
STS: Otentikasi menggunakan STS.
-n: Bidang yang akan disinkronkan. Misalnya, (field1,field2).
cfc -p test_project -t test_topic -e endpoint -s service -f function -au AK -i accessId -k accessKey -n (field1,field2)Buat konektor Hologres
-p: Nama proyek.
-t: Nama topik.
-e: Titik akhir.
-cl: Bidang yang akan disinkronkan ke Hologres.
-au: Metode autentikasi. Saat ini, hanya otentikasi AccessKey yang didukung untuk menyinkronkan data ke Hologres.
-m: Jenis penguraian. Jika Anda memilih Delimiter, Anda harus menentukan properti lineDelimiter, parseData, dan columnDelimiter. Jika Anda memilih InformaticaJson, Anda harus menentukan properti parseData.
Delimiter
InformaticaJson
chc -p test_project -t test_topic -e endpoint -cl (field,field2) -au AK -hp holoProject -ht holoTopic -i accessId -k accessKey -m Delimiter -l 1 -b false -n (field1,field2)Buat konektor OTS
-p: Nama proyek.
-t: Nama topik.
it: Nama instans OTS.
-m: Jenis otentikasi. STS digunakan secara default.
AK: Otentikasi menggunakan AccessKey. Anda harus menentukan ID AccessKey dan rahasia AccessKey.
STS: Otentikasi menggunakan STS.
-t: Nama tabel OTS.
-wm: Mode tulis. Dua mode tulis didukung:
PUT
UPDATE
-c: Bidang yang akan disinkronkan. Misalnya, (field1,field2).
cotsc -p test_project -t test_topic -i accessId -k accessKey -it instanceId -m AK -t table -wm PUT -c (field1,field2)Buat konektor OSS
-p: Nama proyek.
-t: Nama topik.
-b: Nama bucket OSS.
-e: Nama titik akhir OSS.
-pr: Awalan direktori untuk menyinkronkan data ke OSS.
-tf: Format waktu sinkronisasi. Misalnya, %Y%m%d%H%M menunjukkan partisi per menit.
-tr: Interval partisi.
-c: Bidang yang akan disinkronkan.
csc -p test_project -t test_topic -b bucket -e endpoint -pr ossPrefix -tf ossTimeFormat -tr timeRange -c (f1,f2)Hapus konektor
-p: Nama proyek.
-t: Nama topik.
-c: ID konektor. Anda dapat melihat ID tersebut di tab Data Synchronization.
dc -p test_project -t test_topic -c connectorIdDapatkan detail konektor
-p: Nama proyek.
-t: Nama topik.
-c: ID konektor. Anda dapat melihat ID tersebut di tab Data Synchronization.
gc -p test_project -t test_topic -c connectorIdDapatkan daftar konektor dalam suatu topik
-p: Nama proyek.
-t: Nama topik.
lc -p test_project -t test_topicMulai ulang konektor
-p: Nama proyek.
-t: Nama topik.
-c: ID konektor. Anda dapat melihat ID tersebut di tab Data Synchronization.
rc -p test_project -t test_topic -c connectorIdPerbarui AccessKey konektor
-p: Nama proyek.
-t: Nama topik.
-ty: Jenis sinkronisasi. Misalnya: SINK_ODPS.
uca -p test_project -t test_topic -ty SINK_ODPS -a accessId -k accessKeyOperasi shard
Gabungkan shard
-p: Menentukan nama proyek.
-t: Nama topik.
-s: ID shard yang akan digabung.
-a: ID shard lain yang akan digabung.
ms -p test_project -t test_topic -s shardId -a adjacentShardIdPisahkan shard
-p: Nama proyek.
-t: Nama topik.
-s: ID shard yang akan dipisahkan.
ss -p test_project -t test_topic -s shardIdDapatkan semua shard dalam suatu topik
-p: Nama proyek.
-t: Nama topik.
ls -p test_project -t topicNameDapatkan status sinkronisasi shard
-p: Nama proyek.
-t: Nama topik.
-s: ID shard.
-c: ID konektor. Anda dapat melihat ID tersebut di tab Data Synchronization.
gcs -p test_project -t test_topic -s shardId -c connectorIdDapatkan offset konsumen setiap shard untuk suatu subscription
-p: Nama proyek.
-t: Nama topik.
-s: ID subscription.
-i: ID shard.
gso -p test_project -t test_topic -s subid -i shardIdOperasi Langganan
Buat subscription
-p: Nama proyek.
-t: Nama topik.
-c: Deskripsi subscription.
css -p test_project -t test_topic -c commentHapus subscription
-p: Nama proyek.
-t: Nama topik.
-s: ID subscription.
dsc -p test_project -t test_topic -s subIdKueri daftar subscription
-p: Nama proyek.
-t: Nama topik.
lss -p test_project -t test_topicUnggah dan unduh data
Unggah data
-f: Jalur file. Catatan: Untuk jalur di Windows, Anda harus menambahkan karakter escape. Misalnya, D:\\test\\test.txt.
-p: Nama proyek.
-t: Nama topik.
-m: Pemisah teks. Koma (,) dan spasi didukung.
-n: Ukuran batch untuk setiap unggahan. Nilai default adalah 1000.
uf -f filepath -p test_topic -t test_topic -m "," -n 1000Contoh: Unggah file CSV
Contoh ini menunjukkan cara menggunakan antarmuka baris perintah konsol untuk mengunggah file CSV ke DataHub. Format file CSV adalah sebagai berikut:
1. 0,qe614c760fuk8judu01tn5x055rpt1,true,100.1,14321111111
2. 1,znv1py74o8ynn87k66o32ao4x875wi,true,100.1,14321111111
3. 2,7nm0mtpgo1q0ubuljjjx9b000ybltl,true,100.1,14321111111
4. 3,10t0n6pvonnan16279w848ukko5f6l,true,100.1,14321111111
5. 4,0ub584kw88s6dczd0mta7itmta10jo,true,100.1,14321111111
6. 5,1ltfpf0jt7fhvf0oy4lo8m3z62c940,true,100.1,14321111111
7. 6,zpqsfxqy9379lmcehd7q8kftntrozb,true,100.1,14321111111
8. 7,ce1ga9aln346xcj761c3iytshyzuxg,true,100.1,14321111111
9. 8,k5j2id9a0ko90cykl40s6ojq6gruyi,true,100.1,14321111111
10. 9,ns2zcx9bdip5y0aqd1tdicf7bkdmsm,true,100.1,14321111111
11. 10,54rs9cm1xau2fk66pzyz62tf9tsse4,true,100.1,14321111111Dalam file CSV tersebut, setiap baris merupakan catatan, dan bidang dipisahkan oleh koma (,). File tersebut disimpan di jalur lokal /temp/test.csv. Topik DataHub memiliki format berikut:
Nama bidang | Jenis bidang |
id | BIGINT |
name | STRING |
gender | BOOLEAN |
salary | DOUBLE |
my_time | TIMESTAMP |
Perintah untuk tool konsol adalah:
uf -f /temp/test.csv -p test_topic -t test_topic -m "," -n 1000Unduh data
-f: Jalur file. Catatan: Untuk jalur di Windows, Anda harus menambahkan karakter escape. Misalnya, D:\\test\\test.txt.
-p: Nama proyek.
-t: Nama topik.
-s: ID shard.
-d: ID subscription.
-f: Jalur unduhan.
-ti: Titik waktu setelah mana Anda ingin membaca data. Formatnya adalah yyyy-mm-dd hh:mm:ss.
-l: Jumlah catatan yang dibaca setiap kali.
-g: Menentukan apakah data dibaca secara terus-menerus.
0: Membaca hanya sekali. Setelah jumlah catatan saat ini selesai dibaca, konsumsi berhenti.
1: Membaca secara terus-menerus.
down -p test_project -t test_topic -s shardId -d subId -f filePath -ti "1970-01-01 00:00:00" -l 100 -g 0FAQ
Skrip gagal dimulai: Jika Anda menjalankan skrip di lingkungan Windows, periksa apakah jalur skrip berisi tanda kurung.