Какой эффективный дизайн схемы MongoDB для многоязычного сайта электронной коммерции?

Я разрабатываю многоязычный сайт электронной коммерции. Продукты имеют различные свойства. Некоторые свойства различны для каждого языка (например, цвет), другие свойства одинаковы для всех языков (например, SKU). Свойства не предопределены, например, автомобили имеют другие свойства, чем машины для приготовления эспрессо.

Я хотел бы разработать схему базы данных так, чтобы:

  1. Поиск и представление всех товаров из категории x на языке y были быстрыми
  2. Количество дублирующихся данных было низким
  3. Я не хочу использовать файлы с переводами

Я думаю использовать схему вроде этой:

{
 _id: ObjectID("5dd87bd8d77d094c458d2a33"),

 multi-lingual-properties: ["name", "description"],

 name: { en: "Super fast car",
         nl: "Hele snelle auto"},

 description: { en: "Buy this car",
                nl: "Koop deze auto"},

 price: 20000,

 sku: "SFC106X",

 categories: [ObjectID("4bd87bd8277d094c458d2a43")]
}

Есть ли лучшая альтернатива этой схеме? С какими проблемами я столкнусь при использовании этой схемы?

9
задан Mukesh Soni 11 January 2016 в 03:46
поделиться