Menggunakan Perintah Pindai di Redis pada Linux
Redis, sebuah penyimpanan struktur data dalam memori yang bersifat open-source, dikenal dengan kecepatan dan keserbagunaannya sebagai basis data bernilai kunci. Salah satu fiturnya yang hebat adalah kemampuannya untuk melakukan iterasi secara bertahap melalui kumpulan data menggunakan perintah pemindaian. Hal ini sangat berguna ketika berurusan dengan kumpulan data yang besar, karena memungkinkan pengambilan data yang efisien tanpa membebani server. Untuk pengguna di server Linux khusus, menggunakan perintah pemindaian di Redis dapat meningkatkan performa penanganan data dengan memungkinkan pemrosesan dataset yang dioptimalkan dengan sumber daya yang tepat. Pada artikel ini, kita akan membahas cara menggunakan perintah pemindaian secara efektif di Redis dalam lingkungan Linux, dengan memberikan contoh mendetail dan praktik terbaik untuk mengelola dan mengambil data dalam skala besar..
Apa Itu Perintah Pindai?
Perintah pemindaian di Redis menyediakan cara untuk mengulang key, set, hash, dan set terurut dengan cara yang tidak memblokir. Tidak seperti perintah KEYS, yang dapat berbahaya untuk kumpulan data yang besar karena mengembalikan semua kunci yang cocok sekaligus, perintah pemindaian mengembalikan sejumlah kecil elemen dalam satu waktu. Hal ini meminimalkan dampak kinerja dan memungkinkan perulangan bertahap
Perintah Pemindaian Kunci
- SCAN: Mengulang melalui tombol di keyspace.
- SSCAN: Mengulang melalui elemen dalam satu set.
- HSCAN: Mengulang melalui bidang dan nilai dalam hash.
- ZSCAN: Mengulang melalui anggota dan nilai dalam set yang diurutkan.
Sintaks Dasar Perintah Pindai
Setiap perintah pemindaian memiliki sintaks yang serupa
- kursor: Bilangan bulat yang mewakili posisi untuk memulai pemindaian. Untuk memulai pemindaian baru, gunakan 0.
- MATCH pattern: (opsional) Pola untuk memfilter kunci yang dikembalikan. Mendukung pola gaya glob.
- COUNT hitungan: (opsional) Petunjuk untuk Redis tentang berapa banyak elemen yang akan dikembalikan dalam setiap perulangan.
Menginstalasi Redis di Linux
Untuk CentOS/RHEL, gunakan
Setelah terinstal, mulai server Redis
Menghubungkan ke Redis
Buka terminal Anda dan sambungkan ke instans Redis Anda menggunakan CLI Redis
Anda kini dapat menjalankan perintah Redis di CLI
Menggunakan Perintah SCAN
Contoh 1: Pemindaian dasar
Untuk mengambil semua kunci dalam basis data Redis, Anda dapat menggunakan
Perintah ini akan mengembalikan kursor dan daftar kunci
Contoh 2: Menggunakan MATCH untuk Memfilter Kunci
Jika Anda ingin menemukan kunci yang cocok dengan pola tertentu, seperti kunci yang dimulai dengan “user:”, Anda dapat menggunakan
Perintah ini hanya mengembalikan kunci yang dimulai dengan “user:”
Contoh 3: Menentukan COUNT
Untuk memberi petunjuk berapa banyak kunci yang harus dikembalikan Redis dalam setiap iterasi, Anda dapat menentukan hitungan
Ini akan mencoba mengembalikan sekitar 10 kunci. Perhatikan bahwa jumlah sebenarnya yang dikembalikan mungkin kurang dari ini
Contoh 4: Mengulang Melalui Semua Kunci
Untuk mengulang semua tombol dalam beberapa kali iterasi, Anda perlu melacak kursor yang dikembalikan. Berikut adalah contoh skrip shell sederhana:
cursor=0
while true; do
result=$(redis-cli SSCAN myset $cursor MATCH apple:*)
echo "$result" # Process the result as needed
cursor=$(echo "$result" | awk 'NR==1{print $1}') # Update the cursor
if [[ "$cursor" == "0" ]]; then
break # Stop when the cursor is back to 0
fi
done
Menggunakan Perintah SSCAN
Perintah SSCAN digunakan untuk mengulang elemen dalam sebuah set. Sintaksnya mirip dengan SCAN
Contoh SSCAN
Langkah 1: Membuat Set dan Menambahkan Elemen
Mari kita buat sebuah set bernama myset dan tambahkan beberapa elemen ke dalamnya