Değerleri okuma ve düzenleme
Her veri türü için ayrı düzenleyici, büyük değerleri parça parça açan bir yükleme ve kayıtlı biçimi tanıyan bir çözücü zinciri.
Değerleri okuma ve değiştirme#
Sunucunun her veri türü için ayrı bir düzenleyici vardır ve her biri değeri bütün hâlde değil
parça parça yükler: tarama yapılan türlerde HSCAN, SSCAN ve ZSCAN; listelerde LRANGE
pencereleri; akışlarda XRANGE sayfaları. Büyük bir değer indirilmez, parça parça açılır.
- String
-
Tek bir düzenleyici ve bir Kodlama seçicisi.
- Hash
-
Satır içi düzenlenebilen Alan ve Değer tablosu. Yeni alan için Yeni alan adı ve Yeni alan değeri kutuları, her satırda da bir silme işlemi bulunur.
- Liste
-
Sıra ve Değer tablosu. Yeni öğeler Başa ya da Sona eklenir.
- Set
-
Üye tablosu ve Yeni üye kutusu.
- Sıralı set
-
İkisi de düzenlenebilen Üye ve Skor sütunları.
- Stream
-
Sayfalanan bir görüntüleyici.
Bütün hâlde döndürülemeyecek kadar büyük değerler#
Bazı değerler bütün hâlde döndürülemez. Keydra bu değerlerin başını gösterir ve Kısmen gösteriliyor olarak işaretler; buradan düzenlemenin ya da kopyalamanın geri kalanı sileceğini açıklar. Kopyalama da aynı nedenle engellenir: kayıtlı olandan kısa bir metin üretirdi.
Değeri dışarı kopyalama#
Anahtar işlemleri menüsünde Anahtar adını kopyala, JSON olarak kopyala ve redis-cli komutu olarak kopyala seçenekleri bulunur. Sonuncusu, değeri doğrudan bir terminale ya da betiğe taşımanızı sağlar.
Keydra’nın çözebildiği kodlamalar#
Kodlama seçicisi varsayılan olarak Otomatik gelir; biçimi sunucu belirler. Kodlamayı elle seçmek, tahminin yanlış olduğu ya da bir değerin iki farklı biçimde okunabildiği durumlar içindir.
| Ad | Açıklama |
|---|---|
|
Base64 ile kodlanmış içerik; çözülür ve zincirin geri kalanına verilir. |
|
Brotli ile sıkıştırılmış içerik. Brotli’yi tanıtan bir başlık olmadığı için en son ve koşullu olarak tahmin edilir. |
|
Gzip sarmalayıcısı olmadan ham deflate. |
|
Gzip ile sıkıştırılmış içerik. Kendini bir sihirli sayıyla tanıttığı için tahmin güvenlidir. |
|
Baytlar onaltılık olarak; hiç metin olmayan değerler için. |
|
Java serileştirmesi. Nesneye dönüştürülmez, yalnızca tarif edilir: geri dönüştürmek, değerin seçtiği kodu çalıştırmak demektir. |
|
JSON olarak tanınır ve biçimlendirilmiş gösterilir. Bir string’in en sık tuttuğu şey. |
|
LZ4 ile sıkıştırılmış içerik. |
|
MessagePack; okunabilir bir yapıya çözülür. |
|
PHP’nin |
|
Python pickle. Java serileştirmesiyle aynı nedenle açılmaz, yalnızca tarif edilir. |
|
Baytların kendisi, UTF-8 metin olarak çözülür. Değerlerin çoğu budur ve zincirde en son denenir. |
|
Protocol Buffers; baytların gerçekten içerdiği alan numaraları ve tel tipleri olarak gösterilir — bir şema bulunmadığı için alan adları gösterilemez. |
|
Zstandard ile sıkıştırılmış içerik. |
Çözme işlemi değer okunurken sunucuda yapılır ve hedefte hiçbir şeyi değiştirmez. Kayıtlı veri olduğu gibi kalır.
Brotli kendini tanıtan bir imza taşımaz. Bu yüzden tahmini sıkı koşullara bağlıdır: düz metinden hemen önce, en son denenir; kayıtlı değerin bayt dizisi görünümünde olması gerekir; çıkan sonucun da yazdırılabilir ve girdiden büyük olması gerekir. Koşullar sağlanmazsa değer olduğu gibi gösterilir.
Java serileştirmesi ve Python pickle verileri açılmaz, yalnızca tarif edilir. Bunları nesneye çevirmek, değerin kendi seçtiği kodu çalıştırmak demektir; bu bir özellik değil, uzaktan kod çalıştırma açığıdır.
