一分钟了解 mongodb - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
CapitolHillCat
V2EX    MongoDB

一分钟了解 mongodb

  •  
  •   CapitolHillCat 2015-04-30 17:16:46 +08:00 4358 次点击
    这是一个创建于 3846 天前的主题,其中的信息可能已经有所发展或是发生改变。
    mongo的由来
    截取自英文俚语humongous,意为”巨大的”,是否表明mongodb在设计之初就是为大数据量处理而生呢?

    mongodb是个啥
    mongodb是个可扩展、高性能、开源、面向文档(document-oriented)的数据库,由c++实现。
    http://www.mongodb.org/ 官网首页最显著的位置用了”agile”和”scalable”这两个词来形容它:
    (1)agile:轻快的,敏捷的;
    (2)scalable:可扩展;

    mongodb的特点
    (1)面向文档的存储:类JSON文档作为存储,不固定表模式(schema-free);
    (2)全文索引支持(full index support);
    (3)多副本与高可用性(replication & availability);
    (4)自动分片(auto-sharding);
    (5)支持多种类型的查询;
    (6)快速原地更新(fast in-place updates):大部分更新操作无需申请新的空间;
    (7)map/reduce支持;
    (8)gridfs:各种size大小的集群文件支持;

    wikipedia对mongodb的特性描述
    (1)面向文档,以一种类JSON的格式管理记录,且能支持丰富的查询,支持索引;
    (2)跨平台,支持windows,linux,solaris,OS X等;
    (3)查询结果支持游标操作;
    (4)点对点查询(Ad hoc queries):
    任何字段(field)都能被查询到,支持范围查询(range queries),正则表达式查询(regular expression),
    用户自定义js函数查询,内嵌字段查询(nestad field);
    (5)索引支持:
    支持单key索引,复合索引,唯一索引,内嵌字段索引;
    查询执行时,mongodb的查询优化器会尝试多种查询计划,并挑选最优的计划执行;
    (6)集函数支持(aggregation function):即使在map/reduce上,也有类似SQL的group by支持;
    (7)文件存储支持,实现了一套GridFS的协议,用来存储和检索文件;
    (8)主从、副本的支持:
    mongodb支持主从结构,主db能执行读操作与写操作,从db从主db拷贝数据,从db只能执行读操作;
    (9)sharding:
    mongodb用sharding技术来支持水平扩展,它与Google的BigTable扩展方式十分类似;

    一些与mysql的相似点与不同
    (1)一个服务可以支持多个数据库;
    (2)一个数据库可以支持多个表,在mongodb中,以集合(collection)代替了表(table)的概念;
    (3)mysql是关系型的数据库,即RDBMS,而mongodb是schema-free的,它更像一个键值存储系统(kv),但与kv不同的是,它又能像mysql的模式一样,能修改文档内的数据,并对内部数据进行索引;
    mongodb文档以BSON格式存储,即Binary JSON,BSON是一种二进制交换格式,类似Google Protocol Buffer;
    目前尚无回复
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5895 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 36ms UTC 02:05 PVG 10:05 LAX 18:05 JFK 21:05
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86