All Products
Search
Document Center

AnalyticDB:Lake Cache (LakeCache)

Last Updated:Mar 29, 2026

Ketika beberapa analis menjalankan kueri terhadap set data OSS yang sama secara bersamaan, setiap kueri mengambil data langsung dari OSS—menyebabkan latensi tinggi dan penggunaan bandwidth yang padat. Lake Cache menghindari pengambilan berulang dari OSS dengan menyimpan objek yang sering diakses pada NVMe SSD khusus, memberikan latensi baca dalam milidetik dan bandwidth yang meningkat secara linear seiring penambahan ukuran cache.

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

  • Kluster AnalyticDB for MySQL Edisi Perusahaan, Edisi Dasar, atau Edisi Data Lakehouse

Cara kerja

image

Saat pekerjaan Spark membaca dari OSS dengan Lake Cache diaktifkan:

  1. Klien Lake Cache meneruskan permintaan baca ke node master untuk mengambil metadata objek.

  2. Node master mengembalikan metadata tersebut ke klien.

  3. Klien menggunakan metadata tersebut untuk meminta objek aktual dari node pekerja.

    • Jika objek tersebut sudah tersimpan dalam cache pada node pekerja, objek tersebut langsung dikembalikan.

    • Jika tidak, objek tersebut diambil dari OSS, dikembalikan ke klien, dan disimpan dalam cache untuk pembacaan selanjutnya.

Konsistensi data dipertahankan secara otomatis: ketika objek OSS diperbarui, Lake Cache mendeteksi perubahan tersebut dan menyegarkan cache. Kueri selalu membaca data terbaru.

Performa

Bandwidth dan latensi

MetricDetail
Latensi bacaTingkat milidetik (NVMe SSD)
Cache bandwidth5 Gbit/s per TB ukuran cache
Throughput burst maksimumRatusan Gbit/s
Rentang ukuran cache10 GB–200.000 GB

Contoh bandwidth: Dengan cache 10 TB, bandwidth baca adalah 5 × 10 = 50 Gbit/s (sekitar 6,25 GB/s). Dengan cache 20 TB, bandwidth baca menjadi dua kali lipat, yaitu 100 Gbit/s. Bandwidth meningkat secara linear seiring penambahan ukuran cache, tanpa dibatasi oleh batas bandwidth OSS standar.

Kerapatan throughput tinggi: Lake Cache dapat memberikan throughput tinggi untuk jumlah data kecil guna memenuhi kebutuhan baca burst untuk data panas dalam jumlah kecil.

Jika Anda memerlukan ukuran cache lebih besar dari 200.000 GB, submit a ticket.

Kebijakan penggantian cache

Saat cache mencapai batas ukurannya, Lake Cache menggunakan kebijakan penggantian Least Recently Used (LRU): objek yang jarang diakses akan dihapus terlebih dahulu, sedangkan objek yang sering diakses tetap dipertahankan. Untuk mencegah penghapusan objek yang ingin Anda simpan, tingkatkan ukuran cache.

Hasil benchmark TPC-H

Pengujian berikut menggunakan kueri TPC-H untuk mengukur dampak Lake Cache terhadap performa baca OSS. Lake Cache meningkatkan kecepatan eksekusi kueri sebesar 2,7x dibandingkan akses langsung ke OSS.

KonfigurasiUkuran cacheUkuran datasetSpesifikasi resource SparkWaktu eksekusi
Lake cache diaktifkan12 TB10 TB2 core, 8 GB (medium)7,219 s
Akses langsung ke OSSTidak ada10 TB2 core, 8 GB (medium)19.578s

Penagihan

Setelah Anda mengaktifkan Lake Cache, Anda akan dikenai biaya atas ruang cache yang digunakan berdasarkan model bayar sesuai penggunaan. Untuk detail harga, lihat Harga untuk Edisi Perusahaan dan Edisi Dasar serta Harga untuk Edisi Data Lakehouse.

Batasan

  • Lake Cache tersedia di wilayah berikut: Tiongkok (Hangzhou), Tiongkok (Shanghai), Tiongkok (Beijing), Tiongkok (Zhangjiakou), Tiongkok (Shenzhen), Singapura, AS (Virginia), dan Indonesia (Jakarta). Untuk menggunakan Lake Cache di wilayah lain, submit a ticket.

  • Jika terjadi gangguan perangkat keras pada node cache, kueri tetap berjalan tetapi mungkin melambat saat data diambil ulang dari OSS. Performa pulih secara otomatis setelah cache diisi ulang.

  • Saat cache mencapai batas ukurannya, objek yang jarang diakses akan diganti oleh objek yang lebih sering diakses. Tingkatkan ukuran cache untuk mencegah penggantian tersebut.

Aktifkan lake cache

  1. Masuk ke Konsol AnalyticDB for MySQL. Di pojok kiri atas, pilih wilayah. Di panel navigasi sebelah kiri, klik Clusters.

  2. Di tab Enterprise Edition, Basic Edition, atau Data Lakehouse Edition, temukan kluster dan klik ID kluster tersebut.

  3. Di halaman Cluster Information, buka bagian Configuration Information dan klik Configure di samping Lake Cache.

  4. Di kotak dialog Lake Cache, aktifkan Lake Cache dan tentukan ukuran cache. Jika terjadi error saat menentukan ukuran cache, submit a ticket.

  5. Klik OK.

Setelah mengaktifkan Lake Cache, buka kembali kotak dialog Lake Cache untuk mengonfirmasi ukuran cache yang telah dikonfigurasi.

Gunakan lake cache dalam pekerjaan Spark

Setelah mengaktifkan Lake Cache, atur parameter spark.adb.lakecache.enabled ke true dalam pekerjaan Spark Anda untuk mengaktifkan akselerasi baca OSS.

Spark SQL

-- Aktifkan lake cache untuk sesi ini
SET spark.adb.lakecache.enabled=true;

-- Jalankan kueri Anda
SHOW databases;

Spark JAR

Teruskan parameter dalam konfigurasi pekerjaan:

{
  "comments": [
    "Aktifkan lake cache untuk akselerasi baca OSS."
  ],
  "args": ["oss://testBucketName/data/readme.txt"],
  "name": "spark-oss-test",
  "file": "oss://testBucketName/data/example.py",
  "conf": {
    "spark.adb.lakecache.enabled": "true"
  }
}
Untuk menggunakan Lake Cache dengan mesin XIHE, submit a ticket.

Kapan lake cache tidak mempercepat kueri

Lake Cache tidak mempercepat kueri jika salah satu kondisi berikut berlaku:

  • Pekerjaan Spark tidak memiliki parameter spark.adb.lakecache.enabled=true yang diatur.

  • Kluster berada di wilayah yang tidak mendukung Lake Cache.

  • Data sedang dibaca untuk pertama kalinya—belum tersimpan dalam cache. Performa meningkat pada pembacaan berikutnya.

  • Telah terjadi gangguan perangkat keras pada node cache dan data sedang diambil ulang dari OSS (bersifat sementara; pulih secara otomatis).

  • Ruang cache penuh dan objek yang dibutuhkan oleh kueri telah diganti. Tingkatkan ukuran cache untuk menyimpan lebih banyak data panas.

Monitor lake cache

Setelah mengaktifkan Lake Cache, periksa apakah pekerjaan Spark Anda menggunakan cache dan tinjau metrik penggunaannya di CloudMonitor.

  1. Masuk ke Konsol CloudMonitor.

  2. Di panel navigasi sebelah kiri, pilih Cloud Resource Monitoring > Cloud Service Monitoring.

  3. Arahkan kursor ke kartu AnalyticDB for MySQL dan klik AnalyticDB for mysql 3.0 - Data Lakehouse Edition.

  4. Temukan kluster dan klik Monitoring Charts di kolom Actions.

  5. Klik tab LakeCache Metrics untuk melihat detail cache.

Metrik berikut tersedia:

MetricDeskripsi
LakeCache Cache Hit Ratio(%)Persentase permintaan baca yang dilayani dari cache. Rumus: baca dari cache / total baca. Rasio yang lebih tinggi berarti lebih banyak trafik OSS yang dihindari.
LakeCache Cache Usage(B)Jumlah ruang cache yang sedang digunakan, dalam byte.
Total Amount of Historical Cumulative Read Data of LakeCache(B)Total data yang dibaca dari cache sejak diaktifkan, dalam byte.

Jika rasio hit cache rendah meskipun kueri berulang dilakukan terhadap data yang sama, pertimbangkan untuk menambah ukuran cache agar lebih banyak objek dapat disimpan antar pembacaan.