你好,我们目前正在建立一个小型公司管理和社交网站在node.js。首先,我想提到我是mongodb的新手,其次,我想简单地说明一些数据库体系结构实体,以便您可以为我提供建议,或者提出我应该在mongodb数据库上实现的正确的体系结构。
该网站的特点是:
这些是一些网站的特点。目前,我们使用mysql和orm2 (对象关系映射)实现了这一点,但是我们认为mongodb会更方便。而且,上面的大多数实体都合并在一个表中,这使我相信这是一种糟糕的做法。(想象一下,一个存储100++用户即时消息的表& posts & comments & events &tasks.)
目前,我正在考虑使用4-6集合的mongodb数据库,将核心实体保持分离,例如合并实体,例如在post集合中合并相应post中的注释。
问:将实体合并到一个表下是否是一种糟糕的做法(在MySQL数据库中是无害的),使其随着时间的推移而变得巨大,这是否也适用于mongodb,在多大程度上适用?我还读过文章,如果他们使用关系数据库用于用户、角色和组,以及使用nosql数据库存储大量数据。
PS:如果有任何db集合/架构建议,我将不胜感激。
发布于 2014-08-22 12:13:41
合并实体称为去正规化和has pros and cons。通常建议只对一个实际的性能问题进行去极化。
Use a relational database to store relational data。使用平面结构存储平面数据。句号。即使一辆卡车比一辆赛车有更多的马力,也不要用卡车进行比赛。
https://stackoverflow.com/questions/25445553
复制相似问题