Bitmap Redis

Bitmap Redis
Bitmap to po prostu szereg bitów. Dlatego jest powszechnie znany jako niewielka tablica lub wektor bitowy. Jest to jedna ze struktur danych, która sprawia, że ​​Redis jest dość elastyczny i rozległy po wyjęciu z pudełka. Jeśli chcesz przechowywać mapę informacji logicznych w kompaktowej przestrzeni, bitmapy będą Twoim domyślnym wyborem.

Omówmy, jak używać bitmap w Redis za pomocą tego samouczka.

Bitmap Redis

Przed zanurzeniem się w rzeczywistych poleceń i przechowuj mapy bitowe, kilka rzeczy do zanotowania.

Bitmap nie jest natywnym typem danych w Redis. W rzeczywistości są to zestaw operacji zorientowanych na bit zbudowany na typ.

Operacje bitowe są podzielone na dwie główne grupy:

  1. Operacje jednolitowe o stałym czasie.
  2. Operacje bitów grupowych.

Przykładem operacji jednolitej jest ustawianie od 1 do 0 lub pobieranie wartości bitu.

Operacja bitowa grupy może obejmować proces taki jak uzyskanie liczby bitów w określonym zakresie.

Redis Utwórz mapę bitową

Aby utworzyć klawisz trzymający mapę bitową w Redis, używamy polecenia SetBit. Polecenie przyjmuje nazwę klucza, wartości przesunięcia i faktycznego bitu jako argumentów.

Składnia jest jak pokazana:

127.0.0.1: 6379> Bit offsetowy klawisza setbit

Jeśli określony klucz nie istnieje, Redis utworzy nowy, który może utrzymać nieco przy określonym przesunięciu.

Wartość przesunięcia musi być większa lub równa 0, ale mniej niż 2^32. Wynika to z faktu, że bitmapy są ograniczone do 512 MB.

Podsumowanie: Bit reprezentuje najbardziej podstawową jednostkę informacji i zawiera dwie możliwe wartości. Mówiąc prosto, do opisania logicznych informacji stanowych, takich jak tak/nie, 1/0, +/- itp.

Przykłady pokazano poniżej.

127.0.0.1: 6379 [10]> Setbit Bitkey 2 1
(liczba całkowita) 0
127.0.0.1: 6379 [10]> Setbit Bitkey 2 0
(liczba całkowita) 1

Redis liczba liczby ustalonych bitów

Aby określić liczbę ustawionych bitów w Redis, użyj polecenia BitCount. Weźmy przykład.

127.0.0.1: 6379 [10]> Setbit Bitkey 3 1
127.0.0.1: 6379 [10]> Setbit Bitkey 4 1
127.0.0.1: 6379 [10]> Setbit Bitkey 5 1
127.0.0.1: 6379 [10]> Setbit Bitkey 6 1
127.0.0.1: 6379 [10]> Setbit Bitkey 7 1 1
Aby uzyskać liczbę ustalonych bitów, uruchom:
127.0.0.1: 6379 [10]> BitCount Bitkey
(liczba całkowita) 5

Powinno to zwrócić liczbę ustalonych bitów jako liczbę całkowitą.

Uwaga: ustalony bit odnosi się do dowolnego bitu, którego wartość jest ustawiona na 1.

Operacje Redis Bitwise

Możemy wykonywać operacje bitowe za pomocą polecenia Bitop. Na przykład, aby osiągnąć bitwise i działanie, możemy zrobić:

127.0.0.1: 6379 [10]> Setbit Bitkey2 3 1
(liczba całkowita) 0

W powyższym przykładzie tworzymy nową mapę bitową i nazywamy ją bitkey2.

Następnie możemy wykonać bitowate i działanie, jak pokazano:

127.0.0.1: 6379 [10]> Bitop i Bitkey Bitkey2
(liczba całkowita) 1

Aby zdobyć klucze, uruchom:

127.0.0.1: 6379 [10]> Zdobądź bitkey2
„\ x10”

Redis pobieranie wartości bitu

Aby uzyskać wartość bitową przechowywaną przy określonym przesunięciu, użyj polecenia getbit, a następnie docelowego przesunięcia.

Przykładem jest jak pokazano:

127.0.0.1: 6379 [10]> Getbit Bitkey 3
(liczba całkowita) 1

Jeśli bit na określonym przesunięciu nie jest ustawiony, polecenie zwraca 0, jak pokazano:

127.0.0.1: 6379 [10]> Getbit Bitkey 200
(liczba całkowita) 0

Wniosek

W tym artykule omówiliśmy podstawy bitmap i sposobu ich używania w Redis. Sprawdź dokumenty, aby dowiedzieć się więcej.

Dziękuje za przeczytanie!!