Lobak LSET

Lobak Lset



Senarai Redis ialah struktur data yang memegang jujukan elemen rentetan dalam susunan sisipan. Ia berdasarkan Senarai Berpaut. Jadi, penyisipan elemen di kepala dan ekor dilakukan dalam masa yang tetap. Satu-satunya kelemahan senarai Redis ialah menyoal elemen mengikut indeks agak mahal, yang mengambil masa berkadar terus dengan indeks elemen akses. Sebab di sebalik pelaksanaan berasaskan senarai Terpaut adalah untuk menjadikan sisipan data lebih cepat untuk senarai item yang sangat panjang.

Senarai Redis mempunyai pengindeksan berasaskan 0. Elemen pertama ditetapkan sebagai 0 ke indeks; yang kedua adalah di 1 st indeks, dan sebagainya. Mengakses elemen ekor dengan indeks boleh dilakukan dengan indeks negatif seperti elemen terakhir diindeks sebagai -1, elemen terakhir ialah -2, dan seterusnya.









Elemen senarai boleh ditetapkan pada mana-mana indeks dengan arahan LSET, yang diterangkan dalam bahagian berikut.



Perintah LSET

Perintah LSET menetapkan elemen pada indeks yang diberikan bagi senarai Redis yang disimpan pada kunci yang ditentukan. Ia mempunyai sintaks mudah berikut:





LSET list_key elemen indeks

kunci_senarai : Kunci senarai Redis.

indeks : Indeks di mana anda perlu menetapkan elemen.



unsur : Elemen rentetan untuk ditetapkan pada indeks yang ditentukan.

Perintah ini mengembalikan rentetan Mudah 'OK' jika elemen telah ditetapkan dengan betul. Setiap kali ia menemui indeks yang berada di luar julat, arahan LSET mengembalikan ralat.

Salah satu kes penggunaan senarai Redis yang paling biasa ialah menyimpan siaran media sosial dan kemas kininya untuk pengguna individu. Perintah LSET memainkan peranan penting di sana, seperti yang dibincangkan dalam bahagian berikut.

Use Case – Kemas kini Catatan Media Sosial

Mari kita anggap peristiwa di mana syarikat mengekalkan tapak web media sosialnya sendiri dengan beribu-ribu pengguna secara aktif menyiarkan siaran dan status. Mereka telah mengenal pasti bahawa senarai Redis adalah calon yang sesuai untuk memegang jawatan dan status ini apabila pemasukan kerap berlaku, dan senarai Redis melakukan pemasukan dalam masa yang tetap.

Mari buat senarai Redis untuk id pengguna tertentu 100 yang akan digunakan untuk menyimpan siaran dan mesej status pengguna tertentu itu. Kami akan menggunakan arahan LPUSH untuk meletakkan beberapa siaran tiruan dan mesej status untuk id pengguna 100.

LPUSH social-media:user:100 '2022-08-01:Hari yang baik untuk bermula.'
LPUSH social-media:user:100 '2022-08-05:Memulakan kerja baharu di linuxhint'
LPUSH social-media:user:100 '2022-08-06:Majlis yang hebat hari ini'
LPUSH social-media:user:100 '2022-08-07:Hari yang buruk!!!'

Pengeluaran

Andaikan bahawa pengguna dengan id pengguna 100 akan mengemas kini salah satu siaran lamanya. Katakan jawatan ketiga yang dia siarkan memerlukan sedikit pembetulan. Perintah LSET boleh mencapai ini dengan mudah, seperti yang ditunjukkan dalam yang berikut.

Oleh kerana elemen ketiga berada pada indeks 2 dari Ketua. Kami akan mengemas kininya seperti berikut:

LSET social-media:user:100 2 'Memulakan peranan baharu sebagai penulis di LinuxHint'

Pengeluaran

Seperti yang dijangkakan, arahan telah dilaksanakan dengan jayanya, dan elemen pada indeks kedua telah dikemas kini. Mari kita semak semula senarai seperti berikut:

Kita boleh melakukan perkara yang sama dengan menentukan indeks dari ekor seperti berikut:

LSET social-media:user:100 -2 'Memulakan peranan baharu sebagai penulis di LinuxHint'

Seperti yang dijangkakan, elemen ketiga telah ditetapkan kepada rentetan baharu 'Job started at LinuxHINT'.

Jika anda menentukan indeks yang berada di luar julat, ia akan menimbulkan ralat, seperti yang ditunjukkan dalam yang berikut:

LSET social-media:user:100 6 'Kerja bermula di LinuxHINT'

Pengeluaran

Kesimpulan

Perintah LSET menetapkan elemen senarai pada indeks tertentu kepada elemen tertentu senarai Redis yang disimpan pada kunci tertentu. Oleh kerana indeks senarai Redis bermula dari 0, ia adalah elemen pertama. Indeks 1 ialah elemen kedua senarai, dan seterusnya. Seperti yang dibincangkan, indeks elemen bermula dari ekor boleh ditentukan menggunakan nombor negatif seperti -1 ialah elemen terakhir, -2 ialah elemen sebelum yang terakhir, dan seterusnya. Apabila indeks yang tidak wujud diluluskan, arahan LSET akan mengembalikan ralat. Tambahan pula, arahan ini mengembalikan output rentetan yang mudah atas pelaksanaan yang berjaya.