由网络副手--寻路人于2016.03.20 08:10:00发布在NoSql技术 MongDB基本介绍 阅读3101 评论0 喜欢0 什么是MongoDB ? 面向文档的数据库 一 . 优点 1. 使用 (文档取代行,一条记录表达复杂层级关系;去K-V化,字段的添加删除更加方便) 2. 扩展 (易于拓展,自动处理跨集群数据和负载,集群加入硬盘,横向拓展自动数据传输) 内置分片对范围自动分片机制: 一个collection可按照记录的范围,分成若干个段,切分到不同的Shard上。 Shards可以和复制结合,配合Replica sets能够实现Sharding+fail-over,不同的Shard之间可以负载均衡 查询是对 客户端是透明的。客户端执行查询,统计,MapReduce等操作,这些会被MongoDB自动路由到后端的数据节点。这让我们关注于自己的业务,适当的 时候可以无痛的升级。MongoDB的Sharding设计能力最大可支持约20 petabytes,足以支撑一般应用。 这可以保证MongoDB运行在便宜的PC服务器集群上。PC集群扩充起来非常方便并且成本很低,避免了“sharding”操作的复杂性和成本 ![jiagou.png][1] 3. 功能模块丰富 3.1 索引 二级索引,多种快速查询 唯一索引 / 复合索引 / 地理空间索引 / 全文索引 3.2 聚合 支持聚合管道,自动优化。(过滤,重新组合输出,指定字段分组,排序(操作符表达代替MapReduce)) ![2288F93F-E85E-4089-A4C1-328FA6D0698F.png][2] 每个文档通过一个由多个节点组成的管道,每个节点有自己特殊的功能(分组、过滤等),文档经过管道处理后,最后输出相应的结果 3.3 特殊的集合类型 例如(场景1 :定时过期会话; 场景2: 固定大小集合日志) 3.4 文件存储 4. 性能好 4.1 BJSON 二进制存储,存入性能快。内存用作缓存,为查询分配索引 4.2 内置GridFS(布式文件系统),支持大容量的存储,能够满足对大数据集的快速范围查询 4.3 对于非索引字段查询在千万级别会非常快 二. 缺点 1. 不支持事务,join,空间占用大 申请机制(64,128,256 逐次递增,直到单个2G) 2. 删除记录不释放空间,只标志删除 [1]: http://blogimg.bravedu.com/2016/03/1915588035.png [2]: http://blogimg.bravedu.com/2016/03/676107297.png 赞 0 分享 赏 您可以选择一种方式赞助本站 支付宝扫码赞助 BraveDu 署名: 网络副手~寻路人