24.32K 浏览2015/05/28驱动程序 0 qwzren@163.com0 2015/05/29 0条评论 我每一秒要存入300条数据,每条数据都是浮点数(8字节),类似于{Timestamp:1432627199000, arg1:0.0, arg2:0.0, arg3:0.0, arg4:0.0, … … arg300:0.0 },总共理论上2400字节,即2.3KB。像这种情况,301个列(300个Key-Value),太多,有必要分成多个Collection吗? 注,数据插入后永远不会对其修改,但会查询分析。 1 答案 活跃已投票最新最老的 0 TJ130 发布 2015/05/29 1 条评论 不要分表 – mongo不支持多表查询。300个字段不算特别多 – 可以考虑把300个分组,如: { ts: ‘14326xxxx’, group0: { arg1:xx, arg2:xx,arg3:xx… arg10:xx }, group1: { arg11:xx,arg12,….arg20 } … group30: { arg291:xx, …arg300:xx } } 这样可以防止mongo遍历太多字段如果只需要查询返回某个字段如arg290。 zhangyaoxing 已评论 2015/06/01 补充一下,也许应该考虑使用Capped Collection。300个字段也作为数组存起来。使用怎样的数据结构要看这些数据的逻辑关系,以及楼主打算怎么使用它们。 注册 或 登录
补充一下,也许应该考虑使用Capped Collection。300个字段也作为数组存起来。使用怎样的数据结构要看这些数据的逻辑关系,以及楼主打算怎么使用它们。