11 2011 档案

mongodb指南(翻译)(六) - developer zone - 数据库之命令(一)
摘要:每一个mongodb服务器可以支持多个数据库。出于安全和方便管理的考虑,每一个数据库都是独立的,并且每一个数据库的数据也是分开存储的。一个数据库由一个或多个集合组成,文档(对象)存储在集合中,一个可选的安全证书可以控制访问。命令简介mongo数据库有一个数据库命令的概念。数据库命令可以告诉数据库执行一些特殊的操作,或者请求当前操作的状态信息。一条命令是作为针对名为$cmd的特殊集合的查询发送给数据库的。数据库会把命令结果放到一个单独的文档中返回-使用findOne()查看一下你的驱动是否有这个功能。一般情况下命令的语法是:db.$cmd.findOne( { <commandname&g 阅读全文

posted @ 2011-11-30 15:20 xinghebuluo 阅读(1723) 评论(0) 推荐(0)

mongodb指南(翻译)(五) - developer zone - 连接
摘要:Mongodb是一个数据库服务器:它运行在前台或者后台,等待来自用户的连接。当你启动mongodb,你会看到类似于下面的内容:~/$ ./mongod## some logging output#Tue Mar 9 11:15:43 waiting for connections on port 27017Tue Mar 9 11:15:43 web admin interface listening on port 28017此时它会停止打印输出但是并没有冻结,它只是监听在端口27017等待连接。一旦你连接并开始发送命令,它会继续输出所作事情的log。你可以使用任何一个mongodb驱动或者 阅读全文

posted @ 2011-11-29 11:32 xinghebuluo 阅读(1276) 评论(0) 推荐(0)

mongodb指南(翻译)(四) - developer zone - 教程
摘要:运行mongodb请参与快速启动指南来启动mongodb。连接到数据库首先使用数据库shell程序来操作数据库。(我们同样可以使用任何语言的驱动来做类似的操作。shell程序可以很方便的进行交互和管理。)这样启动mongodb JavaScript shell:view plain#'mongo'isshellbinary.exactlocationmightvarydependingon#installationmethodandplatform$bin/mongo默认情况下shell程序会连接到本地的数据库“test”。你将看到:view plainMongoDBshell 阅读全文

posted @ 2011-11-28 10:59 xinghebuluo 阅读(922) 评论(0) 推荐(0)

mongodb指南(翻译)(三) - developer zone - 快速启动MongoDB
摘要:本章节在官方文档的位置为:Home-Quickstart在OS X快速启动安装mongodb最简单的安装mongodb的方法就是使用包管理器或者预编译好的二进制文件:包管理器如果你使用Homebrew包管理器,请运行:view plain$brewupdate$brewinstallmongodb如果你使用MacPorts,你可以这样安装:view plain$sudoportinstallmongodb整个安装过程会花费稍许时间。32位二进制文件注:推荐使用64位(如果你有64位操作系统)view plain$curlhttp://downloads.mongodb.org/osx/mong 阅读全文

posted @ 2011-11-26 14:47 xinghebuluo 阅读(818) 评论(0) 推荐(0)

mongodb指南(翻译)(二) - developer zone - 简介
摘要:简介mongodb是一个面向集合,模式灵活的文档型数据库。所谓面向集合,是说数据被分组存储在被称作集合的数据集中。每个集合在数据库中都有一个唯一的标识名,并且可以包含无限数目的文档。集合的概念类似关系型数据库(RDBMS)里的表(table),不同的是它不需要定义任何模式。所谓模式自由(schema-free),是说对于存储在mongodb数据库中的文件,我们不需要知道它的任何结构定义。如果需要的话,你完全可以把不同结构的文件存储在同一个数据库里。 所谓的文档,是说存储在集合中的文档,被存储为键-值对的形式。键用于唯一标识一个文档,为字符串类型,而值则可以是各种复杂的文件类型。我们称这种存储. 阅读全文

posted @ 2011-11-25 16:55 xinghebuluo 阅读(804) 评论(0) 推荐(0)

mongodb指南(翻译)(一) - 翻译前言
摘要:云计算最近越来越热,各类云计算中心也是遍地开花,而mongodb是非关系数据库(nosql)中比较热门的技术之一,我也有幸在做这方面的工作,平时学习以mongodb官方文档为主(http://dl.mongodb.org/dl/docs/,该文档每天都会生成一个新版本),它里面包含了开发指南和管理指南两大部分的内容。碰到问题都是在mongodb官方论坛:http://groups.google.com/group/mongodb-user 获取帮助。 目前有一本中文书《mongodb权威指南》,里面的内容就是以mongodb官方文档为基础翻译而来,大家可以关注一下。由于mongodb现在的版本 阅读全文

posted @ 2011-11-25 15:39 xinghebuluo 阅读(990) 评论(2) 推荐(0)

[mongodb翻译]分片和故障转移
摘要:一个配置恰当的mongodb 分片集群不会有单点失效。本章节描述了集群服务器中可能出现的故障,及相应的对策。 1. 某个mongos路由进程故障 每一个mongos会运行每一台应用服务器上面,该应用服务器只能通过这个mongos进程和集群进行通信。mongos进程不是固定不变的;相反,他们在启动时从配置服务器那里获取必要的配置信息。 这意味着任何一台应用服务器故障都不会影响到整个集群,其他的应用服务器可以照常提供服务。恢复也是很简单的,只需要重启一个新的应用服务器和mongos进程。 2. 一个shard内的某个mongod服务器故障 每一个shard由包含了N个服务器的复制组组成,如果任何. 阅读全文

posted @ 2011-11-23 13:39 xinghebuluo 阅读(1165) 评论(1) 推荐(0)

[mongodb翻译]分片的限制(sharding limit)
摘要:安全2.0版本程序将会支持sharding状态下面的认证模式。与没有分片配置的区别2.0版本以前,分片必须运行在可信任的安全模式,没有明确的安全策略。在当前版本中,shard key一旦选定后就不能再更改了。所有的(不是操作多个)更新、更新插入和插入操作必须包含完整的shard key。这会对使用映射库有些影响,因为此时你无法控制更新操作。$where$where在sharding下面可以使用。但是不要在$where函数中引用数据库对象(db object)。db.evaldb.eval()不能在分片的集合上面使用。当然,你可以在未分片的集合上面使用db.eval().在分片环境可以使用map 阅读全文

posted @ 2011-11-23 09:22 xinghebuluo 阅读(1110) 评论(0) 推荐(0)

[mongodb翻译]选择合适的shard key
摘要:为一个集合(collection)选择合适的shard key非常重要。如果这个集合非常庞大,那么将来再来修改shard key将会很困难。如有任何疑问请到论坛或者IRC寻求帮助。示例文档view plain{server:"ny153.example.com",application:"apache",time:"2011-01-02T21:21:56.249Z",level:"ERROR",msg:"somethingisbroken"} 基数(cardinality)一个集合中的所有数据会 阅读全文

posted @ 2011-11-22 18:49 xinghebuluo 阅读(3224) 评论(0) 推荐(0)

[mongodb]使用mongodb中数组元素的下标来做更新(update)多维数组
摘要:mongodb的DBObject支持保存多维数组,在增加元素时使用"$push"操作符,在删除元素时使用"$pull".但是在做更新时问题就来了,mongodb首先支持使用"$"来定位数组中的某个元素,例如:view plain>t.find(){"_id":ObjectId("4b97e62bf1d8c7152c9ccb74"),"title":"ABC","comments":[{"by":"jo 阅读全文

posted @ 2011-11-22 15:29 xinghebuluo 阅读(10554) 评论(3) 推荐(0)

导航