Członkowie zestawu
Jak wspomniano, zestawy Redis zawierają unikalne elementy ciągów. Istniejące już elementy nie będą akceptowane przez zestawy Redis i zostaną zignorowane. Ponadto jeden zestaw może pomieścić do 4 miliardów unikalnych strun.
Charakter trzymania unikalnych członków zestawu Redis przydaje się w kilku przypadkach użycia w świecie rzeczywistym.
Polecenie SCARD
Komenda SCARD, skrót od zestawu kardynałów, zwraca liczbę członków w zestawie zapisanym w danym kluczu. Działa w O (1) złożoność czasu, co oznacza, że czas, który polecenie SCARD do wykonania nie opiera się na liczbie członków w danym zestawie. Zawsze zajmuje to ciągły czas.
Polecenie SCARD ma bardzo prostą składnię, jak pokazano następująco.
Set_keyset_key: Klucz zestawu redis
To polecenie zwraca wartość całkowitą, która jest liczbą członków w zestawie.
Przypadek użycia - policz unikalnych odwiedzających na stronie internetowej
Załóżmy, że firma pizzy „Yummipizza” prowadzi stronę internetową o nazwie Yummipizza.com, gdzie ludzie mogą zamówić pizzę online. Aby śledzić swoją sprzedaż i bazę klientów, utrzymują bazę danych Redis do przechowywania wszystkich unikalnych odwiedzających witrynę każdego miesiąca.
Ilekroć użytkownik odwiedza witrynę YummyPizza, identyfikator użytkownika powinien zostać dodany do bazy danych Redis. Ponadto tego samego użytkownika nie powinien być również dodawany do bazy danych. Tak więc idealną strukturą danych jest zestaw Redis, w którym zestawy przechowują tylko unikalnych członków.
Załóżmy, że pięciu użytkowników odwiedziło stronę internetową, a ci członkowie są dodawani do bazy danych Redis, jak pokazano następujące.
Sadd Yummipizzavisitors: październik John Mary Raza Stoinis PrinceZgodnie z oczekiwaniami, liczba całkowita 5 została zwrócona, co oznacza, że pięciu członków jest dodawanych do zestawu przechowywanego w kluczu „YummuPizavisitors: październik."
Pod koniec dnia administrowie firmy muszą sprawdzić całkowitą liczbę unikalnych odwiedzających na stronie internetowej. Tak więc należy obliczyć ustawioną kardynanie. Na szczęście wcześniej omawiane polecenie SCARD przydaje się w tego rodzaju scenariuszu.
Wykonajmy polecenie SCARD na zestawie zapisanym na kluczu „YummuPizavisitors: październik."
SCARD YummuPizavisitors: październikWyjście to 5, co oznacza, że pięć unikalnych członków znajduje się w określonym zestawie. To polecenie wykonuje się zbyt szybko. Nie ma znaczenia pięciu członków lub 50000 członków; Czas wykonania będzie stały.
Załóżmy, że określony klucz zestaw nie istnieje w bazie danych Redis. Następnie wyjście wyniesie 0, jak pokazano w poniższym przykładzie. W takim przypadku określamy klucz, którego nie ma w bazie danych.
Scard NonxistingKeyWniosek
Podsumowując, zestaw Redis jest idealnym kandydatem do przechowywania unikalnych ciągów. Jak omówiono, najważniejszą rzeczą w zestawie Redis jest to, że większość powiązanych operacji zajmuje stały czas na wykonanie. Polecenie SCARD jest jednym z najczęściej używanych poleceń zestawu do obliczenia całkowitej liczby elementów zestawu dla danego zestawu przechowywanego w określonym klawiszu. Bez względu na to, ile członków zestawu jest dostępnych, to polecenie zajmuje stały czas, aby zapewnić wyjście. Jak pokazano w ostatnim przykładzie, jeśli klawisz ustawiony nie istnieje, wówczas wyjście wyniesie 0.