当前位置:首页 > 开发 > 开源软件 > 正文

Mongodb FAQ 开发者篇

发表于: 2013-07-06   作者:donlianli   来源:转载   浏览次数:
摘要: Mongodb FAQ(开发者篇),是官方文档的翻译。如有翻译不到之处,还请谅解。   1、Mongodb中的命名空间是什么东西? 命名空间是连接数据名称和collection名称的重要桥梁,数据库与collection使用.号分隔。Collection是document的容器,在这个容器中,所有的documents共享一个或多个索引。数据库是一组存储在硬盘上的数据文件的colle

Mongodb FAQ(开发者篇),是官方文档的翻译。如有翻译不到之处,还请谅解。

 

1、Mongodb中的命名空间是什么东西?

命名空间是连接数据名称和collection名称的重要桥梁,数据库与collection使用.号分隔。Collection是document的容器,在这个容器中,所有的documents共享一个或多个索引。数据库是一组存储在硬盘上的数据文件的collection的集合(一个数据库对应一个数据文件和命名空间文件)。举例: 名字为acme.users的document, acme是数据库的名称, users 是collection的名称. Collection的名称中可以存在点号,所以acme.user.history是一个合法的名称,(acme是数据库名称 user.history是 collection name)。

 

2、怎么将一个collection的所有数据复制到另一个collection?

如果是在mongo的shell中,可以使用如下命令。

db.people.find().forEach( function(x){db.user.insert(x)} );

如果是操作系统,也可以考虑使用mongodump和mongorestore命令。

 

3、如果我将一个document删除掉了,mongodb是否从硬盘上进行了删除?

是的,如果你使用db.collection.remove()删除了一个对象,那么这个对象就从mongodb的磁盘文件中进行了删除。

 

4、Mongodb什么时候将对一个对象的修改真正写入到磁盘文件?

mongodb定时将更新写入到磁盘文件。默认情况下,mongodb每60秒将更新写入到磁盘,每0.1秒将操作日志记录到日志文件(journal)。这两个默认值是可以在配置文件中进行修改的。

 

5、怎样控制事务和锁定对象?

mongodb不支持像传统数据库那样的对象锁和可以回滚的事务控制。Mongodb的目标是提供轻量级,更快和可预见的高性能(predictable in its performance)服务,这和mysql的MyISAM自动提交引擎很相似。通过保持事务的尽量简单,mongodb的性能特别好,特别是当使用分区(partitioned)和复制(replicated)等特性的时候,性能将得到极大提高。

 

6、Mongodb的聚合功能是怎样的?

在mongodb2.1以后,mongodb提供了专门的聚合框架提供对数据的常规聚合统计。Mongodb同时也支持map-reduce方式的计算。

 

7、为什么Mongodb打印那么的“connection accepted”事件的日志?

如果你看到大量建立连接或者重新连接的日志。这通常是因为客户端没有使用连接池技术引起的,比如客户端使用的是CGI。如果这样连接数据不影响你Mongodb的性能,你可以使用quiet参数把这些日志信息禁用掉。

 

8、为什么mongodb的数据文件这么大?

mongodb使用预分配空间的方式管理数据文件,这样可以避免系统碎片。你可以使用smallfiles参数,减少预分配的空间大小。

 

 

 

对这类话题感兴趣?欢迎发送邮件至 donlianli@126.com
关于我:邯郸人,擅长Java,Javascript,Extjs,oracle sql。
更多我之前的文章,可以访问  我的空间

Mongodb FAQ 开发者篇

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
亦可参见: http://gnucto.blog.51cto.com/3391516/833532 1、下载MongoDB数据库http://fastdl.mongo
亦可参见: http://gnucto.blog.51cto.com/3391516/833532 1、下载MongoDB数据库http://fastdl.mongo
《MongoDB实战(MongoDB开发者现身说法)》 基本信息 原书名:MongoDB in Action 作者: (美)班克 (Ba
4 FAQ
1. try just "make clobber". In linux, the "Waiting for unfinished jobs" error usually happens
对于MongoDB,面临的最大问题就是如何为应用程序设计出良好的数据模型,大家都是摸着石头过河,意见
1.MongoDB 特点 面向集合存储,存储对象类型的数据方便 模式自由,不需要定义任何模式(schma) 动
作为系列的最后一篇,得要说说C#驱动对mongodb的操作,目前驱动有两种:官方驱动和samus驱动,不过
一、MongoDB简介 MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门
1.概述   最近有同学和网友私信我,问我MongoDB方面的问题;这里我整理一篇博客来赘述下MongoDB供
--http://www.cocoachina.com/programmer/20150304/11205.html 2014年12月,CocoaChina以网上调查问
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号