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

Rancang tabel database Redis seperti SQL?

Redis, seperti penyimpanan data NoSQL lainnya, memiliki persyaratan berbeda berdasarkan apa yang akan Anda lakukan.

Redis memiliki beberapa struktur data yang dapat berguna tergantung pada kebutuhan Anda. Misalnya, mengingat keinginan Anda untuk select * from student where name = 'xxx' anda dapat menggunakan hash Redis .

redis 127.0.0.1:6379> hmset student:xxx id 1 college nnn address xn
OK
redis 127.0.0.1:6379> hgetall student:xxx
1) "id"
2) "1"
3) "college"
4) "nnn"
5) "address"
6) "xn"

Jika Anda memiliki pertanyaan lain, seperti Anda ingin melakukan hal yang sama tetapi pilih where college = 'nnn' maka Anda harus mendenormalisasi data Anda. Denormalisasi biasanya merupakan hal yang buruk di SQL, tetapi di NoSQL itu sangat umum.

Jika kueri utama Anda akan bertentangan dengan nama, tetapi Anda mungkin perlu menanyakan tentang perguruan tinggi, maka Anda dapat melakukan sesuatu seperti menambahkan set selain hash.

redis 127.0.0.1:6379> sadd college:nnn student:xxx
(integer) 1
redis 127.0.0.1:6379> smembers college:nnn
1) "student:xxx"

Dengan struktur data Anda seperti ini, jika Anda ingin mencari semua informasi untuk nama kuliah xn, Anda harus memilih set terlebih dahulu. , lalu pilih setiap hash berdasarkan nama yang dikembalikan dalam set .

Persyaratan Anda umumnya akan mendorong desain dan struktur yang Anda gunakan.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Buat kunci massal di Redis - ServiceStack C#

  2. rails + buruh pelabuhan + sidekiq + Kesalahan menghubungkan ke Redis pada 127.0.0.1:6379 (Errno::ECONNREFUSED)

  3. Redis, mendengarkan acara pubsub dan mengubahnya menjadi aliran untuk konsumsi yang lebih andal

  4. Kesalahan seledri:hasil. dapatkan waktu habis

  5. Pemula aplikasi waktu nyata - Node.JS + Redis atau RabbitMQ -> klien/server bagaimana?