huixsx
V2EX  ›  Node.js

求教: mongodb 数据设计是否必要每个实体单独对应一个 collection?

  •  
  •   huixsx · Jan 11, 2015 · 4870 views
    This topic created in 4186 days ago, the information mentioned may be changed or developed.

    看到一个bbs系统nodebb,看了mongodb的collection结构,着实吃惊,在此求教高人,是鄙人少见多怪,还是nodebb设计的比较不合常理。

    7 replies    2015-01-12 12:13:10 +08:00
    9hills
        1
    9hills  
       Jan 11, 2015
    原理上因为是document database ,所以把不同schema的记录放到一起也没什么,就是性能差一些。。

    但是标准用法是同一个collection放同类型实体,schema要基本一致
    cevincheung
        2
    cevincheung  
       Jan 11, 2015
    实体是啥意思……
    jybox
        3
    jybox  
       Jan 11, 2015
    以查询为出发点,如果你发现你的很多查询都带了一个参数用来区分不同类型的文档,那么这两类文档就应该放到不同的集合。
    felixzhu
        4
    felixzhu  
       Jan 12, 2015
    完全看你的业务需求和查询语句,如果不需要检索而且就是一个子文档,那么直接放在父文档中肯定也是可以的
    oott123
        5
    oott123  
       Jan 12, 2015 via Android   ❤️ 1
    nodeBB 的结构看上去很特别…
    它主要是要同时兼容 redis 和 MongoDB ,而且官方似乎是优先考虑 redis 的,所以会把 MongoDB 弄成了那种样子,事实上是完全把 MongoDB 当一个 k-v 数据库来用的…
    huixsx
        6
    huixsx  
    OP
       Jan 12, 2015
    @oott123 是呀,看到mongo结构,就发现这玩意就是个字典
    huixsx
        7
    huixsx  
    OP
       Jan 12, 2015
    @felixzhu 放在一个结构中就是看起来非常不爽,mysql看习惯。。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   818 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 45ms · UTC 21:54 · PVG 05:54 · LAX 14:54 · JFK 17:54
    ♥ Do have faith in what you're doing.