Giảm dung lượng file *.aof để sao lưu cơ sở dữ liệu redis

  • 0

  • 0

  • 0

Giảm dung lượng file *.aof để sao lưu cơ sở dữ liệu redis

Tôi đã có một bài viết nói về cách sao lưu cơ sở dữ liệu Redis tự động lên Telegram cũng như có nhắc đến hai phương pháp mà Redis cung cấp cho quá trình này.

Một trong những nhược điểm của AOF đó chính là dung lượng tệp backup có thể lớn hơn rất nhiều so với RDB, đó là bởi vì cơ chế của AOF sẽ chỉ ghi thêm những dòng lệnh thay đổi dữ liệu vào tệp. Do đó, nếu như nhiều thao tác cập nhật dữ liệu trên dùng một key thì AOF vẫn tiếp tục ghi lại qua nhiều dòng, trong khi đó thực tế chỉ cần dùng một lệnh duy nhất là chúng ta đã có thể khởi tạo được key.

Hiểu được vấn đề đó, Redis cung cấp cho chúng ta một cách để tổng hợp lại các câu lệnh như thế thành một lệnh duy nhất. Bạn có thể cấu hình Redis tự động "viết lại" tệp AOF trong cấu hình hoặc sử dụng lệnh BGREWRITEAOF bất kì lúc nào để tiến hành viết lại file.

$ redis-cli BGREWRITEAOF

Thực ra lúc này có một cơ chế phức tạp để Redis tạo lại tệp AOF, bạn đọc có thể tham khảo thêm tại Log rewriting.

Sau khi thực hiện, thử kiểm tra lại tệp AOF của bạn xem dung lượng có giảm đi đáng kể không nhé!

Bạn thấy bài viết này có ích?
  • Không

  • Bình thường

Bình luận
DMCA.com Protection Status