Redis
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> Redis

Cách xuất Khóa Redis dưới dạng CSV bằng CLI

Thông thường, bạn muốn xuất dữ liệu từ redis dưới dạng csv. Redis-cli có --csv nhưng nó chỉ hoạt động nếu bạn muốn xuất một khóa duy nhất. Nhưng với một chút phép thuật dòng lệnh, bạn có thể xuất bất kỳ số lượng khóa nào dưới dạng định dạng CSV.

Tập lệnh này sẽ xuất các trường id, tên hiển thị, danh tiếng và vị trí cho tất cả các hàm băm bắt đầu bằng users:*

Sử dụng Quét để Chọn Phím

Bước đầu tiên là sử dụng redis-cli với --scan--pattern cờ để chọn các khóa quan tâm. Vì vậy, để chọn các khóa phù hợp với người dùng:*, bạn sẽ chạy lệnh redis-cli --scan --pattern users:* .

Lưu ý rằng redis chỉ cho phép các mẫu kiểu hình cầu. Vì vậy, người dùng users:* sẽ khớp với users:1234 và cũng khớp với users:1234:favourites . Nếu bạn muốn kiểm soát nhiều hơn, bạn có thể theo dõi nó bằng grep và regex.

Người dùng redis-cli --scan --pattern users:* | grep -e '^users:[^:]*$'

Sử dụng AWK để chạy lệnh Redis

Đối với mỗi khóa chúng tôi đã chọn, chúng tôi cần chạy lệnh redis để tìm nạp dữ liệu cho khóa đó. Trong trường hợp của chúng tôi, chúng tôi muốn tìm nạp các trường từ một hàm băm, vì vậy chúng tôi sử dụng hmget yêu cầu. $0 trong tập lệnh awk đề cập đến khóa chúng tôi đã chọn trước đó bằng cách sử dụng quét.

Đầu ra của tập lệnh awk được chuyển đến redis-cli. Mỗi lệnh được thực thi và đầu ra được trả về dưới dạng CSV vì --csv cờ.

Tùy chỉnh tập lệnh này

  1. Nếu máy chủ redis của bạn không có trên máy chủ cục bộ, bạn sẽ phải cung cấp máy chủ, cổng và mật khẩu hai lần trong lệnh, về cơ bản bất cứ khi nào bạn gọi redis-cli.
  2. Bạn có thể chạy bất kỳ lệnh nào thay vì hmget

Xem thêm

  • Đổi tên các trường trong một băm
  • Đổi tên nhiều phím bằng tính năng quét
  • Đặt Ngày hết hạn thành nhiều khóa
  • Xóa các phím phù hợp với một mẫu
  • RDBTools GUI cho Redis cho phép bạn xem trước các hành động hàng loạt của mình và cung cấp GUI mạnh mẽ để quản lý dữ liệu trong Redis. Đây là bản tải xuống miễn phí!

  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Redis có thể thay thế hoàn toàn mysql không?

  2. Bình theo Ví dụ - Triển khai Hàng đợi Tác vụ Redis

  3. Thử lại kết nối máy khách Node JS Redis

  4. Node redis nhà xuất bản chiếm quá nhiều bộ nhớ

  5. docker -omp:kết nối redis bị từ chối giữa các vùng chứa