- Kebanyakan (Tapi Tidak Semua) Objek Menggunakan Kunci
- Menggunakan Ruang Nama
- Mengambil Semua Kunci yang Ada
Seperti mesin database non-relasional lainnya, memikirkan bagaimana Redis menangani struktur dan asosiasi data terkadang bisa jadi sulit. Ini terutama benar ketika Redis dibandingkan dengan database relasional yang lebih tradisional dengan tabel yang dikarantina, masing-masing berisi beberapa baris dan kolom untuk menyimpan data.
Karena Redis non-relasional, semua yang ada di sistem dikonfigurasikan dengan key/value
dasar berpasangan pada tingkat yang paling sederhana. Selama pengembangan khususnya, mungkin sulit untuk melacak semua yang sudah ada di database, jadi dalam tutorial singkat ini kita akan membahas metode untuk mengambil semua keys
dari database Redis dengan beberapa perintah sederhana.
Sebagian besar (Tapi Tidak Semua) Objek Menggunakan Kunci
Untuk sebagian besar penyimpanan data dengan Redis, data akan disimpan dalam key/value
sederhana pasangan. Ini paling baik ditunjukkan melalui redis-cli
(antarmuka baris perintah) menggunakan GET
dan SET
perintah.
Misalnya, kami mungkin ingin menyimpan beberapa informasi tentang books
, seperti title
dan author
dari beberapa favorit kami.
> SET title "The Hobbit"
OK
> SET author "J.R.R. Tolkien"
OK
title
dan author
adalah keys
kami telah menetapkan dan nilai string aktual ditentukan setelahnya. Jadi kita bisa melihatnya dengan GET
, seperti ini:
> GET title
"The Hobbit"
> GET author
"J.R.R. Tolkien"
Menggunakan Namespace
Itu semua baik dan bagus, tetapi bagaimana kita menambahkan buku lain? Kami tidak dapat menggunakan kembali title
yang sama dan author
kunci atau kami akan menimpa data yang ada. Sebagai gantinya, kita dapat menggunakan sintaks namespace dengan menggunakan :
pemisah dan memberikan setiap title
atau author
masukkan keys
numerik unik :
> SET title:1 "The Hobbit"
OK
> SET author:1 "J.R.R. Tolkien"
OK
> SET title:2 "The Silmarillion"
OK
> SET author:2 "The Silmarillion"
OK
Sekarang menggunakan GET
membutuhkan penambahan keys
numerik unik juga:
> GET title:1
"The Hobbit"
> GET title:2
"The Silmarillion"
Mengambil Semua Kunci yang Ada
Ternyata, setiap SET
perintah yang kami keluarkan di atas membuat keys
yang baru dan unik dalam database Redis kami. Untuk mendapatkan daftar semua keys
saat ini yang ada, cukup gunakan KEYS
perintah:
> KEYS *
1) "title:1"
2) "title:2"
3) "title"
4) "author:2"
5) "author"
6) "author:1"
Dengan mengikuti KEYS
dengan tanda bintang (*
) – yang bertindak sebagai pencarian wildcard – kami meminta Redis untuk mengambil semua kunci dalam sistem. Jadi, kita tidak hanya melihat dua title
asli kita dan author
kunci tetapi juga empat versi enumerasi yang mengikutinya.
Sintaks berikut KEYS
dapat digunakan untuk mencari kata atau frasa tertentu di dalam kunci, atau padanan yang sama persis. Di sini kita ingin semua kunci yang berisi teks 'title'
:
> KEYS *title*
1) "title:1"
2) "title:2"
3) "title"
PERHATIAN:Seperti yang disebutkan dalam dokumentasi resmi, disarankan untuk menghindari penggunaan KEYS
perintah pada database yang sangat besar, tetapi khususnya hindari menggunakannya di lingkungan produksi. Sejak KEYS
berpotensi mengembalikan setiap kunci dalam sistem, ini dapat memiliki dampak negatif yang dramatis pada kinerja.