Các đề xuất bán buôn về thiết kế lược đồ của bạn có thể là một chủ đề thảo luận ở đây hơi rộng. Tuy nhiên, tôi có thể khuyên bạn nên cân nhắc việc đưa các phần tử bạn đang hiển thị vào một Mảng tài liệu con thay vì tài liệu con số ít với các trường cho mỗi mục.
{
sku: "1011",
name: [{ "en": "cheese" }, {"de": "Käse"}, {"es": "queso"}, etc... ],
price: [{ "usd": 30.95 }, { "eur": 20 }, { "aud": 40 }, etc... ]
}
Lý do chính cho điều này là xem xét đường dẫn truy cập cho các phần tử của bạn, điều này sẽ giúp mọi thứ dễ truy vấn hơn. Điều này tôi đã xem qua một số chi tiết tại đây có thể đáng để bạn đọc.
Nó cũng có thể là một khả năng để mở rộng điều này cho một cái gì đó như trường tên của bạn:
name: [
{ "lang": "en", "value": "cheese" },
{ "lang": "de", "value: "Käse" },
{ "lang": "es", "value": "queso" },
etc...
]
Tất cả sẽ phụ thuộc vào yêu cầu lập chỉ mục và truy cập của bạn. Tất cả thực sự phụ thuộc vào chính xác những gì ứng dụng của bạn cần và cái hay của MongoDB là nó cho phép bạn cấu trúc tài liệu theo nhu cầu của mình.
P.S Đối với bất kỳ thứ gì bạn đang cất giữ Tiền giá trị, tôi khuyên bạn nên đọc một số và có thể bắt đầu với bài đăng này tại đây:
MongoDB - Còn loại thập phân của giá trị?