Rumah  >  Artikel  >  hujung hadapan web  >  Redis 2

Redis 2

WBOY
WBOYasal
2024-08-14 17:28:31344semak imbas

Redis 2

Redis - Senarai, Set dan HashMaps

Ini adalah sambungan kepada catatan blog sebelum ini

Terdapat 3 jenis data lain yang tersedia selain daripada pasangan nilai kunci

Senarai

Struktur data ini menyerupai senarai dalam Python atau tatasusunan dalam Javascript atau C#. Ia boleh digunakan untuk menyimpan barang yang baru digunakan. Operasi biasa ialah;

Operations Explanations Examples Further Explanation
LPUSH Adds an Item to the beginning of the list LPUSH friends "Sophia" similar to Array.unshift in javascript
LRANGE Get all the items in a list LRANGE friends 0 -1 similiarly a list in python 0 is the first item and -1 is the last item
RPUSH Adds an item to the end of the list RPUSH friends "Poe" similar to Array.push in javascript
LPOP Removes an item from the start of the list LPOP friends "Poe" Will return 1 if Poe exists in the list and 0 otherwise
RPOP Removes an item from the end of the list RPOP friends "Sophia" Will return 1 if Sophia exists in the list and 0 otherwise

set

Struktur data yang hanya mempunyai item unik. serupa dengan set dalam Python dan Set dalam Javascript dan HashSets dalam C#. Operasi biasa termasuk;

Operations Explanations Examples Further Explanation
SADD Adds a value to the set SADD colors "pink"
SMEMBERS returns the members of the set SMEMBERS colors will return all the items in the set colors
SREM Removes members of the set SREM colors "pink" Will return 1 if pink exists in the list and 0 otherwise

Hashmaps

Peta cincang ialah sekumpulan pasangan nilai utama. Bagaimanapun, peta cincang tidak boleh bersarang. Mari kita ambil senario kes seseorang dengan nama, e-mel dan nombor telefon

HSET person name "Joe" # Adds the key-value pair {name : joe} to the hashmap
HSET person email "Joe@joe.com" # Adds the key-value pair {email : Joe@joe.com} to the hashmap
HSET person phone_number "+2345656655413" # Adds the key-value pair {number : ....} to the hashmap

arahan HGET boleh digunakan untuk mendapatkan nilai kunci tertentu dalam peta cincang

HGET person name # returns "Joe"

perintah HGETALL kepada semua pasangan nilai kunci dalam peta cincang

HGETALL person 

1) "name"
2) "Joe"
3) "email"
4) "Joe@joe.com"
5) "phone_number"
6) "+2345656655413"

arahan HDEL memadamkan pasangan nilai kunci dengan kuncinya

HDEL person name # removes {name : joe}

arahan HEXISTS menyemak sama ada kunci wujud dalam set cincang

HEXISTS person name # returns 0 because we've deleted it before

Itu adalah kebanyakan arahan asas yang perlu diketahui oleh pembangun.


Soalan Temuduga Biasa

  1. Apakah maksud penuh Redis?: Redis bermaksud Pelayan Kamus Jauh

  2. Bagaimana redis berbeza daripada pangkalan data tradisional seperti MySQL?: Redis beroperasi dalam memori utama dan mempunyai operasi asas untuk mengakses nilai dengan cepat tidak seperti SQL yang berada pada cakera dan mempunyai pelbagai operasi crud

  3. Apakah batasan Redis mengenai saiz dan jenis data?: Redis direka bentuk untuk menyimpan nilai yang sesuai dengan memori mesin. Ia tidak sesuai untuk model hubungan kompleks dengan cantuman atau untuk menstruktur gumpalan besar

  4. Bagaimanakah anda mengendalikan caching dalam persekitaran teragih menggunakan Redis?: Mengendalikan caching dengan menyediakan kejadian redis sebagai lapisan caching di hadapan pangkalan data. menggunakan pencincangan yang konsisten untuk mengedarkan kunci menambah nod cache memastikan pengedaran beban sekata dan mengurangkan kesilapan cache

  5. Bilakah anda harus menggunakan jenis data Senarai dalam Redis?: Senarai sesuai untuk baris gilir atom yang tahan lama, untuk giliran kerja, log, penimbal dan banyak kes penggunaan lain

Atas ialah kandungan terperinci Redis 2. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:useCallback VS useMemoArtikel seterusnya:useCallback VS useMemo