All Products
Search
Document Center

E-MapReduce:Panduan pengguna JindoTable

Last Updated:Mar 27, 2026

JindoTable digunakan untuk menerapkan penyimpanan berjenjang (tiered storage), mengoptimalkan file tabel, dan mengumpulkan statistik data berdasarkan popularitas tabel atau partisi. Topik ini menjelaskan cara menggunakan JindoTable.

Prasyarat

Sebelum memulai, pastikan Anda telah:

  • Menginstal Java Development Kit (JDK) 8 di mesin lokal Anda.

  • Memiliki kluster E-MapReduce (EMR) versi 3.30.0 atau yang lebih baru (Buat kluster).

Cara kerja

Perintah JindoTable mengikuti alur kerja manajemen penyimpanan:

  1. Jalankan -accessStat untuk mengidentifikasi tabel atau partisi yang paling sering diakses.

  2. Jalankan -cache untuk menarik data panas ke disk lokal, atau -archive untuk memindahkan data dingin ke kelas penyimpanan berbiaya lebih rendah.

  3. Jalankan -status untuk memverifikasi status penyimpanan saat ini dari suatu tabel atau partisi.

  4. Jalankan -optimize untuk mengoptimalkan organisasi data tabel pada lapisan penyimpanan.

Penting Tentukan tabel dalam format database.table. Tentukan partisi dalam format partitionCol1=val1,partitionCol2=val2,....

Referensi perintah

JindoTable menyediakan 11 perintah. Dalam deskripsi sintaksis, {-flag} menunjukkan parameter yang diperlukan dan [-flag] menunjukkan parameter opsional.

Perintah Deskripsi
-accessStat Kueri tabel atau partisi yang paling sering diakses dalam rentang waktu tertentu
-cache Cache data tabel atau partisi ke disk lokal
-uncache Hapus data cache dari disk lokal
-archive Pindahkan data ke kelas penyimpanan Archive atau Infrequent Access (IA)
-unarchive Pulihkan data yang diarsipkan ke kelas penyimpanan Standard
-status Lihat status penyimpanan tabel atau partisi
-optimize Optimalkan organisasi data tabel pada lapisan penyimpanan
-showTable Daftar semua partisi dalam tabel partisi, atau tampilkan detail penyimpanan tabel non-partisi
-showPartition Tampilkan detail penyimpanan partisi tertentu
-listTables Daftar semua tabel dalam database
-dumpmc Dump tabel MaxCompute ke kluster EMR atau Object Storage Service (OSS)

-accessStat

Kueri tabel atau partisi dengan jumlah catatan akses terbanyak dalam rentang waktu tertentu.

Sintaksis

jindo table -accessStat {-d} <days> {-n} <topNums>

Parameter

Parameter Diperlukan Deskripsi
-d <days> Ya Jumlah hari ke belakang yang akan diperiksa. Harus berupa bilangan bulat positif. Jika diatur ke 1, semua catatan akses dari pukul 00:00 waktu lokal hari ini hingga waktu saat ini akan dikembalikan.
-n <topNums> Ya Jumlah hasil teratas yang akan dikembalikan. Harus berupa bilangan bulat positif.

Contoh

Kembalikan 20 tabel atau partisi yang paling sering diakses dalam 7 hari terakhir:

jindo table -accessStat -d 7 -n 20

-cache

Cache data tabel atau partisi dari OSS atau JindoFileSystem (JindoFS) ke disk lokal.

Sintaksis

jindo table -cache {-t} <dbName.tableName> [-p] <partitionSpec> [-pin]

Parameter

Parameter Diperlukan Deskripsi
-t <dbName.tableName> Ya Tabel yang akan di-cache. Format: database.table.
-p <partitionSpec> Tidak Partisi yang akan di-cache. Format: partitionCol1=val1,partitionCol2=val2,.... Jika diabaikan, seluruh tabel akan di-cache.
-pin Tidak Jika ruang cache tidak mencukupi, jangan hapus data terkait jika memungkinkan.

Contoh

Cache partisi date=2020-03-16 dari db1.t1:

jindo table -cache -t db1.t1 -p date=2020-03-16

-uncache

Hapus data cache tabel atau partisi dari disk lokal.

Sintaksis

jindo table -uncache {-t} <dbName.tableName> [-p] <partitionSpec>

Parameter

Parameter Diperlukan Deskripsi
-t <dbName.tableName> Ya Tabel yang cachenya akan dihapus. Format: database.table.
-p <partitionSpec> Tidak Partisi yang cachenya akan dihapus. Format: partitionCol1=val1,partitionCol2=val2,.... Jika diabaikan, cache seluruh tabel akan dihapus.

Contoh

Hapus data cache seluruh tabel db1.t2:

jindo table -uncache -t db1.t2

Hapus data cache partisi date=2020-03-16,category=1 dari db1.t1:

jindo table -uncache -t db1.t1 -p date=2020-03-16,category=1

-archive

Pindahkan data tabel atau partisi ke kelas penyimpanan berbiaya lebih rendah. Target default adalah kelas penyimpanan Archive. Tambahkan -i untuk menggunakan Infrequent Access (IA) sebagai gantinya.

Sintaksis

jindo table -archive [-a|-i] {-t} <dbName.tableName> [-p] <partitionSpec>

Parameter

Parameter Diperlukan Deskripsi
-a Tidak Arsipkan ke kelas penyimpanan Archive (perilaku default).
-i Tidak Arsipkan ke kelas penyimpanan Infrequent Access (IA) alih-alih Archive.
-t <dbName.tableName> Ya Tabel yang akan diarsipkan. Format: database.table.
-p <partitionSpec> Tidak Partisi yang akan diarsipkan. Format: partitionCol1=val1,partitionCol2=val2,.... Jika diabaikan, seluruh tabel akan diarsipkan.

Contoh

Arsipkan partisi date=2020-10-12 dari db1.t1:

jindo table -archive -t db1.t1 -p date=2020-10-12

-unarchive

Pulihkan data yang diarsipkan ke kelas penyimpanan Standard, atau ubah ke kelas penyimpanan IA.

Sintaksis

jindo table -unarchive [-o|-i] {-t} <dbName.tableName> [-p] <partitionSpec>

Parameter

Parameter Diperlukan Deskripsi
-o Tidak Pulihkan sementara objek yang diarsipkan.
-i Tidak Ubah objek yang diarsipkan ke kelas penyimpanan IA.
-t <dbName.tableName> Ya Tabel yang akan dibatalkan arsipnya. Format: database.table.
-p <partitionSpec> Tidak Partisi yang akan dibatalkan arsipnya. Format: partitionCol1=val1,partitionCol2=val2,.... Jika diabaikan, seluruh tabel akan dibatalkan arsipnya.

Contoh

Pulihkan sementara partisi date=2020-03-16,category=1 dari db1.t1 dari Archive:

jindo table -unarchive -o -t db1.t1 -p date=2020-03-16,category=1

Ubah seluruh tabel db1.t2 dari Archive ke IA:

jindo table -unarchive -i -t db1.t2

-status

Lihat status penyimpanan data tabel atau partisi.

Sintaksis

jindo table -status {-t} <dbName.tableName> [-p] <partitionSpec>

Parameter

Parameter Diperlukan Deskripsi
-t <dbName.tableName> Ya Tabel yang akan diperiksa. Format: database.table.
-p <partitionSpec> Tidak Partisi yang akan diperiksa. Format: partitionCol1=val1,partitionCol2=val2,.... Jika diabaikan, status seluruh tabel akan dikembalikan.

Contoh

Lihat status penyimpanan seluruh tabel db1.t2:

jindo table -status -t db1.t2

Lihat status penyimpanan partisi date=2020-03-16 dari db1.t1:

jindo table -status -t db1.t1 -p date=2020-03-16

-optimize

Optimalkan organisasi data tabel pada lapisan penyimpanan untuk meningkatkan performa kueri.

Sintaksis

jindo table -optimize {-t} <dbName.tableName>

Parameter

Parameter Diperlukan Deskripsi
-t <dbName.tableName> Ya Tabel yang akan dioptimalkan. Format: database.table.

Contoh

Optimalkan organisasi data db1.t1:

jindo table -optimize -t db1.t1

-showTable

Tampilkan semua partisi dalam tabel partisi, atau tampilkan detail penyimpanan data tabel non-partisi.

Sintaksis

jindo table -showTable {-t} <dbName.tableName>

Parameter

Parameter Diperlukan Deskripsi
-t <dbName.tableName> Ya Tabel yang akan ditampilkan. Format: database.table.

Contoh

Tampilkan semua partisi dalam db1.t1:

jindo table -showTable -t db1.t1

-showPartition

Tampilkan detail penyimpanan data partisi tertentu.

Sintaksis

jindo table -showPartition {-t} <dbName.tableName> [-p] <partitionSpec>

Parameter

Parameter Diperlukan Deskripsi
-t <dbName.tableName> Ya Tabel yang berisi partisi tersebut. Format: database.table.
-p <partitionSpec> Tidak Partisi yang akan ditampilkan. Format: partitionCol1=val1,partitionCol2=val2,....

Contoh

Tampilkan detail penyimpanan partisi date=2020-10-12 dalam db1.t1:

jindo table -showPartition -t db1.t1 -p date=2020-10-12

-listTables

Daftar semua tabel dalam database.

Sintaksis

jindo table -listTables [-db] <dbName>

Parameter

Parameter Diperlukan Deskripsi
-db <dbName> Tidak Database tempat tabel akan didaftarkan. Jika diabaikan, tabel dalam database default akan didaftarkan.

Contoh

Daftar semua tabel dalam database default:

jindo table -listTables

Daftar semua tabel dalam db1:

jindo table -listTables -db db1

-dumpmc

Dump tabel MaxCompute ke kluster EMR atau OSS. Format output yang didukung adalah CSV dan TFRECORD.

Sintaksis

jindo table -dumpmc {-i} <accessId> {-k} <accessKey> {-m} <numMaps> {-t} <tunnelUrl> {-project} <projectName> {-table} <tableName> [-p] <partitionSpec> {-f} <csv|tfrecord> {-o} <outputPath>

Parameter

Parameter Diperlukan Deskripsi
-i <accessId> Ya ID AccessKey Akun Alibaba Cloud Anda.
-k <accessKey> Ya Rahasia AccessKey Akun Alibaba Cloud Anda.
-m <numMaps> Ya Jumlah tugas map.
-t <tunnelUrl> Ya Titik akhir VPC Tunnel MaxCompute.
-project <projectName> Ya Nama proyek MaxCompute.
-table <tableName> Ya Nama tabel MaxCompute.
-p <partitionSpec> Tidak Partisi yang akan di-dump. Contoh: pt=xxx. Pisahkan beberapa partisi dengan koma: pt=xxx,dt=xxx.
-f <csv|tfrecord> Ya Format file output. Nilai yang valid: csv, tfrecord.
-o <outputPath> Ya Jalur tujuan. Gunakan jalur EMR lokal (misalnya, /tmp/output) atau jalur OSS (misalnya, oss://bucket/path).

Contoh

Dump tabel MaxCompute ke kluster EMR dalam format TFRECORD:

jindo table -dumpmc -m 10 -project mctest_project -table t1 -t http://dt.xxx.maxcompute.aliyun-inc.com -k xxxxxxxxx -i XXXXXX -o /tmp/outputtf1 -f tfrecord

Dump tabel MaxCompute ke OSS dalam format CSV:

jindo table -dumpmc -m 10 -project mctest_project -table t1 -t http://dt.xxx.maxcompute.aliyun-inc.com -k xxxxxxxxx -i XXXXXX -o oss://bucket1/tmp/outputcsv -f csv