草庐IT

mongodb.driver

全部标签

node.js - 使用 auth 的 MongoDB/Mongoose 3.x 副本集故障转移/重新连接代码的一个很好的例子是什么?

我正在模拟MongoDB副本集降压,并尝试让我的应用程序和驱动程序自动使用新的主要成员,而无需重新启动我的应用程序。现在,一旦降压发生,查询就会挂起并最终超时。有人可以分享一些与Mongoose3.x和最新版本的mongodb-node-native驱动程序(1.1.2)一起使用的正确配置的副本集连接字符串的示例代码吗?请注意:我正在使用身份验证。这是一个2Node+1仲裁器设置。 最佳答案 请升级到mongoose3.0.2,它修复了3.x版本。 关于node.js-使用auth的Mo

javascript - node.js 上的程序性二维数组 mongoDB 插入耗尽内存

我正在尝试通过我的node.js服务器将一个2000x2000二维数组插入到我的mongoDB实例中。现在我的做法是:for(i=0;i现在,我面临的问题是,在第576行左右,我的node.js实例速度急剧下降(每40秒左右处理一行),然后内存不足。我不明白这是怎么发生的/为什么会发生。我是否正确地处理了这个问题?关于如何毫不费力地将这个二维数组放入我的数据库有什么想法吗?感谢大家的帮助。 最佳答案 看起来问题出在我的mongoDB实例的提供者身上。我刚刚发现,在jitsu上假脱机mongo实例时,内存使用大小有~64MB的限制。因

json - 格式化 MongoDB MapReduce 输出

在我能找到的所有MongoDBMapReduce示例中,输出的格式如下:{"_id":...,"value":{"v1":...,"v2":...,"vn":...}}我想知道是否可以编写一个MapReduce命令来代替像这样格式化输出:{"_id":...,"v1":...,"v2":...,"vn":...}如果是这样,实现这一目标的最佳方法是什么? 最佳答案 由于MR实际写出的方式,这是不可能的。它写入一个值字段,适用与此处问题相同的规则:InMongoDBmapreduce,howcanIflattenthevaluesob

mongodb - grails mongodb 连接被拒绝

我的grails应用程序可以连接到我的本地mongodb并且工作正常,但是当我部署到cloudfoundry时,我在尝试连接到cf上的mongodb时遇到连接被拒绝的错误。我的应用程序绑定(bind)了一个mongodb服务,但它仍然无法连接?barry-alexanders-MacBook-Pro:~barryalexander$vmc应用程序+-------------+----+---------+-------------------------+-----------------+|Application|#|Health|URLS|Services|+-----------

mongodb - [MongoDB] :where is the incoming write operations saved in when the balancer is doing migration?

请参阅http://docs.mongodb.org/manual/core/sharding-internals/#balancing-internals.它有以下短语:“当MongoDB开始迁移block时,数据库开始将数据复制到新服务器并跟踪传入的写入操作。”我的问题是这些传入的写入操作保存在哪里?如果它在内存中,那么我需要如何调用getLastError并确保数据已同步到磁盘。谢谢! 最佳答案 首先,如果你想保证写入,无论你是否使用分片,你都应该调用getLastError(或使用你的驱动程序的等价物来实现安全写入)。就迁移

java - mongodb 是否将系统时区保持为时区?

我正在使用Java(JOOQ)和mongoDB,mongodb是否保持系统时区不变?有什么方法可以设置mongoDB的默认时区吗?谢谢 最佳答案 不,mongo不保留系统时区。在数据库中,日期以UTC格式存储:ABSONDatevaluestoresthenumberofmillisecondssincetheUnixepoch(Jan1,1970)asa64-bitinteger.v2.0+:thisnumberissignedsodatesbefore1970arestoredasanegativenumbers.但大多数司机在

debugging - 如何调试 MongoDB 查询?

我有一个正在运行的MongoDB查询,但它没有返回我知道应该返回的记录。我过滤两件事:类别和描述(通过contains/like正则表达式)。如果我根据类别搜索,该类别中的所有记录都会返回(包括问题记录),但如果我输入描述,我无法返回该记录。其他符合描述文字的记录回来了,但是不知为什么,无论我输入什么,我都无法让这条记录带描述条件回来。这很奇怪。如何使用MongoDB调试这样的东西?我的查询很简单:varmatch={};varcategory="hardware"if(category)match.Category=category;varsearchText="ceramic"if

php - Mongodb 和 PHP APC

我刚刚运行了一个测试,通过nginx/phpfastcgi创建了1000个到mongodb的非持久连接,这在我的开发机器上花费了大约2.1秒。然后我使用持久连接尝试了相同的测试,结果相同。我想我在某处读到过php驱动程序中的持久性现在始终处于启用状态。接下来,我尝试将连接存储到APC,这导致在第一次请求后有7-9毫秒的响应时间。现在我想知道这里的一些事情:我几乎从来没有想过我想在我的应用程序中一次创建多个连接的地方,并且根据我的理解,使用持久连接,mongo会根据需要创建新连接司机。创建单个连接所花费的时间似乎与从APC中提取存储的连接对象所花费的时间大致相同。缓存连接对象真的会带来好

MongoDB 系统配置文件集合 : no data for "insert" operations?

我已经配置了我的MongoDB2.0.2实例(更新:也在v2.2.0实例上进行了尝试)以将所有操作记录到system.profile集合(即db.setProfilingLevel(2))并试图准确查看应用程序在为新文档调用save()时插入的数据。我可以在system.profile集合中看到“插入”操作,但它不包括正在插入的数据。这是为什么?相比之下,system.profile中记录的更新操作有一个显示数据的“updateobj”属性。这是一个来自2.2.0实例的示例。如您所见,配置文件日志包含一个包含“updateObj”数据的更新条目。但是,插入内容没有关于插入内容的任何信息

mongodb - 文档DB和模拟ACID

见最后的结果我想使用文档数据库(出于各种原因)-可能是couchdb或mongodb。但是,我还需要acid处理多个文档事务。但是,我确实计划使用“仅添加”模型-更改将作为新文档添加(添加是添加,更新是添加副本+转换数据,删除是添加具有相同ID+删除标志的空文档)。我将定期对数据库运行压缩以删除非当前文档。有鉴于此,以下观点是否存在漏洞:维护当前正在进行的事务的集合。此集合将保存具有正在进行的事务的事务ID(guid+时间戳)的文档。Atomicity:Onatransaction:Addadocumenttothetransactionsinprogresscollection.Ad