Предпочитаемый дизайн схемы MongoDb - PullRequest
1 голос
/ 14 мая 2019

Я работаю над приложением MongoDb, чья текущая схема похожа на приведенную ниже:

{
"_id" : ObjectId("5cc69f8c5344dfe60cb30645"),
"Content":""
"Location":""
"topic1_device" : "device1,device2",
"topic1_category" : "category1,category2",
"topic1_mentions" : "",
"topic1_phrase" : "",
"topic1_sentence" : "",
"topic2_mentions" : "",
"topic2_category" : "",
"topic2_device" : "",
"topic2_mentions" : "",
"topic2_phrase" : "",
"topic2_regex" : "",
....
10 similar topics

Как вы можете видеть, topic_device может иметь несколько устройств, и у меня есть соответствующие категории в topic1_category.Большинство моих запросов - агрегация и получение запросов.Как получение количества пар всех устройств и категорий из темы 1.

В настоящее время моя схема плоская, и я хочу изменить ее на одну из следующих схем:

{
"_id" : ObjectId("5cc69f8c5344dfe60cb30645"),
"Content":""
"Location":""
"topic1":{

"category" : {"device1":"category1",{   device2:"category2"}
"mentions" : "",
"phrase" : "",
"sentence" : "",
"mentions" : "",
"category" : "",

или

"topic": [
{
  "device": "device1",
  "mention": "correct",
  "phrase": "",
  "sentence": "",
},
{
  "device": "device2",
  "mention": "wrong",
  "fhe_category": "catgeory2",
  "phrase": "",
  "sentence": "

]

...