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

Cách xóa các khóa khớp với một mẫu trong Redis Cluster

Các câu trả lời cho câu hỏi đó hãy thử xóa nhiều khóa trong một DEL . Tuy nhiên, các phím phù hợp với mẫu đã cho có thể KHÔNG nằm trong cùng một khe và Redis Cluster KHÔNG hỗ trợ lệnh nhiều phím nếu các phím này không thuộc cùng một khe. Đó là lý do tại sao bạn nhận được thông báo lỗi.

Để khắc phục sự cố này, bạn cần DEL các khóa này từng cái một:

redis-cli --scan --pattern "foo*" |xargs -L 1 redis-cli del

-L tùy chọn cho xargs lệnh chỉ định số lượng khóa để xóa. Bạn cần chỉ định tùy chọn này là 1 .

Để xóa tất cả các khóa khớp với mẫu, bạn cũng cần chạy lệnh trên cho mọi nút chính trong cụm của bạn.

LƯU Ý

  1. Với lệnh này, bạn phải xóa từng phím một và điều đó có thể rất chậm. Bạn cần xem xét thiết kế lại cơ sở dữ liệu của mình và sử dụng thẻ băm để làm cho các phím khớp với mẫu thuộc cùng một khe. Vì vậy, bạn có thể xóa các khóa này trong một DEL .

  2. SCAN hoặc KEYS lệnh không hiệu quả, đặc biệt, KEYS không được sử dụng trong sản xuất. Bạn cần xem xét việc xây dựng chỉ mục cho các khóa này.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Redis có thể chuyển nhiều lệnh phụ thuộc vào các lệnh trước không?

  2. Khi nào sử dụng Redis thay vì MySQL cho các ứng dụng PHP?

  3. delay_jobs vs resque vs beantalkd?

  4. Có phải lần nào master cũng được redis instance với mức độ ưu tiên nhỏ nhất không?

  5. Làm cách nào để đặt một cụm redis co giãn làm nô lệ?