Redis Sıralı Küme (Sorted Set / ZSET) Yönetimi Rehberi
Bu Rehberde Ne Öğreneceksiniz?
Bu rehberde Redis Sorted Set veri tipini öğreneceksiniz.
Verileri puanlarına göre sıralayıp filtreleyeceksiniz.
Birden fazla kümeyi birleştirerek yeni veri setleri oluşturacaksınız.
🧠 Teknik Özet
Ana konu: Redis Sıralı Küme (ZSET) yönetimi.
Çözülen problem: Puan bazlı sıralı ve benzersiz veri saklama.
İzlenen adımlar: Veri ekleme, listeleme, analiz, silme ve birleştirme.
1. Sıralı Küme Oluşturma ve Eleman Ekleme
Sorted Set’te her eleman bir puan (score) ile saklanır.
Elemanlar benzersizdir, puanlar paylaşılabilir.
Tek Eleman Ekleme
ZADD gitarist_listesi 1 "Joe Pass"
- Bu komut yeni bir ZSET oluşturur veya mevcut kümeye eleman ekler.
Çoklu Eleman Ekleme
ZADD gitarist_listesi 4 "Stephen" 2 "Rosetta" 3 "Bola" 8 "Elizabeth"
- Puanlar ardışık olmak zorunda değildir.
Eleman Puanı Artırma
ZINCRBY gitarist_listesi 5 "Stephen"
- Eleman yoksa otomatik eklenir.
2. Verileri Listeleme ve Filtreleme
Artan Sıralama
ZRANGE gitarist_listesi 0 3
- Düşük puandan yükseğe sıralar.
Puanlarla Birlikte Listeleme
ZRANGE gitarist_listesi 0 -1 WITHSCORES
- Tüm elemanları puanlarıyla getirir.
Ters Sıralama
ZREVRANGE gitarist_listesi 0 2
- En yüksek puanlı elemanları listeler.
Puan Aralığına Göre Filtreleme
ZRANGEBYSCORE gitarist_listesi 2 4
- Parantez kullanımı uç değerleri hariç tutar.
3. Küme Hakkında Bilgi Alma
Toplam Eleman Sayısı
ZCARD gitarist_listesi
- Kümenin boyutunu döndürür.
Eleman Sırası
ZRANK gitarist_listesi "Joe Pass"
- Sıralama 0’dan başlar.
Eleman Puanı
ZSCORE gitarist_listesi "Bola"
- Eleman yoksa nil döner.
4. Eleman Silme İşlemleri
- Tekil Eleman Silme
ZREM gitarist_listesi "Bola"
- Belirtilen elemanı tamamen kaldırır.
- Puan Aralığına Göre Silme
ZREMRANGEBYSCORE gitarist_listesi 4 6
- Belirli puan aralığındaki elemanları siler.
Sıraya Göre Silme
ZREMRANGEBYRANK gitarist_listesi 0 2
- En düşük sıralı elemanları kaldırır.
5. Kümeleri Birleştirme ve Kesişim Alma
Birleşim (UNION)
ZUNIONSTORE yeni_grup 2 liste1 liste2
- Tekrarsız birleşim oluşturur.
Kesişim (INTERSECTION)
ZINTERSTORE ortak_grup 2 liste1 liste2
- Sadece ortak elemanları alır.
❓ Sıkça Sorulan Sorular (SSS)
1. Aynı puanlı elemanlar nasıl sıralanır? Alfabetik (leksikografik) sıraya göre.
2. Puanlar ondalıklı olabilir mi? Evet, float değerler desteklenir.
3. Bir eleman tekrar eklenirse ne olur? Mevcut puanı güncellenir.
4. -1 indeksi ne anlama gelir? Kümenin son elemanını temsil eder.
🎯 Sonuç
Bu rehberle Redis Sorted Set yapısını etkili kullandınız. Puanlı verileri sıralayıp analiz ettiniz. Gelişmiş filtreleme ve birleştirme işlemleri yaptınız.
Bu ZSET yapılarını Rabisu Bulut altyapısında yüksek performanslı Redis sunucularında hemen deneyebilirsiniz.