sinat_26123935 2015-02-26 15:42 采纳率: 0%
浏览 1972

Mongodb 的问题:谁能拿mysql说简单说一下Mongodb 数据结构是什么样子的

看过介绍只知道Mongodb 的数据是用json现在文件里的。
但是还是不懂,
谁能帮忙把关系型数据库分别在Mongodb对应的是什么大概类比一下就可以。
我知道不是一种东西,但是如果都是存放数据,可以说明下mysql是怎么存的,Mongodb是怎么做的。
谢谢。

  • 写回答

3条回答 默认 最新

  • danielinbiti 2015-02-26 16:36
    关注

    关系型数据库中的表都是存储一些格式化的数据结构,每个元组字段的组成都一样,即使不是每个元组都需要所有的字段,但数据库会为每个元组分配所有的字段,这样的结构可以便于表与表之间进行连接等操作,但从另一个角度来说它也是关系型数据库性能瓶颈的一个因素。而非关系型数据库以键值对存储,它的结构不固定,每一个元组可以有不一样的字段,每个元组可以根据需要增加一些自己的键值对,这样就不会局限于固定的结构,可以减少一些时间和空间的开销。
    比如 有条2条数据,都在一张表里
    数据1:
    物品名称:桌子

    材质:木头
    数据2:
    物品名称:苹果
    是否成熟:是
    如果是MySQL建表,那就是建3列(数据名称,材质,是否成熟),只是有些行中有些列没值或者没用。比如,苹果就不需要材质列。
    在Mongodb中,没有列的概念,只有存储的键值。也就是每行以key-value的方式存储,在等同的Mysql的表概念中。存储的行数据每行列都不一样。第一行没有是否存储的key,第二行没有材质的key

    评论

报告相同问题?

悬赏问题

  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler