全部产品
Search
文档中心

AnalyticDB:Lake cache

更新时间:Jul 02, 2025

AnalyticDB for MySQL menyediakan fitur lake cache untuk menyimpan objek Object Storage Service (OSS) yang sering diakses pada NVMe SSD berperforma tinggi. Fitur ini meningkatkan efisiensi pembacaan data OSS, terutama dalam skenario dengan kebutuhan bandwidth besar untuk pembacaan data berulang. Sebagai contoh, pengguna dapat memerlukan analisis data dari salinan data yang sama. Topik ini menjelaskan manfaat, skenario, dan cara menggunakan fitur lake cache.

Prasyarat

Sebuah kluster Enterprise Edition, Basic Edition, atau Data Lakehouse Edition AnalyticDB for MySQL telah dibuat.

Ikhtisar

Cara kerjanya

Berikut adalah penjelasan tentang cara kerja fitur lake cache:

  1. Ketika klien lake cache mengirimkan permintaan baca ke OSS, permintaan tersebut diteruskan ke node master lake cache untuk mendapatkan metadata objek.

  2. Node master lake cache mengembalikan metadata objek ke klien lake cache.

  3. Klien lake cache menggunakan metadata objek untuk mengirimkan permintaan ke node pekerja lake cache untuk objek OSS.

    • Jika objek yang diminta tersedia di node pekerja lake cache, node pekerja mengembalikan objek tersebut ke klien lake cache.

    • Jika objek yang diminta tidak tersedia di node pekerja lake cache, fitur lake cache mengambil objek dari OSS. Kemudian, fitur lake cache mengembalikan objek tersebut ke klien lake cache dan menyimpannya di ruang cache.

Manfaat

  • Latensi milidetik

    NVMe SSD yang digunakan oleh fitur lake cache memberikan latensi baca dalam milidetik.

  • Throughput meningkat

    Bandwidth yang disediakan oleh fitur lake cache meningkat secara linier dengan ukuran cache. Throughput maksimum burst bisa mencapai ratusan Gbit/s.

  • Densitas throughput tinggi

    Fitur lake cache memberikan throughput tinggi untuk sejumlah kecil data untuk memenuhi kebutuhan baca burst untuk data panas.

  • Skalabilitas elastis

    Fitur lake cache memungkinkan Anda menambah atau mengurangi ruang cache sesuai kebutuhan bisnis untuk mencegah pemborosan sumber daya dan mengurangi biaya. Ukuran cache berkisar antara 10 GB hingga 200.000 GB.

  • Penyimpanan dan komputasi terpisah

    Dibandingkan dengan ruang cache pada node komputasi, fitur lake cache memisahkan sumber daya penyimpanan dan komputasi serta memungkinkan Anda memodifikasi ukuran cache di konsol AnalyticDB for MySQL.

  • Konsistensi data

    Fitur lake cache secara otomatis mengidentifikasi dan menyimpan objek OSS yang diperbarui untuk memastikan mesin komputasi membaca data terbaru.

Metrik kinerja dan kebijakan cache

Parameter

Deskripsi

Bandwidth cache

Bandwidth cache dihitung dengan menggunakan rumus berikut: 5 × Ukuran cache dalam TB. Satuan: Gbit/s.

Sebagai contoh, jika Anda menetapkan ukuran cache menjadi 10 TB untuk fitur lake cache, bandwidth baca dihitung dengan menggunakan rumus berikut: (5 × 10) Gbit/s = 50 Gbit/s.

Ukuran cache

Ukuran cache dapat berkisar antara 10 GB hingga 200000 GB. Fitur lake cache menyediakan bandwidth untuk data yang di-cache berdasarkan ukuran cache yang Anda tentukan. Hingga 5 Gbit/s bandwidth tersedia untuk setiap 1 TB ukuran cache. Bandwidth yang disediakan oleh fitur lake cache tidak dibatasi oleh bandwidth standar yang disediakan oleh OSS.OSS

Jika bisnis Anda memerlukan ukuran cache yang lebih besar, ajukan tiket.

Kebijakan penghapusan cache

Jika ruang cache yang digunakan melebihi ukuran cache yang Anda tentukan, sistem menggunakan kebijakan penghapusan Least Recently Used (LRU) untuk menghilangkan data yang di-cache. Kebijakan penghapusan LRU memastikan bahwa data yang sering diakses dipertahankan dan data yang jarang diakses dihapus terlebih dahulu. Ini secara signifikan meningkatkan pemanfaatan cache.

Pengujian kinerja

Dalam pengujian ini, query TPC-H dieksekusi untuk memeriksa apakah fitur lake cache dari AnalyticDB for MySQL dapat meningkatkan efisiensi akses data OSS. Dibandingkan dengan akses langsung ke data OSS, fitur lake cache meningkatkan efisiensi akses data sebesar 2,7 kali. Tabel berikut menunjukkan hasil pengujian.

Tipe

Ukuran cache

Ukuran dataset

Spesifikasi sumber daya Spark

Durasi eksekusi

Fitur lake cache diaktifkan

12 TB

10 TB

2 core, 8 GB (medium)

7.219 detik

Akses langsung ke data OSS

Tidak ada

10 TB

2 core, 8 GB (medium)

19.578 detik

Aturan penagihan

Setelah mengaktifkan fitur lake cache, Anda akan dikenakan biaya untuk ruang cache yang digunakan berdasarkan metode penagihan bayar sesuai pemakaian. Untuk informasi lebih lanjut, lihat Harga untuk Enterprise Edition dan Basic Edition dan Harga untuk Data Lakehouse Edition.

Catatan penggunaan

  • Fitur lake cache hanya didukung di wilayah berikut: China (Hangzhou), China (Shanghai), China (Beijing), China (Zhangjiakou), China (Shenzhen), Singapura, AS (Virginia), dan Indonesia (Jakarta).

    Penting

    Jika Anda ingin menggunakan fitur lake cache di wilayah lain, ajukan tiket.

  • Jika terjadi gangguan pada perangkat keras cache, kueri data tidak terganggu tetapi melambat. Setelah data yang di-cache diprefetch dari OSS, kecepatan kueri dipulihkan.

  • Ketika ruang cache yang digunakan oleh fitur lake cache mencapai batas atas, fitur lake cache mengganti objek yang jarang diakses di ruang cache dengan objek yang sering diakses. Jika Anda tidak ingin mengganti objek yang disimpan di ruang cache, Anda dapat meningkatkan ukuran cache untuk fitur lake cache.

Mengaktifkan fitur lake cache

  1. Masuk ke konsol AnalyticDB for MySQL. Di sudut kiri atas konsol, pilih wilayah. Di panel navigasi di sebelah kiri, klik Clusters. Temukan kluster yang ingin Anda kelola dan klik ID kluster.

  2. Di bagian Configuration Information halaman Cluster Information, klik Configure di sebelah Lake Cache.

  3. Di kotak dialog Lake Cache, aktifkan Lake Cache dan tentukan ukuran cache.

    Jika terjadi kesalahan saat menentukan ukuran cache, ajukan tiket.

  4. Klik OK.

    Catatan

    Setelah mengaktifkan Lake Cache, Anda dapat melihat ukuran cache yang ditentukan dengan mengikuti langkah-langkah sebelumnya.

Menggunakan fitur lake cache

Setelah Anda mengaktifkan fitur lake cache, Anda dapat menentukan parameter spark.adb.lakecache.enabled untuk pekerjaan Spark untuk mempercepat pembacaan data OSS.OSS Contoh kode:

Pengembangan Spark SQL

-- Berikut ini hanya contoh penggunaan LakeCache. Modifikasi konten dan jalankan program spark Anda.
SET spark.adb.lakecache.enabled=true;

-- Berikut ini adalah pernyataan sql Anda
SHOW databases;

Pengembangan Spark JAR

{
  "comments": [
    "-- Berikut ini hanya contoh penggunaan LakeCache. Modifikasi konten dan jalankan program spark Anda."
  ],
  "args": ["oss://testBucketName/data/readme.txt"],
  "name": "spark-oss-test",
  "file": "oss://testBucketName/data/example.py",
  "conf": {
    "spark.adb.lakecache.enabled": "true"
  }
}
Catatan

Jika Anda ingin menggunakan fitur lake cache bersama dengan mesin XIHE, ajukan tiket.

Lihat informasi pemantauan tentang fitur lake cache

Setelah mengaktifkan fitur lake cache, Anda dapat memeriksa apakah aplikasi Spark yang dikirimkan menggunakan fitur lake cache di konsol CloudMonitor. Anda juga dapat melihat informasi pemantauan tentang fitur lake cache, seperti jumlah data yang dibaca dari ruang cache. Ikuti langkah-langkah berikut:

  1. Masuk ke konsol Cloud Monitor.

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

  3. Geser pointer ke kartu AnalyticDB for MySQL dan klik AnalyticDB for mysql 3.0 - Data Lakehouse Edition.

  4. Temukan kluster AnalyticDB for MySQL yang ingin Anda pantau dan klik Monitoring Charts di kolom Actions.

  5. Klik tab LakeCache Metrics untuk melihat detail tentang metrik lake cache.

    Tabel berikut menggambarkan metrik lake cache.

    Metrik

    Deskripsi

    LakeCache Cache Hit Ratio(%)

    Rasio hit cache. Rumus: Jumlah permintaan baca yang mengenai cache / Total jumlah permintaan baca.

    LakeCache Cache Usage(B)

    Ruang cache yang digunakan. Satuan: byte.

    Total Amount of Historical Cumulative Read Data of LakeCache(B)

    Jumlah total data yang dibaca dari ruang cache. Satuan: byte.