Baza danych Redis może z czasem znacznie się rozrosnąć. Czasami możesz potrzebować znać wszystkie rekordy bazy danych, aby przypomnieć sobie niektóre elementy lub zrozumieć logikę. Nie stanowi to problemu w Redisie. Jednak zanim podam Ci gotowe polecenie na to jak znaleźć wszystkie klucze w Redis, przedstawię podstawy Redis i polecenia.
Co to jest Redis?
Bazy danych NoSQL istnieją od dawna w świecie IT. Początkowo traktowano je jako ciekawostkę, potem zachwyciły użytkowników swoją wydajnością w małych projektach. Teraz są to dojrzałe rozwiązania, które widzisz codziennie w dużych projektach, gdzie na pierwszym miejscu stawia się wydajność.
Redis jest bazą danych klucz-wartość, która przechowuje dane w pamięci RAM, co czyni ją niezwykle wydajną. Jednak za wydajnością stoi ulotność danych, co w niektórych przypadkach jest nie do przyjęcia. Redis pozwala skonfigurować bazę danych i okresowo zrzucać dane do pliku na dysku. Ma to pewne konsekwencje, a w tym przypadku będzie to spadek wydajności.
Jeśli chcesz dowiedzieć się więcej o podstawach i o tym jak działają klucze w Redis, przeczytaj nasz artykuł o tym, czym jest Redis.
Zastosowanie Redis
Redis ma wiele zastosowań, na przykład:
- Cache: najczęstsze zastosowanie ze względu na bardzo wysoką wydajność.
- Wsparcie dla zapytań: to nieco mniej powszechne rozwiązanie, ale doskonałe dla nieskomplikowanego systemu kolejkowego.
- Przechowywanie sesji użytkowników: alternatywne rozwiązanie do plików lub bazy danych.
Aby eksplorować REDIS, potrzebujesz środowiska. Sugeruję użycie Dockera lub Linuxa. Jeśli chcesz to zrobić w systemie Windows, możesz zainstalować Dockera lub Linuxa na maszynie wirtualnej. Istnieje wiele dystrybucji Linuxa i nie chcę skupiać się tutaj na różnicach w instalacji i wersjach REDIS.
Instalacja jest prosta i sprowadza się do następującego polecenia:
sudo apt-get install redis-server
Po zakończeniu instalacji, jeśli nie pojawi się żaden komunikat o błędzie, REDIS powinien być zainstalowany i uruchomiony.
Możemy połączyć się z REDIS na standardowym porcie 6379. W zależności od języka programowania mamy do dyspozycji wiele bibliotek. Serwer REDIS jest dostarczany z aplikacją kliencką, którą możemy używać do testów. W zależności od wybranej metody instalacji serwera, klienta uruchomimy nieco inaczej.
Wybierając swój szybki serwer VPS, musisz zainstalować system operacyjny. W większości przypadków będzie to Linux. Przeczytaj ten artykuł i odkryj najlepsze dystrybucje Linuxa do hostingu!
Ponieważ masz już serwer i aplikację, która pozwala Ci pracować z REDIS, czas nauczyć się podstawowych poleceń.
Podstawowe polecenia
SET key
Polecenie ustawia wartość dla określonego klucza. Na przykład, SET hosting "UltaHost"
tworzy klucz hosting z wartością „UltaHost”. Wykonanie polecenia skutkuje zwróceniem komunikatu o sukcesie zapisu danych w bazie.
GET key
Polecenie odczytuje wartość pod danym kluczem. Wykonanie polecenia zwróci wartość pod danym kluczem (np. „hosting”). Jeśli odwołasz się do nieistniejącego klucza, otrzymasz błąd (nil).
DEL key
Polecenie usuwa klucz. Po usunięciu otrzymasz komunikat „(integer) 1”. Otrzymasz komunikat „(integer) 0”, jeśli coś nie zadziała.
EXIST key
Sprawdza, czy określony klucz lub cała lista kluczy istnieje. Otrzymasz wartość (integer) 1, gdy klucz istnieje, oraz (integer) 0, jeśli nie. Oprócz sprawdzania istnienia pojedynczego klucza, możesz przekazać całą listę kluczy.
EXPIRE key seconds
Ustawia czas po którym klucz i wartość zostaną usunięte z bazy danych. Na przykład, EXPIRE user_1234 60
ustawi czas na 60 sekund dla user_1234.
KEYS pattern
Wyszukuje wszystkie klucze pasujące do danego wzorca. Na przykład, KEYS user_*
zwróci listę kluczy pasujących do zdefiniowanego wzorca. Jeśli nie ma pasującego klucza, otrzymasz komunikat (pusta lista lub zestaw).
PERSIST key
Wyłącza wygaśnięcie klucza lub usuwa czas wygaśnięcia dla klucza.
RENAME key new-key
Polecenie zmienia nazwę klucza na nowy klucz.
TYPE key
Zwraca typ wartości przechowywanej pod określonym kluczem. Dotychczas operowałeś tylko na stringach, ale to nie jest jedyny typ, który REDIS może przechowywać. Możesz użyć określonych poleceń dla danego typu danych.
Typy danych
Zaawansowane wsparcie dla typów danych w REDIS zwiększa możliwości tej bazy danych.
Strings
Łańcuchy znaków są prawdopodobnie najczęściej używanym typem danych. Popularność wynika z faktu, że możesz tam umieścić JSON, XML i każdy inny tekst, co oznacza, że nie masz prawie żadnych ograniczeń. Ponadto, REDIS nie analizuje w żaden sposób zawartości przekazywanych danych, co gwarantuje ich niezmienność.
Dla każdego typu danych znajdziesz polecenia, które są przeznaczone dla tego typu.
Lists
Jest to typ, który możesz porównać do tablicy stringów. Dostęp do danych na liście odbywa się w kolejności dodawania lub na podstawie numeru indeksu. Same listy mogą być gigantycznymi zbiorami, ponieważ mogą zawierać ponad 4 miliardy elementów.
Aby utworzyć listę, dodaj do niej pierwszy element. Możesz to zrobić za pomocą polecenia LPUSH lub RPUSH. Oba te polecenia są odpowiedzialne za dodawanie jednego lub więcej elementów do listy. Różnica polega na tym, że LPUSH dodaje elementy na górę listy, a RPUSH na koniec listy.
Hashes
Są to tablice asocjacyjne. Do tej pory dodane elementy miały tylko klucz i wartość. Tablice asocjacyjne rozszerzają możliwości, definiując atrybuty dla danego klucza. Ta struktura daje wrażenie pracy z rekordami w bazie danych.
Możesz zdefiniować nowy element, który będzie prostym mapowaniem użytkownika z bazy danych. Będzie miał atrybut name i email, a kluczem będzie identyfikator poprzedzony prefiksem user_.
hmset user_1 name “Jon Snow” email [email protected]
Mając użytkownika dodanego w ten sposób, możesz wyświetlić wszystkie informacje za pomocą polecenia HGETALL. W rezultacie otrzymasz listę, gdzie pole jest wyświetlane kolejno, a następnie wartość.
Sets
Zbiory są bardzo podobne do list, z tym że zawierają unikalne i nieuporządkowane wartości. Czyni to je znacznie bardziej wydajnym typem niż listy, a jeśli planujesz mieć wiele elementów, które będziesz często modyfikować lub wyszukiwać, powinieneś użyć zbiorów.
Wyciągnij pełnię możliwości z Redisa!
Aby Redis działał skutecznie, potrzebujesz dobrze zoptymalizowanego i szybkiego serwera. Wybierz hosting od UltaHost i ciesz się wydajnością Redis!
Jak sprawdzić wszystkie klucze w Redis?
Teraz, gdy znasz podstawowe pojęcia Redis, mogę przejść do sedna. Jak już wiesz, aby uzyskać konkretny cel, użyjesz polecenia GET. Jednak aby wyświetlić wszystkie klucze w bazie danych Redis, musisz użyć innego polecenia: KEYS. Wystarczy wpisać KEYS, a następnie określony wzorzec, a Redis przeszuka bazę danych w poszukiwaniu wszystkich kluczy pasujących do tego wzorca.
Jeśli chcesz uzyskać listę wszystkich kluczy, użyj gwiazdki (*). Tak więc polecenie:
KEYS *
powinno zwrócić wszystkie klucze w bazie danych.
Możesz także użyć redis-cli, aby uzyskać listę wszystkich kluczy, używając następującej składni:
$ redis-cli KEYS \*
Lub możesz ograniczyć zwrócone klucze za pomocą wzorca. Na przykład
$ redis-cli KEYS V*
zwróci wszystkie rekordy zaczynające się na literę V
Podsumowanie
REDIS ma ogromny potencjał jako baza danych klucz-wartość, a przedstawione tutaj elementy są tylko wprowadzeniem do podstaw. Wszystko to musi stać się dla Ciebie całkowicie oczywiste, zanim przejdziesz do bardziej zaawansowanych rzeczy, takich jak implementacja cache dla swojej aplikacji lub tworzenie prostego systemu kolejkowego.
Czy chcesz znaleźć platformę hostingową z Redis? Wybierz UltaHost! Wbudowany mechanizm cache we wszystkich planach hostingowych i serwerach z dyskami SSD NVMe zwiększa prędkość Twoich stron i aplikacji. Skorzystaj z całodobowego wsparcia naszego zespołu. Nasza infrastruktura skupia się na automatycznym skalowaniu, wydajności i bezpieczeństwie. Pozwól nam pokazać różnicę! Sprawdź nasze plany!