Velkoobchodní doporučení týkající se vašeho návrhu schématu mohou být trochu širokým tématem k diskusi zde. Mohu vám však navrhnout, abyste zvážili umístění prvků, které zobrazujete, do Pole dílčích dokumentů, spíše než jednotlivých dílčích dokumentů s poli pro každou položku.
{
sku: "1011",
name: [{ "en": "cheese" }, {"de": "Käse"}, {"es": "queso"}, etc... ],
price: [{ "usd": 30.95 }, { "eur": 20 }, { "aud": 40 }, etc... ]
}
Hlavním důvodem je zohlednění přístupových cest k vašim prvkům, což by mělo usnadnit dotazování. Toto jsem si podrobně prošel zde který může stát za přečtení.
Mohla by to být také možnost rozšířit to o něco jako pole vašeho jména:
name: [
{ "lang": "en", "value": "cheese" },
{ "lang": "de", "value: "Käse" },
{ "lang": "es", "value": "queso" },
etc...
]
Vše bude záviset na vašich požadavcích na indexování a přístup. Vše opravdu závisí na tom, co přesně vaše aplikace potřebuje, a krása MongoDB je v tom, že vám umožňuje strukturovat dokumenty podle vašich potřeb.
P.S. Co se týče čehokoli, kde ukládáte Peníze hodnoty, doporučuji vám něco přečíst a začít možná tímto příspěvkem zde:
MongoDB – A co desetinný typ hodnotu?