Redis
 sql >> Baza danych >  >> NoSQL >> Redis

Jak wyeksportować klucze Redis jako CSV za pomocą CLI

Często chcesz wyeksportować dane z redis jako csv. Redis-cli ma --csv flaga, ale działa tylko wtedy, gdy chcesz wyeksportować pojedynczy klucz. Ale przy odrobinie magii wiersza poleceń możesz wyeksportować dowolną liczbę kluczy w formacie CSV.

Ten skrypt wyeksportuje identyfikator pól, nazwę wyświetlaną, reputację i lokalizację dla wszystkich skrótów zaczynających się od users:*

Korzystanie z funkcji Skanuj, aby wybrać klawisze

Pierwszym krokiem jest użycie redis-cli z --scan i --pattern flagi, aby wybrać interesujące Cię klucze. Tak więc, aby wybrać klucze pasujące do użytkowników:*, uruchomisz polecenie redis-cli --scan --pattern users:* .

Zauważ, że redis zezwala tylko na wzory w stylu glob. Więc users:* dopasuje users:1234 a także dopasuj users:1234:favourites . Jeśli chcesz mieć większą kontrolę, możesz to sprawdzić za pomocą grep i regex.

redis-cli --scan --pattern users:* | grep -e '^users:[^:]*$'

Korzystanie z AWK do uruchamiania poleceń Redis

Dla każdego wybranego klucza musimy uruchomić polecenie redis, aby pobrać dane dla tego klucza. W naszym przypadku chcemy pobrać pola z hasha, więc używamy hmget Komenda. $0 w skrypcie awk odnosi się do klawisza, który wybraliśmy wcześniej za pomocą skanowania.

Wyjście skryptu awk jest przesyłane do redis-cli. Każde polecenie jest wykonywane, a wynik jest zwracany jako CSV z powodu --csv flaga.

Dostosowywanie tego skryptu

  1. Jeśli serwer redis nie znajduje się na hoście lokalnym, będziesz musiał podać hosta, port i hasło dwukrotnie w poleceniu, w zasadzie za każdym razem, gdy wywołasz redis-cli.
  2. Możesz uruchomić dowolne polecenie zamiast hmget

Zobacz też

  • Zmień nazwy pól w haszu
  • Zmień nazwy wielu kluczy za pomocą skanowania
  • Ustaw wygaśnięcie na wiele kluczy
  • Usuń klucze pasujące do wzorca
  • GUI RDBTools dla Redis umożliwia podgląd działań zbiorczych i zapewnia potężny graficzny interfejs użytkownika do zarządzania danymi w Redis. To bezpłatne pobieranie!

  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. użyj node-redis z węzłem 8 util.promisify

  2. Jak uruchomić Redis w systemie Windows?

  3. obsługa sytuacji redis maxmemory z railsami podczas korzystania z pamięci podręcznej rails

  4. SQL vs NoSQL dla systemu zarządzania zapasami

  5. Używanie puli wieloprocesowej z zadania seler powoduje wyjątek