Thông tin cơ bản
Tôi đang tạo mẫu chuyển đổi từ cơ sở dữ liệu RDBMS sang MongoDB. Trong khi không chuẩn hóa, có vẻ như tôi có hai lựa chọn, một dẫn đến nhiều (hàng triệu) tài liệu nhỏ hơn hoặc một dẫn đến ít (hàng trăm nghìn) tài liệu lớn hơn.
Nếu tôi có thể chuyển nó thành một dạng tương tự đơn giản, thì đó sẽ là sự khác biệt giữa một bộ sưu tập có ít tài liệu Khách hàng hơn như thế này (bằng Java):
khách hàng hạng { tên chuỗi riêng; địa chỉ Địa chỉ riêng; // mỗi thẻ CreditCard có hàng trăm trường hợp Thanh toán private Set <CreditCard> thẻ tín dụng; }
hoặc một bộ sưu tập với rất nhiều Chứng từ thanh toán như thế này:
thanh toán lớp học { khách hàng khách hàng tư nhân; thẻ tín dụng CreditCard tư nhân; riêng Ngày payDate; private float payAmount; }
Câu hỏi
MongoDB được thiết kế để thích nhiều, nhiều tài liệu nhỏ hay ít tài liệu lớn hơn? Câu trả lời có chủ yếu phụ thuộc vào những truy vấn tôi định chạy không? (tức là Khách hàng X có bao nhiêu thẻ tín dụng? so với số tiền trung bình mà tất cả khách hàng đã trả vào tháng trước là bao nhiêu?)
Tôi đã xem xét xung quanh rất nhiều nhưng tôi không vấp phải bất kỳ phương pháp hay nhất nào về lược đồ MongoDB sẽ giúp tôi trả lời câu hỏi của mình.