Korzystanie z poleceń skanowania w Redis w systemie Linux
Redis, open-source’owy magazyn struktur danych w pamięci, jest znany ze swojej szybkości i wszechstronności jako baza danych klucz-wartość. Jedną z jego potężnych funkcji jest możliwość przyrostowego iterowania przez zbiory danych za pomocą poleceń skanowania. Jest to szczególnie przydatne w przypadku dużych zbiorów danych, ponieważ pozwala na wydajne pobieranie danych bez obciążania serwera. Dla użytkowników na dedykowanym serwerze Linux, korzystanie z poleceń skanowania w Redis może zwiększyć wydajność obsługi danych, umożliwiając precyzyjne, zoptymalizowane pod kątem zasobów przetwarzanie zbiorów danych. W tym artykule zbadamy, jak skutecznie korzystać z poleceń skanowania w Redis w środowisku Linux, oferując szczegółowe przykłady i najlepsze praktyki w zakresie zarządzania i pobierania danych na dużą skalę
Czym są polecenia skanowania?
Polecenia skanowania w Redis zapewniają sposób na iterację po kluczach, zestawach, hashach i posortowanych zestawach w sposób nieblokujący. W przeciwieństwie do polecenia KEYS, które może być niebezpieczne dla dużych zbiorów danych, ponieważ zwraca wszystkie pasujące klucze naraz, polecenia skanowania zwracają niewielką liczbę elementów naraz. Minimalizuje to wpływ na wydajność i pozwala na iterację przyrostową
Kluczowe polecenia skanowania
- SCAN: Iteruje przez klucze w przestrzeni kluczy.
- SSCAN: Iteruje przez elementy w zestawie.
- HSCAN: Iteruje przez pola i wartości w skrócie.
- ZSCAN: Iteruje po elementach i wynikach w posortowanym zbiorze.
Podstawowa składnia poleceń skanowania
Każde polecenie skanowania ma podobną składnię
- kursor: Liczba całkowita reprezentująca pozycję, od której należy rozpocząć skanowanie. Aby rozpocząć nowe skanowanie, należy użyć 0.
- MATCH pattern: (opcjonalnie) Wzorzec do filtrowania zwracanych kluczy. Obsługuje wzorce globalne.
- COUNT count: (opcjonalnie) Wskazówka dla Redis dotycząca liczby elementów zwracanych w każdej iteracji.
Instalacja Redis w systemie Linux
Dla CentOS/RHEL, użyj
Po zainstalowaniu uruchom serwer Redis
Łączenie się z Redis
Otwórz terminal i połącz się z instancją Redis za pomocą Redis CLI
Możesz teraz wykonywać polecenia Redis w CLI
Korzystanie z polecenia SCAN
Przykład 1: Podstawowe SCAN
Aby pobrać wszystkie klucze w bazie danych Redis, można użyć
To polecenie zwróci kursor i listę kluczy
Przykład 2: Użycie MATCH do filtrowania kluczy
Jeśli chcesz znaleźć klucze pasujące do określonego wzorca, takie jak klucze zaczynające się od “user:”, możesz użyć
To polecenie zwraca tylko klucze zaczynające się od “user:”
Przykład 3: Określanie COUNT
Aby wskazać, ile kluczy Redis powinien zwrócić w każdej iteracji, można określić liczbę
Spowoduje to próbę zwrócenia około 10 kluczy. Należy pamiętać, że rzeczywista liczba zwróconych kluczy może być mniejsza
Przykład 4: Iterowanie po wszystkich kluczach
Aby iterować przez wszystkie klucze w wielu iteracjach, należy śledzić zwracany kursor. Oto prosty przykład skryptu powłoki: ###ATP_PRO_NOTR_9_CODE_TAG_NOTR_ATP_PRO#
Używanie polecenia SSCAN
Polecenie SSCAN służy do iteracji po elementach w zbiorze. Jego składnia jest podobna do polecenia SCAN
Przykład polecenia SSCAN
Krok 1: Utwórz zestaw i dodaj elementy
Utwórzmy zestaw o nazwie myset i dodajmy do niego kilka elementów