Redis
 sql >> Teknologi Basis Data >  >> NoSQL >> Redis

Persyaratan Ruang Struktur Data Redis

Ini jauh lebih dari perkiraan Anda. Misalkan ziplist tidak digunakan (yaitu Anda memiliki banyak item).

Daftar Redis adalah daftar tertaut ganda klasik:3 petunjuk (sebelumnya,selanjutnya,nilai) per item.

Set yang diurutkan adalah kamus plus daftar lewati. Dalam kamus, item akan disimpan dengan 3 pointer juga (kunci, nilai, berikutnya). Jejak memori daftar lewati lebih kompleks untuk dievaluasi:setiap node membutuhkan 1 double (skor), 2 pointer (obj,mundur), ditambah n pasangan (pointer,nilai rentang) dengan n antara 1 dan 32. Sebagian besar item hanya akan mengambil 1 atau 2 pasangan.

Dengan kata lain, ketika tidak direpresentasikan sebagai ziplist, set yang diurutkan sejauh ini merupakan struktur data Redis dengan overhead paling banyak. Dibandingkan dengan daftar, overhead memori lebih dari 200% (yaitu 3 kali).

Catatan:cara terbaik untuk mengevaluasi konsumsi memori dengan Redis adalah dengan mencoba membuat daftar besar atau kumpulan yang diurutkan dengan data semu dan menggunakan INFO untuk mendapatkan jejak memori.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Perintah redis untuk mendapatkan semua kunci yang tersedia?

  2. Eksekusi paralel dengan StackExchange.Redis?

  3. Redis antrean pesan pubsub tetapi dengan panggilan balik, seperti di ZeroMQ

  4. Redis CLI tidak menampilkan kunci yang baru saja disimpan melalui Laravel

  5. Bagaimana cara menyimpan array asosiatif? Set atau Hash atau Daftar?