Mengidentifikasi kunci yang intensif memori sebelum menyebabkan masalah sangat sulit ketika instans Redis sedang dibebani. Analisis kunci offline memindai file backup instans Tair (kompatibel dengan Redis OSS) Anda untuk menampilkan kunci besar serta menunjukkan penggunaan memori, distribusi kunci, dan waktu kedaluwarsa—tanpa memengaruhi kinerja instans. Gunakan hasilnya untuk mengoptimalkan instans dan mencegah kehabisan memori atau degradasi kinerja akibat ketimpangan kunci.
Fitur ini dibangun di atas fitur cache analysis dari CloudDBA.
Batasan
Instans berbasis disk tidak didukung.
Jika Anda mengubah tipe instans, file backup yang dibuat sebelum perubahan tersebut tidak dapat dianalisis.
Hanya struktur data Redis Edisi Open-Source dan struktur milik Tair berikut yang didukung: TairString, TairHash, TairGIS, TairBloom, TairDoc, TairCpc, dan TairZset. Tugas analisis akan gagal jika file backup berisi struktur milik Tair lainnya.
Pilih metode analisis
Tersedia tiga metode analisis. Pilih berdasarkan seberapa mutakhir data yang Anda butuhkan.
| Metode | Kemutakhiran data | Gunakan saat |
|---|---|---|
| Use Recent Backup File | Backup terjadwal terakhir | Inspeksi harian atau rutin |
| Select a historical backup file | Titik waktu tertentu di masa lalu | Membandingkan dengan kondisi yang diketahui |
| Create New Backup for Analysis | Kondisi instans saat ini | Menyelidiki masalah aktif |
Jika Anda menganalisis file backup yang sudah ada, pastikan waktu pembuatannya sesuai dengan titik waktu yang ingin Anda periksa.
Jalankan analisis kunci offline
Prasyarat
Sebelum memulai, pastikan Anda memiliki:
Instans Tair (kompatibel dengan Redis OSS) (bukan berbasis disk)
Izin yang diperlukan. Jika Anda menggunakan Pengguna Resource Access Management (RAM), lihat .
Mulai tugas analisis
Login ke Konsol dan buka halaman Instances. Pilih wilayah tempat instans Anda berada, lalu klik ID instans tersebut.
Di panel navigasi kiri, pilih CloudDBA > Offline Key analysis. Secara default, halaman ini menampilkan hasil analisis dari hari sebelumnya. Sesuaikan rentang waktu bila perlu.
Klik Analyze.
Pada kotak dialog, konfigurasikan parameter berikut.
Parameter Deskripsi Node Node yang akan dianalisis. Pilih seluruh instans atau node tertentu. Analysis method File backup yang akan digunakan. Lihat Pilih metode analisis untuk panduan. Delimiter Karakter yang digunakan untuk mengidentifikasi awalan kunci. Delimiter default adalah `:;,_-+@=|#`. Biarkan kosong untuk menggunakan nilai default. 
Klik OK. Sistem mengirimkan tugas analisis dan menampilkan statusnya. Klik Refresh untuk memperbarui status.
Lihat hasil
Saat status tugas menunjukkan complete, klik Details di kolom Actions.
Halaman detail berisi bagian-bagian berikut:
Basic information — Atribut instans dan metode analisis yang digunakan.

Relevant Nodes — Penggunaan memori dan statistik kunci untuk setiap node.
Bagian ini hanya muncul untuk instans kluster atau instans dengan pemisahan baca/tulis ketika seluruh instans dipilih sebagai Node.

Details — Rincian yang mencakup:
Penggunaan memori dan distribusi berdasarkan tipe kunci
Jumlah elemen dan distribusi ukuran dalam kunci
Distribusi waktu kedaluwarsa kunci
Kunci besar teratas berdasarkan penggunaan memori

FAQ
Mengapa ada begitu banyak kunci yang kedaluwarsa?
Kunci dengan waktu hidup (TTL) yang dikonfigurasi dapat menumpuk ketika banyak kunci kedaluwarsa secara bersamaan. Instans membersihkannya secara otomatis, tetapi untuk segera membebaskan memori, gunakan fitur Clear Data. Lihat Clear expired keys.
Apa yang harus saya lakukan jika muncul error "permission denied" saat menggunakan RAM user?
Berikan izin yang diperlukan kepada RAM user tersebut dan ulangi operasi. Untuk informasi lebih lanjut, lihat Skema umum dan contoh kebijakan kustom.
Mengapa kecepatan analisis berbeda antar tugas pada instans yang sama?
Tugas analisis dijalankan secara asinkron di CloudDBA. Jika ada tugas lain yang mengantre di depan tugas Anda, tugas Anda akan menunggu lebih lama. Waktu total bergantung pada kedalaman antrean, bukan hanya ukuran instans Anda.
Bagaimana cara memperbaiki decode rdbfile error: rdb: unknown object type 116 for key?
Backup tersebut berisi struktur Bloom non-standar yang tidak didukung untuk analisis.
Bagaimana cara memperbaiki decode rdbfile error: rdb: invalid file format?
Dua penyebab umum:
Konfigurasi instans berubah setelah backup dibuat. Pilih backup yang sesuai dengan konfigurasi saat ini.
Enkripsi Data Transparan (TDE) diaktifkan. Fitur ini tidak dapat menganalisis file backup yang terenkripsi.
Bagaimana cara memperbaiki decode rdbfile error: rdb: unknown module type?
Backup tersebut berisi struktur data milik Tair yang tidak termasuk dalam daftar yang didukung (TairString, TairHash, TairGIS, TairBloom, TairDoc, TairCpc, TairZset). Analisis tidak dapat dilanjutkan untuk backup yang mencakup struktur yang tidak didukung.
Bagaimana cara memperbaiki error XXX backup failed saat membuat backup baru untuk analisis?
Perintah BGSAVE atau BGREWRITEAOF sedang berjalan di instans, sehingga memblokir pembuatan backup baru. Jalankan analisis selama jam sepi, atau alihkan ke Use Recent Backup File atau Select a historical backup file sebagai gantinya.
Mengapa penggunaan memori pada halaman Details tampak lebih kecil daripada penggunaan aktual?
Analisis menghitung memori berdasarkan data kunci dan nilai yang diserialisasi dalam file backup Redis Database (RDB). Perhitungan ini hanya mencakup sebagian dari jejak memori aktual. Sisanya meliputi:
Data struktur, pointer, dan overhead penyelarasan byte. Untuk instans dengan 250 juta kunci, ini dapat menambah sekitar 2–3 GB (dialokasikan melalui jemalloc).
Buffer sisi klien: buffer output, buffer kueri, dan buffer rewrite file hanya-tambah (AOF).
Backlog replikasi dari replikasi primary/replica.
Mengapa penggunaan memori untuk kunci Stream beberapa kali lebih tinggi daripada yang diharapkan?
Stream adalah struktur data kompleks yang secara internal menggunakan radix tree dan listpack. Analisis tidak dapat mengukur memori secara akurat untuk struktur bersarang ini, sehingga hasilnya hanya perkiraan. Ketidaksesuaian ini bersifat statistik dan tidak memengaruhi fungsionalitas instans.
Mengapa jumlah elemen dan panjang elemen sama untuk kunci String?
Untuk instans Tair (kompatibel dengan Redis OSS), jumlah elemen untuk kunci String didefinisikan sebagai panjang nilainya. Hal ini sesuai desain.
Referensi API
| API | Deskripsi |
|---|---|
| CreateCacheAnalysisJob | Membuat tugas cache analysis |
| DescribeCacheAnalysisJob | Menanyakan detail tugas cache analysis |
| DescribeCacheAnalysisJobs | Menampilkan daftar tugas cache analysis |
Langkah berikutnya
Top key statistics — Pantau kunci besar secara real time tanpa file backup