Seperti Redis open-source, Tair (Redis OSS-compatible) mendukung tipe data standar seperti String, List, Hash, Set, Sorted Set, dan Stream. Meskipun mencukupi untuk banyak kasus penggunaan, tipe-tipe tersebut dapat kurang memadai dalam skenario bisnis kompleks yang memerlukan kode kustom ekstensif atau skrip Lua yang rumit. Untuk mengatasi keterbatasan ini, Tair (Enterprise Edition) mengintegrasikan serangkaian struktur data eksklusif, yaitu exString (yang mencakup peningkatan perintah Redis String), exHash, exZset, GIS, TairBloom, Doc, TS, Cpc, Roaring, TairSearch, dan Vector. Struktur data ini memperluas kemampuan Redis, mengurangi kompleksitas pengembangan aplikasi tingkat lanjut, menyederhanakan kode, serta meningkatkan kinerja bisnis secara keseluruhan—memungkinkan Anda fokus pada inovasi.
-
Instans berbasis DRAM yang kompatibel dengan Redis 7.0 atau 6.0 mendukung semua struktur data tersebut.
-
Instans berbasis DRAM yang kompatibel dengan Redis 5.0 mendukung semua struktur data tersebut kecuali TairVector.
-
Instans optimasi memori persisten kompatibel dengan exString (termasuk perintah yang meningkatkan fungsionalitas string Redis), exHash, dan Cpc.
Struktur data diperluas Tair dan modul Redis Stack
Tabel berikut menjelaskan struktur data yang diintegrasikan ke dalam Tair dan membandingkan fitur-fiturnya dengan Redis Stack Server.
|
Type |
Struktur data diperluas Tair |
Deskripsi |
|
|
Peningkatan String |
None |
Praktik terbaik: Implementasikan kunci optimis berkinerja-tinggi menggunakan TairString dan Implementasikan rate limiter efisien menggunakan TairString. |
|
|
Peningkatan Hash |
None |
exHash memungkinkan Anda menetapkan time-to-live (TTL) dan versi untuk masing-masing field dalam hash. Hal ini meningkatkan fleksibilitas struktur data Hash dan menyederhanakan pengembangan untuk banyak kasus penggunaan. Struktur data ini bersifat open source. Untuk informasi lebih lanjut, lihat TairHash. Praktik terbaik: Kelola logon pengguna multi-perangkat menggunakan TairHash. |
|
|
Peningkatan Zset |
None |
exZset mendukung pengurutan skor bertipe double hingga 256 dimensi, memungkinkan leaderboard standar maupun multidimensi. Struktur data ini bersifat open source. Untuk informasi lebih lanjut, lihat TairZset. Praktik terbaik: Implementasikan leaderboard multidimensi dengan mudah menggunakan exZset dan Implementasikan leaderboard terdistribusi menggunakan exZset. |
|
|
Geospasial |
None |
TairGIS adalah struktur data yang menggunakan R-tree untuk pengindeksan dan mendukung API untuk Sistem Informasi Geografis (SIG). Struktur ini mendukung kueri untuk titik (points), linestring, dan poligon, serta pemeriksaan hubungan seperti contains, within, dan intersects. Struktur data ini bersifat open source. Untuk informasi lebih lanjut, lihat TairGIS. Praktik terbaik: Implementasikan geofencing menggunakan TairGIS dan Implementasikan layanan belanja lokal menggunakan TairGIS. |
|
|
Doc (JSON) |
RedisJSON |
TairDoc adalah struktur data berbasis dokumen yang mendukung standar JSON, mirip dengan modul RedisJSON. TairDoc menyimpan data dalam format pohon biner, yang memungkinkan akses cepat ke subelemen dalam objek JSON. |
|
|
Pencarian |
RediSearch |
TairSearch menyediakan sintaks kueri ala Elasticsearch (ES-like), rangkaian tokenizer akurat yang lebih luas, serta kinerja kueri yang unggul. Praktik terbaik: |
|
|
Deret waktu |
RedisTimeSeries |
Dibandingkan RedisTimeSeries, TairTS menawarkan skalabilitas tag yang lebih besar. TairTS mendukung struktur hash dua level untuk timeline berdasarkan skeys (tag), memungkinkan kueri agregasi pada timeline sekunder, serta memungkinkan Anda memperbarui atau menambahkan data ke deret waktu historis. Praktik terbaik: Implementasikan pemantauan tingkat detik menggunakan TairTS. |
|
|
Sketches |
RedisBloom |
TairBloom kompatibel dengan RedisBloom dan mendukung skalabilitas dinamis. Struktur ini menggunakan algoritma hash 64-bit untuk mengurangi tabrakan hash, sehingga secara signifikan menurunkan laju tabrakan pada dataset besar. Praktik terbaik: Ideal untuk sistem rekomendasi dan sistem crawler. Untuk informasi lebih lanjut, lihat TairBloom dan Kelola notifikasi push event game secara efisien menggunakan filter Bloom. |
|
|
None |
TairCpc adalah struktur data yang dikembangkan berdasarkan algoritma sketch Compressed Probability Counting (CPC). Struktur ini melakukan perhitungan berkinerja-tinggi pada data sampel sambil menggunakan memori minimal. TairCpc mendukung jendela tumbling dan jendela geser untuk pemrosesan aliran yang lebih baik serta mencakup operator agregasi umum yang digunakan dalam analitik data besar, seperti |
||
|
Bitmap |
None |
TairRoaring menyediakan modul komputasi yang efisien dan sangat stabil. Struktur ini mendukung operasi pada beberapa bitmap, sehingga meningkatkan kinerja dan efisiensi ruang. Praktik terbaik: Implementasikan seleksi kohort pengguna menggunakan TairRoaring. |
|
|
pencarian vektor |
Redis Search (Vector Similarity) |
TairVector adalah struktur data diperluas eksklusif yang dikembangkan oleh Tair. Struktur ini menyediakan layanan database vektor real-time berkinerja-tinggi yang mengintegrasikan penyimpanan dan pengambilan. Praktik terbaik: |
Klien Tair (Enterprise Edition)
Untuk menyederhanakan penggunaan struktur data diperluas Tair, Tair telah mengembangkan klien Tair berdasarkan beberapa klien Redis populer. Anda dapat menggunakan klien Tair ini untuk langsung mengakses struktur data diperluas Tair.
Anda dapat menemukan klien-klien berikut di GitHub. Repositori tersebut juga mencakup contoh kode.
|
Klien Tair |
Bahasa pemrograman |
Deskripsi |
|
Java |
Klien Tair yang dibangun di atas Jedis. |
|
|
.NET |
Klien Tair yang dibangun di atas .NET Core 5.0 dan StackExchange.Redis 2.5.61. |
|
|
Go |
Klien Tair yang dibangun di atas go-redis. |
|
|
Python |
Klien Tair yang dibangun di atas redis-py. |
FAQ
-
Q: Apakah Tair (Redis OSS-compatible) mendukung Redis Stack Server?
A: Karena pembatasan lisensi open source Redis, baik Redis Open-Source Edition maupun Tair (Enterprise Edition) dari Alibaba Cloud tidak mendukung Redis Stack Server.
Sebagai solusi, Tair (Enterprise Edition) menyediakan struktur data diperluas eksklusifnya sendiri, termasuk exString (yang mencakup peningkatan perintah Redis String), exHash, exZset, GIS, TairBloom, Doc, TS, Cpc, Roaring, TairSearch, dan Vector. Tair mendukung jangkauan struktur data yang lebih luas daripada Redis Stack Server dan menawarkan kinerja lebih baik untuk beberapa di antaranya.
-
Q: Bagaimana cara menetapkan time-to-live (TTL) untuk struktur data diperluas Tair?
A: Untuk exString, exHash, dan Cpc, Anda dapat menetapkan TTL secara langsung melalui perintah khususnya. Untuk struktur data diperluas Tair lainnya, tetapkan TTL key menggunakan perintah
EXPIRE | EXPIREAT <Keyname>, sepertiEXPIRE foo 60. -
Q: Bagaimana saya bisa memeriksa struktur data diperluas mana yang didukung oleh instans saya?
A: Struktur data diperluas yang didukung bergantung pada edisi dan tipe instans. Masuk ke Konsol Tair dan buka halaman Detail Instans untuk memeriksa edisi (Redis Open-Source Edition atau Tair (Enterprise Edition)) serta tipe instans Anda. Kemudian, rujuk daftar berikut untuk menentukan struktur yang didukung:
-
Redis Open-Source Edition: Hanya mendukung perintah Redis standar dan tidak mendukung struktur data diperluas Tair.
-
tipe in-memory: Dukungan bervariasi berdasarkan versi kompatibilitas Redis. Instans yang kompatibel dengan Redis 7.0 dan 6.0 mendukung semua struktur data diperluas Tair, sedangkan instans yang kompatibel dengan Redis 5.0 tidak mendukung Vector.
-
tipe memori persisten: Hanya mendukung exString (termasuk peningkatan perintah Redis String), exHash, dan Cpc.
-
tipe berbasis disk: Tidak mendukung struktur data diperluas Tair.
-