首页 新闻 会员 周边

mongodb集合(表)设计的一些疑问

0
悬赏园豆:100 [待解决问题]

刚从mysql转入mongodb,有很多设计思想还停留在mysql上,想跟大神请教如下几个问题
1、在mysql的设计里,为了提高查询性能,一般会对大字段,进行分表设计
比如文章表会包含如下字段
id:文章id
title:文章标题
author:文章作者
content:文章内容,由于这个字段比较大,会影响批量查询效率,在mysql设计里,一般会单独建一个表来存储content字段,通过文章id来建立关联关系。在mongodb是否要遵循这个设计呢?
create_time:文章发布时间

2、字段比较多的表,比如user表,可能有将近上百个字段,在mysql里,也要对user进行拆分,将经常被查询的放一个表,不经常查询的放另外一个表,以提升查询性能。请问在mongodb里是否也要这样设计?

3、字段名是不是越短越好?还是长短跟性能、存储无关?

网红湾小程序的主页 网红湾小程序 | 初学一级 | 园豆:102
提问于:2020-12-02 11:13
< >
分享
所有回答(4)
0

可以这样设计。

通信的搞程序 | 园豆:1747 (小虾三级) | 2020-12-02 16:33
0

1.mongoDb本身就支持大对象的集合数据存储,数据量也不小,文章内容可以放在一张表里存储。
2.大几十甚至上百个字段,基于数据库设计规范都应该拆开多个表存储。
3.字段名长度无影响,至少不要过分的长,不然看起来也费劲。

KingMi | 园豆:1344 (小虾三级) | 2020-12-02 18:19
0

1&2、在mysql的设计里,为了提高查询性能,一般会对大字段,进行分表设计
只要不是多到离谱的情况, 可以不用拆, 查询的时候不要吧整个doc查出来就可以了. doc 限制16MB大小, 应该没有啥能超过他.

  1. 字段名是不是越短越好?还是长短跟性能、存储无关?
    正常能阅读即可,不用追求短, 字段名字长度是占用存储空间的.

具体的限制请查看文档: 单个doc限制大小, 字段长度, 嵌套深度等
https://docs.mongodb.com/manual/reference/limits/

czd890 | 园豆:14312 (专家六级) | 2020-12-02 19:16
0
ycyzharry | 园豆:25651 (高人七级) | 2020-12-03 00:33
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册