Członkowie zestawu sortowanego Redis
Zestawy sortowane w Redis przechowują unikalne elementy w uporządkowany sposób. Dlatego może być stosowany w aplikacjach o niskiej opóźnienia, takich jak kolejki priorytetowe, tablice liderów w czasie rzeczywistym, indeksowanie wtórne itp. Każdy z tych ustawionych elementów przypisuje się rangę i umieszcza się w kolejności rosnącej na podstawie wartości wyniku. Dostępnych jest kilka poleceń do wydajnego dodawania, aktualizacji i usuwania posortowanych elementów zestawu. Najważniejszą rzeczą w sortowanych zestawach jest to, że po dodaniu lub usunięciu ustalonego członka nadal udaje się utrzymać szeregi członków i zamówienie.
Powyższy rysunek pokazuje scenariusz usunięcia elementów sortowanego Redis i sposób, w jaki zachowuje. Udaje się zachować prawidłowe wartości kolejności i indeksu, umieszczając odpowiednio każdego członka. W następnej sekcji zajmiemy się posortowanym zestawem Usuń operację w szczegółowy sposób.
Usuwanie członków za pomocą dowództwa ZREM
Polecenie ZREM służy do usuwania jednego lub więcej członków z sortowanego zestawu przechowywanego w określonym klawiszu. To polecenie ma logarytmiczną złożoność czasu. Jeśli polecenie jest używane do usunięcia jednego elementu, wówczas złożoność czasu jest proporcjonalna do wartości logarytmicznej liczby elementów. Jeśli do usunięcia określono wiele elementów, będzie to o (numer_of_elements_to_remove* log (total_number_of_set_elements))).
Składnia
ZREM sorted_set_key członek [członek…]
sorted_set_key: Jest to unikalny identyfikator, w którym sortowany zestaw jest przechowywany.
członek: To jest członek, który powinien zostać usunięty.
Polecenie ZREM usunie określone elementy z sortowanego zestawu. Zwróci odpowiedź liczbową, która jest liczbą usuniętych członków. Ilekroć określisz nieistniejącego członka, zostanie pominięty. Ponadto polecenie rzuci błąd, jeśli podany klawisz nie utrzyma sortowanego zestawu.
Przykład - Zarządzaj kolejką zamówień klienta z Redis Zrem
Weźmy scenariusz rzeczywistego, w którym restauracja obsługuje swoich klientów na podstawie pierwszych przydzielonych z najwyższym priorytetem. Po obsłudze klientów o najwyższym priorytecie restauracja powinna usunąć każdy wpis klienta z kolejki. Zestaw posortowany Redis będzie idealną strukturą danych do wdrożenia tego scenariusza w sposób skuteczny i wydajny pamięć.
Każdy członek zestawu sortowanego Redis wygląda jak następujące.
Jak pokazano na powyższej ilustracji, za każdym razem, gdy klient był obsługiwany przez restaurację, członek musi zostać usunięty z sortowanego zestawu. Możemy użyć polecenia ZREM, aby to osiągnąć.
Dodajmy czterech klientów pokazanych na powyższym rysunku. Będziemy używać polecenia Zadd do utworzenia sortowanego zestawu Customerqueue i dodaj czterech członków, jak pokazano następujące.
Zadd Customerqueue 1 Klient: 10
Zadd Customerqueue 9 Klient: 1
Zadd Customerqueue 7 Klient: 6
Zadd Customerqueue 5 Klient: 2
Sprawdźmy sortowany zestaw za pomocą polecenia Zrange.
Zrange Customerqueue 0 10 z sesorami
Wyjście:
Zgodnie z oczekiwaniami, sortowany zestaw Customerqueue został zamówiony na podstawie wartości priorytetowej.
Usuń członka z sortowanego zestawu
Klient: 10 kto ma najwyższy priorytet, zostanie najpierw podany. Stąd Klient: 10 Członkowie muszą zostać usunięci z sortowanego zestawu. Użyjmy polecenia ZREM, aby usunąć element.
ZreM Customerqueue Klient: 10
Wyjście:
Zgodnie z oczekiwaniami wartość zwrotna wynosi 1, co oznacza, że jeden wpis został usunięty. Sprawdźmy Customerqueue Ponownie.
Członek Klient: 10 został pomyślnie usunięty.
Usuń wiele członków z sortowanego zestawu
Powiedzmy oba Klient: 2 I Klient: 6 zostały obsługiwane z dwóch okien równoległych. Dlatego powinniśmy usunąć obu członków z sortowanego zestawu. Możemy użyć polecenia ZREM, aby usunąć obu członków jednocześnie.
ZreM Customerqueue Klient: 2 Klient: 6
Wyjście:
Zgodnie z oczekiwaniami wartość zwrotu wynosi 2, co wskazuje, że dwóch członków zostało usunięte. Sprawdźmy ponownie cały sortowany zestaw.
Polecenie ZREM jest zalecane do używania w dowolnym momencie, gdy potrzebujesz usunąć elementy z sortowanego zestawu.
Wniosek
Podsumowując, polecenie ZREM służy do usunięcia jednego lub wielu elementów z zestawu posortowanego Redis przechowywanego w danym kluczu. Po prostu usuwa określonych członków z sortowanego zestawu. Ponadto zamówienie będzie przechowywane w uzyskanym zestawie posortowanym. Jak wspomniano powyżej, ma logarytmiczną złożoność czasu, która sprawia, że polecenie jest używane w aplikacjach w czasie rzeczywistym. Stąd polecenie ZREM zaleca się użycie w dowolnym momencie, gdy trzeba usunąć elementy z sortowanego zestawu.