MDA/MDD/TDD/DDD/DDDDDDD
posts - 536, comments - 111, trackbacks - 0, articles - 0
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

mongodb

Posted on 2011-03-02 04:27 leekiang 阅读(463) 评论(0)  编辑  收藏 所属分类: nosql
MongoDB是一个介于关系数据库和非关系数据库之间的产品,MongoDB的数据结构非常松散,他的数据格式类似json的bjson格式,因此可以存储比较复杂的数据类型。
主要功能是解决website的操作性数据存储,session对象的存储,数据缓存,高效率的实时计数(比如统计pv,uv)等

跟mysqld一样,一个mongod服务可以有建立多个数据库,每个数据库可以有多张表,这里的表名叫collection,每个collection 可以存放多个文档(document),每个文档都以BSON(binary json)的形式存放于硬盘中。跟关系型数据库不一样的地方是,它是的以单文档为单位存储的,你可以任意给一个或一批文档新增或删除字段,而不会对其它文 档造成影响,这就是所谓的schema-free,这也是文档型数据库最主要的优点。跟一般的key-value数据库不一样的是,它的value中存储 了结构信息,所以你又可以像关系型数据库那样对某些域进行读写、统计等操作。可以说是兼备了key-value数据库的方便高效与关系型数据库的强大功能。 出处


window下配置运行mongodb:
mongodb压缩包解压缩到目标目录,比如D:\mongodb,在d:\mongodb目录下创建db文件夹
打开cmd窗口,输入:
d:\mongodb\bin>mongod.exe –dbpath d:\mongodb\db
此时mongod进程运行起来,
再打开一个cmd窗口,输入:
d:\mongodb\bin\mongo.exe
进入mongodb命令模式

常用命令:
show dbs              查看有哪些数据库,默认会有admin,local两个数据库
db.serverStatus()     查询服务器状态
use testdb            打开数据库,没有的话立即建一个
db.testc.save({a:10}) 向 collection testc 中保存一条信息,没有collection的话立即建一个
db.testc.find()       检索所有记录
show collections      显示所有collection名字


Mongodb不支持内建的事务(没有内建事务不意味着完全不能有事务的功能),对于某些应用也就不适合,例如银行或会计系统。不过对于大部分的互联网应用来说并不存在这个问题。
适用场景见官方说明 http://www.mongodb.org/display/DOCS/Use+Cases

MongoDB support map/reduce operations

MongoDB中对象的最大尺寸被限制为4MB?

参考:
http://www.fushanlang.com/blog/install-windows-mongodb-302/
http://www.javaeye.com/topic/748322
http://www.jzxue.com/shujuku/shujukuzonghe/201005/19-3807.html
http://database.51cto.com/art/201005/198041.htm
mongodb小结 http://www.wentrue.net/blog/?p=772


只有注册用户登录后才能发表评论。


网站导航: