All Products
Search
Document Center

E-MapReduce:Gunakan JindoFS dalam mode cache

Last Updated:Mar 27, 2026

Mode cache JindoFS menyimpan data Anda sebagai objek di Object Storage Service (OSS) sekaligus melakukan cache file yang sering diakses pada disk lokal kluster EMR. Pendekatan ini memungkinkan Anda membaca dan menulis data OSS dengan kecepatan disk lokal tanpa perlu memigrasikan data atau mengonversi format file.

Cara kerja mode cache

Mode cache mengikuti siklus hidup tiga tahap:

  1. Load: JindoFS membaca file yang sering diakses dari OSS dan menyimpannya dalam cache pada disk lokal.

  2. Manage: JindoFS secara otomatis melacak file dalam cache yang bersifat hot. Ruang disk lokal dikendalikan oleh watermark tinggi dan rendah yang dapat dikonfigurasi.

  3. Evict: Saat penggunaan disk melebihi watermark tinggi, JindoFS menghapus data dingin hingga penggunaan turun ke watermark rendah.

Secara default, cache lokal dinonaktifkan dan semua operasi baca langsung mengarah ke OSS. Aktifkan fitur ini ketika beban kerja yang banyak membaca memerlukan latensi lebih rendah.

Pilih skema akses

Mode cache mendukung dua cara untuk mengakses OSS:

OSS SchemeJFS Scheme
Format URIoss://<bucket>/<path>jfs://<namespace>/<path>
Persyaratan konfigurasiTidak ada — langsung berfungsi setelah pembuatan klusterMemerlukan konfigurasi namespace di SmartData
Kompatibilitas klien OSSPenuh — pekerjaan yang sudah ada berjalan tanpa perubahanMemerlukan pembaruan URI
Kapan digunakanPilihan default untuk sebagian besar beban kerjaSaat Anda memerlukan kontrol akses tingkat namespace atau beberapa backend penyimpanan

Gunakan OSS Scheme kecuali Anda memiliki alasan spesifik untuk menggunakan JFS Scheme.

Akses OSS dengan OSS Scheme

Tidak diperlukan konfigurasi tambahan. Setelah membuat kluster EMR, akses OSS secara langsung:

oss://<bucket_name>/<path_of_your_file>

Pekerjaan yang sudah menggunakan format URI ini tetap berfungsi tanpa modifikasi.

Konfigurasi JFS Scheme

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

Konfigurasi namespace

  1. Masuk ke Konsol Alibaba Cloud E-MapReduce.

  2. Pada bilah navigasi atas, pilih wilayah tempat kluster Anda berada. Pilih kelompok sumber daya sesuai kebutuhan.

  3. Klik tab Cluster Management. Temukan kluster Anda dan klik Details di kolom Actions.

  4. Pada panel navigasi kiri, klik Cluster Service > SmartData.

  5. Klik tab Configure. Di bagian Service Configuration, klik tab bigboot.

    bigboot

  6. Atur jfs.namespaces menjadi test.

    JindoFS mendukung beberapa namespace. Pisahkan nama namespace dengan koma. Topik ini menggunakan namespace bernama test.
  7. Klik Custom Configuration. Pada kotak dialog Add Configuration Item, konfigurasikan parameter berikut lalu klik OK.

    ParameterDeskripsiContoh
    jfs.namespaces.test.oss.uriBackend penyimpanan OSS untuk namespace test. Atur ke direktori tertentu atau direktori root bucket OSS.oss://<oss_bucket>/<oss_dir>/
    jfs.namespaces.test.modeMode penyimpanan. Atur ke cache untuk mode cache.cache
  8. Di pojok kanan atas bagian Service Configuration, klik Save.

  9. Dari daftar drop-down Actions di pojok kanan atas, pilih Restart Jindo Namespace Service.

Setelah layanan direstart, akses file menggunakan JFS Scheme:

jfs://test/<path_to_your_file>

JindoFS memetakan path JFS ke path OSS berdasarkan jfs.namespaces.test.oss.uri. Sebagai contoh, jfs://test/hello.txt dipetakan ke oss://<oss_bucket>/<oss_dir>/hello.txt.

Aktifkan cache lokal

Secara default, EMR membaca data langsung dari OSS. Aktifkan cache lokal untuk menyimpan blok data hot pada disk lokal guna mempercepat pembacaan berulang.

  1. Pada panel navigasi kiri, klik Cluster Service > SMARTDATA. Pada halaman SMARTDATA, klik tab Configure. Di bagian Service Configuration, klik tab client.

  2. Atur jfs.cache.data-cache.enable menjadi 1.

Perubahan langsung berlaku pada klien — tidak perlu restart layanan SmartData.

Setelah Anda mengaktifkan cache lokal, JindoFS secara otomatis mengelola data dalam cache menggunakan watermark tinggi dan rendah seperti dijelaskan dalam Kontrol penggunaan ruang disk.

Kontrol penggunaan ruang disk

JindoFS secara otomatis menghapus data dingin saat penggunaan disk lokal tinggi. Dua parameter mengatur ambang batas penghapusan tersebut:

ParameterDeskripsiDefault
storage.watermark.high.ratioBatas atas penggunaan disk untuk data JindoFS. Saat penggunaan melebihi rasio ini, JindoFS mulai menghapus data.0.4
storage.watermark.low.ratioBatas bawah. JindoFS terus menghapus data hingga penggunaan disk turun ke rasio ini.0.2

Kedua parameter menerima nilai desimal antara 0 dan 1. Rasio tinggi harus lebih besar daripada rasio rendah.

Untuk memperbarui pengaturan watermark:

  1. Di bagian Service Configuration untuk SmartData, klik tab storage.

    storage

  2. Perbarui storage.watermark.high.ratio dan storage.watermark.low.ratio sesuai kebutuhan.

  3. Di pojok kanan atas bagian Service Configuration, klik Save. Pada kotak dialog Confirm Changes, masukkan deskripsi, aktifkan Auto-update Configuration, lalu klik OK.

  4. Dari daftar drop-down Actions di pojok kanan atas, pilih Restart Jindo Storage Service. Pada kotak dialog Cluster Activities, masukkan parameter yang diperlukan lalu klik OK. Pada pesan konfirmasi, klik OK.

Akses bucket OSS cross-account atau cross-region

Jika kluster EMR dan bucket OSS berada dalam akun Alibaba Cloud yang sama dan wilayah yang sama, tidak diperlukan konfigurasi AccessKey.

Untuk kasus lainnya (akun berbeda atau wilayah berbeda), konfigurasikan pasangan AccessKey dan titik akhir secara eksplisit.

OSS Scheme

  1. Pada panel navigasi kiri, klik Cluster Service > SMARTDATA. Pada halaman SMARTDATA, klik tab Configure. Di bagian Service Configuration, klik tab smartdata-site.

  2. Klik Custom Configuration. Pada kotak dialog Add Configuration Item, konfigurasikan parameter berikut lalu klik OK.

    ParameterDeskripsi
    fs.jfs.cache.oss-accessKeyIdID AccessKey bucket OSS.
    fs.jfs.cache.oss-accessKeySecretRahasia AccessKey bucket OSS.
    fs.jfs.cache.oss-endpointTitik akhir bucket OSS.

JFS Scheme

  1. Pada panel navigasi kiri, klik Cluster Service > SMARTDATA. Pada halaman SMARTDATA, klik tab Configure. Di bagian Service Configuration, klik tab bigboot.

  2. Atur jfs.namespaces menjadi test.

  3. Klik Custom Configuration. Pada kotak dialog Add Configuration Item, konfigurasikan parameter berikut lalu klik OK.

    ParameterDeskripsi
    jfs.namespaces.test.oss.uriURI backend penyimpanan OSS. Sertakan titik akhir dalam URI. Contoh: oss://<oss_bucket.endpoint>/<oss_dir>.
    jfs.namespaces.test.oss.access.keyID AccessKey bucket OSS.
    jfs.namespaces.test.oss.access.secretRahasia AccessKey bucket OSS.

Konfigurasi lanjutan

Parameter berikut mengoptimalkan performa cache. Perubahan langsung berlaku pada klien — tidak perlu restart layanan.

tab client (di bagian Service Configuration):

ParameterDeskripsiDefault
client.oss.upload.threadsJumlah thread upload OSS per aliran penulisan data.4
client.oss.upload.max.parallelismMaksimum thread upload OSS konkuren per proses. Batas ini mencegah thread upload mengonsumsi bandwidth dan memori berlebihan.16

smartdata-site tab (di bagian Service Configuration):

ParameterDeskripsiDefault
fs.jfs.cache.copy.simple.max.byteAmbang batas ukuran file untuk operasi rename. File yang lebih kecil dari nilai ini menggunakan antarmuka copy umum; file yang lebih besar menggunakan Multipart Copy untuk performa lebih baik. Jika fast copy OSS diaktifkan, atur ke -1 agar semua file menggunakan antarmuka copy umum dan mendapatkan performa rename optimal.
fs.jfs.cache.write.buffer.sizeUkuran buffer untuk aliran penulisan data, dalam byte. Harus merupakan pangkat dari 2. Nilai maksimum: 8388608 (8 MB). Kurangi nilai ini jika aliran penulisan mengonsumsi memori berlebihan.1048576
fs.oss.committer.magic.enabledMengaktifkan Jindo Job Committer, yang melakukan commit pekerjaan tanpa operasi rename dan meningkatkan performa commit. Dalam mode cache, performa rename OSS lebih rendah dibandingkan standar, sehingga Jindo Job Committer merupakan committer yang direkomendasikan.true

Langkah selanjutnya