MongoDB中的复杂和多个连接的数据库关系

时间:2019-02-20 16:19:38

标签: mongodb database-design entity-relationship aggregation table-relationships

我目前正在尝试建立一个MongoDB数据库结构的模型,其中实体之间的关系非常复杂。

在我当前的收藏集中,很难或不可能将MongoDB查询放入单个聚合中。顺便说一句,我不是数据库专家,并且仅与MongoDB一起工作了半年。

要使其尽可能简单但必要,这是我的挑战:

我有报纸文章,其中包含简单关键字作品(作品,书籍,电影),人物链接作品和人物的组合。另外,同一个人在不同文章中以不同的名字出现。

稍后,在个人视图上,我想显示以下内容:

  • 具有姓名和职务的人的链接以及相应的文章
  • 该人没有作品出现的文章(按名称)
  • 文章中仍然存在的其他关键字

在我的结构中,我想避免像人这样的实体多次出现。这些是我当前的收藏:


Article
id
title
keywordRelations


KeywordRelation
id
type (single or combination)
simpleKeywordId (optional)
personNameConnectionIds (optional)
workIds (optional)


SimpleKeyword
id
value


PersonNameConnection
id
personId
nameInArticleId


Person
id
firstname
lastname


NameInArticle
id
name
type (e.g. abbreviation, synonyme)


Work
id
title

为了满足要求,我总是必须创建3到4个表的查询。 MongoDB是否可行并且有用?

还是有一种更简单的方法和结构来实现这一目标?

0 个答案:

没有答案