nosql
文章平均质量分 59
navygong
这个作者很懒,什么都没留下…
展开
-
MongoDB介绍──前言
一.前言mongo不是芒果(mango),取自“humongous”(海量的)。是一种开源的文档数据库──nosql数据库的一种。nosql是“not only sql”,而不是“no sql”。nosql的特点:非关系型,分布式,开源,可水平扩展,模式自由,支持replication,简单的API,最终一致性[1]。此文档大部分翻译自官网的manual,其它的整理于博客文章。由于认识原创 2010-04-17 20:28:00 · 718 阅读 · 0 评论 -
MongoDB介绍──开发者专区(4)
2.4 mongo──交互式shellmongo类似于MySQL中的mysql进程,但功能远比mysql强大,它可以使用JavaScript语法的命令从交互式shell中直接操作数据库。如查看数据库中的内容,使用游标循环查看查询结果,创建索引,更改及删除数据等数据库管理功能。下面是一个在mongo中使用游标的例子:> for(var cur = db.posts.find(); cur.原创 2010-04-17 21:05:00 · 973 阅读 · 0 评论 -
MongoDB介绍──开发者专区(2)
2.2 MongoDB资源消耗考虑到性能的原因,mongo做了很多预分配,包括提前在文件系统中为每个数据库分配逐渐增长大小的文件集。这样可以有效地避免潜在的文件系统碎片,使数据库操作更高效。一个数据库的文件集从序号0开始分配,0,1...,大小依次是64M,128M,256M,直到2G。一旦文件大小达到2G,之后的文件大小都保持为2G。所以如果上一个文件是1G,而数据量刚好超过1G,则下原创 2010-04-17 20:55:00 · 1031 阅读 · 0 评论 -
MongoDB介绍──开发者专区(1)
二.开发者专区2.1 MongoDB简介MongoDB是一种面向集合的,模式自由的文档数据库。面向集合是说数据被分成集合的形式,每个集合在数据库中有惟一的名称,集合可以包含不限数目的文档。除了模式不是预先定义好的,集合与RDBMS中的表概念类似。数据库和集合的创建是“lazy”的,即只有在第一个document被插入时集合和数据库才真正创建──这时在磁盘的文件系统里才能看见。模式原创 2010-04-17 20:45:00 · 1579 阅读 · 1 评论 -
MongoDB介绍──管理者专区(4)
3.4 Sharding(分片)3.4.1 sharding介绍MongoDB包括一个自动分片的的模块(“mongos”),从而可以构建一个大的水平可扩展的数据库集群,可以动态地添加和移走机器。如下是一个数据库集群的示意图:mongod:数据库服务器进程,类似于mysqld。shards:每个shard有一个或多个mongod,通常是一个master,多个slave组成re原创 2010-04-17 21:39:00 · 1128 阅读 · 2 评论 -
MongoDB介绍──管理者专区(3)
3.3 Replication(复制) Mongo提供了两种方式的复制:简单的master-slave配置及replica pair的概念。 如果安全认证被enable,不管哪种replicate方式,都要在master/slave中创建一个能为各个database认识的用户名/密码。认证步骤如下: slave先在local.system.users里查找一个名为"原创 2010-04-17 21:34:00 · 906 阅读 · 0 评论 -
MongoDB介绍──管理者专区(2)
3.2 GridFS3.2.1 GridFS介绍 GridFS是MongoDB中用来存储大文件而定义的一种文件系统。MongoDB默认是用BSON格式来对数据进行存储和网络传输。但由于BSON文档对象在MongoDB中最大为4MB,无法存储大的对象。即使没有大小限制,BSON也无法满足对大数据集的快速范围查询,所以MongoDB引进了GridFS。GridFS表示的对象包含两原创 2010-04-17 21:30:00 · 971 阅读 · 0 评论 -
MongoDB介绍──管理者专区(1)
三.管理者专区3.1 通用的功能1. 有可用的管理UI;2.启动选项(-v[v[v[v[v]]]],--nssize,--master,...);3. 关闭。直接"Ctrl-C",或者调用db.shutdownServer()(当然需要有权限),或者"kill -2 PID" or "kill -15 PID";4.日志记录。可以通过logRotate命令(db.runCom原创 2010-04-17 21:24:00 · 998 阅读 · 0 评论 -
MongoDB介绍──开发者专区(5)
2.6 模式设计2.6.1 Mongo式的模式设计使用Mongo有很多种方式,你本能上可能会像使用关系型数据库一样去使用。当然这样也可以工作得很好,但却没能发挥出Mongo的真正威力。Monog是专门设计为富对象模型(rich object model)使用的。例如:如果你建立了一个简单的在线商店并且把产品信息存储在关系型数据库中,那你可能会有两个像这样的表:item原创 2010-04-17 21:16:00 · 968 阅读 · 0 评论 -
MongoDB介绍──开发者专区(3)
2.3 术语介绍2.3.1 数据库、集合、文档每个MongoDB服务器可以有多个数据库,每个数据库都有可选的安全认证。数据库包括一个或多个集合,集合以命名空间的形式组织在一起,用“.”隔开(类似于JAVA/Python里面的包),比如集合blog.posts和blog.authors都处于"blog"下,不会与bbs.authors有名称上的冲突。集合里的数据由多个BSON格式的文档对原创 2010-04-17 20:59:00 · 1482 阅读 · 1 评论 -
MongoDB介绍──综述
四.综述MongoDB作为一个开源项目得到了社区和商业上的良好支持,能够保证开发的持续及bug的修正。甚至有人专为GridFS存储的文件开发了一个Nginx模块nginx-gridfs,从而可以通过nginx直接访问MongoDB GridFS中的文件。同时由于推出时间较短,缺少有经验的使用者,有些问题可能无法在社区及mailing list中得到快速的解答。 CAP(Consist原创 2010-04-17 21:44:00 · 909 阅读 · 0 评论