Tôi cần lưu trữ hàng trăm nghìn (ngay bây giờ, có thể có hàng triệu) tài liệu bắt đầu trống và được nối vào thường xuyên, nhưng không bao giờ được cập nhật theo cách khác hoặc bị xóa. Các tài liệu này không liên quan đến nhau theo bất kỳ cách nào và chỉ cần một số ID duy nhất truy cập.Lưu trữ quy mô lớn cho các tài liệu được thêm vào gia tăng?
Truy cập đọc là một số tập hợp con của tài liệu, hầu như luôn bắt đầu giữa chừng tại một số vị trí được lập chỉ mục (ví dụ: "tài liệu # 4324319, lưu # 53 đến cuối").
Những tài liệu này bắt đầu rất nhỏ, ở vài KB. Họ thường đạt kích thước cuối cùng khoảng 500KB, nhưng nhiều người đạt 10MB trở lên.
Tôi hiện đang sử dụng MySQL (InnoDB) để lưu trữ các tài liệu này. Mỗi tiết kiệm gia tăng chỉ được đổ vào một bảng lớn với ID tài liệu mà nó thuộc về, vì vậy đọc một phần của tài liệu trông giống như "select * from save where document_id = 14 and save_id> 53 order by save_id", sau đó ghép nối thủ công tất cả cùng nhau trong mã.
Lý tưởng nhất, tôi muốn các giải pháp lưu trữ được dễ dàng theo chiều ngang mở rộng, với sự dư thừa trên máy chủ (ví dụ mỗi tài liệu được lưu trữ trên ít nhất 3 nút) với phục hồi dễ dàng của máy chủ bị rơi.
Tôi đã xem xét CouchDB và MongoDB là có thể thay thế cho MySQL, nhưng tôi không chắc chắn rằng một trong hai cách này có ý nghĩa rất lớn cho ứng dụng cụ thể này, mặc dù tôi đang cởi mở để được thuyết phục.
Bất kỳ đầu vào nào trên một giải pháp lưu trữ tốt?
Bạn đã nhận được nhiều nhận xét. Nếu bạn thấy một trong số chúng có thể chấp nhận được, vui lòng đánh dấu nó là câu trả lời. –