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

Redis :Bagaimana cara mengatur satu kunci sama dengan nilai kunci lain?

Anda dapat melakukan ini dengan skrip Lua:

redis.call('SET', KEYS[2], redis.call('GET', KEYS[1])); return 1;
  1. KEYS1 adalah kunci sumber
  2. KEYS2 adalah kunci target

Contoh di bawah ini menggunakan SCRIPT LOAD untuk membuat skrip dan memanggilnya menggunakan EVALSHA dengan meneruskan argumen berikut:

  1. SHA1 kembali dari pemuatan skrip
  2. a 2 untuk jumlah kunci yang akan dilewatkan
  3. Kunci sumber
  4. Kunci target.

Keluaran:

redis 127.0.0.1:6379> set src.key XXX
OK
redis 127.0.0.1:6379> get src.key
"XXX"
redis 127.0.0.1:6379> SCRIPT LOAD "redis.call('SET', KEYS[2], redis.call('GET', KEYS[1])); return 1;"
"1119c244463dce1ac3a19cdd4fda744e15e02cab"
redis 127.0.0.1:6379> EVALSHA 1119c244463dce1ac3a19cdd4fda744e15e02cab 2 src.key target.key
(integer) 1
redis 127.0.0.1:6379> get target.key
"XXX"

Tampaknya ada banyak hal dibandingkan dengan hanya melakukan GET dan kemudian SET, tetapi setelah Anda memuat skrip (dan menghafal SHA1), Anda dapat menggunakannya kembali berulang kali.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mengatur cache_store di penginisialisasi

  2. Cara lebih cepat untuk mengulangi semua kunci dan nilai dalam redis db

  3. Menyalahgunakan cURL untuk berkomunikasi dengan Redis

  4. Perpotongan dari dua atau lebih himpunan yang diurutkan

  5. Redis - Apa, Mengapa, dan Bagaimana menggunakan Redis sebagai basis data utama