Mongodb 在elasticsearch中为文档编制索引时出现异常

我有一个JSON文档。当我尝试在弹性搜索中建立索引时,我遇到了一个异常 index1没有默认映射 curl -XPOST localhost:9200/index1/talk?pretty=1 -d ' { "_id" : ObjectId("503b29efe4b032e338f0581b"), "_oid" : NumberLong(1182053), "_ugc" : false, "_v" : 22, "c" : [ "Destin

在MongoDB文档中搜索一个或多个字段中的值

我的应用程序中有一个搜索字段,我想用多种方式查询我的收藏。用户输入的搜索查询需要匹配name字段或url字段。例如,一个如下所示的文档: { "name": "Google Maps", "url": "http://maps.google.co.uk/" } 如果我输入google,//maps,maps google等,则应该匹配-您可以看到图片。只需对多个字段进行不区分大小写的正则表达式搜索 我知道如何使用regex搜索字段中不区分大小写的值,但我对MongoDB(以及一般的数据库)是新

MongoDB使用外键将字段复制到另一个集合

我想将颜色从用户收藏复制到汽车收藏。我使用的外键是userID > db.test1.User.find() { "_id" : ObjectId("515f7db83f71d6bcb1c41a48"), "age" : 33, "Color" : "blue" } { "_id" : ObjectId("515f7dc03f71d6bcb1c41a49"), "age" : 52, "Color" : "red" } { "_id" : ObjectId("515f7dc43f71d6b

Mongodb 如何转换集合中所有文档中多个字段的类型?

从CSV导入mongoimport后,我得到了大量以字符串形式存储的布尔字段。 字符串值均为真、假或空 对于整个集合,如何将这些字段转换为适当的布尔值?循环遍历应转换的不同字段,并生成包含当前键和应转换值的查询。对于与查询匹配的每个文档,将字符串值替换为布尔值 var boolean_fields = ['Key_a1','Key_a2', ..,'Key_an']; var queryFunction = function(key, value){ var expression = {

MongoDB-是否可以使用$cond或与$cond一起使用?

我正在尝试根据日期范围聚合字段。我不知道如何创建一个$cond表达式来计算多个表达式。我试图使用逻辑$or运算符,但运气不佳 db.project.aggregate( { $match : { brand : 4 } }, { $project : { _id : 0, brand : 1, count : 1, day : 1} }, { $group : { _id : "

MongoDB中的排序是如何工作的?

我有一个疑问:(doctrine2odm) 它给了我以下日期的文档:(示例) 例如,如果我将限制更改为20,我将获得以下日期: 2014-03-31 01:52:01 2014-03-31 01:51:42 2014-03-31 01:51:16 2014-03-31 01:51:06 我的问题是为什么在第一个查询中跳过这些日期? mongoDB是否收集符合条件的第一批文档,然后对它们进行排序? 那太愚蠢了 我更改了查询中的顺序(排序后的条件),但似乎没有任何效果。。WTF$near将为您提供

MongoDB-如何根据条件分组

我的mongoDB中有一些数据,如下所示 现在我想像这样检索数据 按日期、环境、TCID分组 最长时间 选择日期、环境、TCID、状态 按日期订购,TCID 我试过这样的东西 { $group : { _id: { DATE: "$DATE", TCID: "$TCID", ENVIRONMENT: "$ENVIRONMENT" } DATE: { $last : "$DATE" } TIME: { $last : "$TIME" }

MongoDB:作为进程运行还是作为服务运行

我是MondoDB的新手,刚刚在Windows8中进行了第一次设置。我遵循了一个教程,它告诉我从命令行运行mongod.exe,这似乎很好。但是,当我运行使用MongoDB的服务器(我在Visual Studio 2013中使用ASP.NET MVC 5)时,是否必须始终打开此命令提示符 我一直在看另一台在Windows XP中运行MongoDB的PC,它以前是由一位专家安装的(但很遗憾,我现在无法联系他),并且在服务器上运行良好。但是,没有打开命令提示符。他会怎么做 如果我在我的电脑和他的电脑

MongoDB查询:将Limit与$near一起使用会跳过几个文档

我目前正在开发一个应用程序,如果文档的位置在一定的距离范围内,它可以从集合中获取特定数量的文档。我正在使用Codeigniter的活动记录库,生成的查询如下 db.updates.find({locs: { $near: [72.844102008984, 19.130207090604 ], $maxDistance: 5000 }, posted_on : { $lt :1398425538.1942 },}).sort( { posted_on: -1 } ).limit(10).toA

Mongodb 如何将嵌入式条令文档填充到Zend字段集中?

我使用ZF2+条令+条令模块。我将个人文件嵌入房屋文件: /** * @ODM\Document */ class Custelement{ /** @ODM\EmbedOne(targetDocument="Person") */ protected $person; 所以 文档的公共字段House被保存并填充。我使用名为person的字段集编辑嵌入的文档字段,因此有一组输入元素,分别是name=person[firstName]和name=person[lastName

Mongodb NoSQL重复计数和删除

我从一次音乐活动中收集了大约10万条推特。你可以想象,有很多转发。为了进行适当的分析,我想对每个转发进行计数,然后删除转发或删除重复的转发。我找不到一种在NoSQL中实现的方法,所以在这里寻求帮助和建议。使用MongoDB和Robomongo GUI客户端 我所说的重复是指具有相同文本字段的条目 集合包含在这种类型的结构中: { "_id" : ObjectId("53cd28ea51f4fbe9f6e04798"), "name" : "Positivus Festival",

mongodb复合索引和单索引性能

考虑以下场景: 100%的时间我的查询将在查询中包含a,有时也包含b 90%的查询将是: {a:"somevalue"} 百分之十 {a:"somevalue",b:"somevalue"} 如果只使用复合指数(如果有的话)来满足这一点,会有什么负面影响 { "v" : 1, "key" : { "a" : 1, "b" : 1 }, "name" : "a_1_b_1", "ns" : "foo.bar

我们如何将Mongodb的自动缓存限制到特定集合

我们刚刚开始使用Mongodb替换应用程序中的许多核心sql表。我们希望使用同一个Mongodb实例来存储性能和使用率数据,以替代google analytics。但是,我们不希望此集合自动使用可能已进入主集合的系统内存 有没有办法控制mongodb的自动缓存功能 MongoDB无法控制其缓存,它完全是基于LRU的操作系统。我不相信目前有任何程序能够控制MongoDB上单个集合可以使用多少内存。考虑到这一点,您可以很好地规划您的应用程序,因此它应该是可行的;虽然我对您的用例知之甚少,但是……首先

文档中的Mongodb upsert字段

我有以下格式的文件: { "_id" : <id of document>, "inventory" : [ { "entity_id" : "<id>", "ad_type" : "ADTYPE" } ] } { “_id”:, “库存”:[ { “实体id”:“, “广告类型”:“广告类型” } ] } 我不确定这在mongo中是否可行,但我正在尝试在上面

Mongodb 2个meteor应用程序连接同一数据库

我有两个不同的meteor应用程序。app1在3000上运行,app2在3002上运行。所以我的问题是app1和app2应该使用相同的数据库。我尝试用“导出MONGO_URL”连接app2=mongodb://localhost:3001/app1“但是没有结果 我如何才能做到这一点?meteor创建的标准数据库称为meteor,因此我认为您应该从以下内容开始第二个meteor实例: MONGO_URL=mongodb://localhost:3001/meteor meteor -p 3002

创建mongodb碎片失败

我想在mongodb上创建一个碎片,但失败了。这是产生的错误: > cluster = new ShardingTest({"shards" : 3,"chunksize" : 1 }); Resetting db path '/data/db/test0' 2015-11-23T16:57:05.375+0800 Error: boost::filesystem::create_directory: No such file or directory: "/data/db/test0"

Mongodb Accumulo..是否有任何导入选项。。?

我是Accumulo的新手。我们正在将MongoDB迁移到Accumulo数据库。我们从mongoDB得到了一个包含所有表信息的文件。Accumulo中是否有任何选项可用于导入文件并自行创建表?通过API文档,我知道我们可以通过shell脚本和编程方式创建表。有人能告诉我Accumulo有什么导入选项可用于导入文件和创建表吗?没有本机方法。MongoDb处理的JSON文档的布局/模式与Accumulo完全不同。您可以尝试使用以下内容,但这需要更改MongoDB数据的格式。如果你不能做到这一点,你

带stride的迭代MongoDB查询

我需要对集合中的所有文档进行分析。由于集合可能有数百万个文档,因此我希望跳过中间省略范围的批,例如 首先加载1000文档 跳过下一步10000文档 加载下一个1000文档 等等 对于任何集合,即使我不知道它是按哪个键排序的(以获得一致的结果),我如何才能做到这一点呢?您是否询问mongoDB中的限制?您可能需要使用在内存中加载数据,然后在块中迭代数组,但我认为这不是一个好的选择。

Mongodb 查找数组中最大值与查询匹配的所有Mongo文档

给定这样的文档结构: { values: [ { value: 10 }, { value: 20 }, { value: 30 } ] } 我想搜索数组中最大值与查询匹配的所有文档 如果我搜索最大值小于25的所有文档,那么上面的示例将不匹配,因为30>25 我如何才能做到这一点?这是一项针对聚合的工作。您需要创建一个包含日期数组的管道,它将返回一个文档数组,数组中的每个日期对应一个文档数组 例: 将成为 [{"_id" : 1, "dates.

如何将参数注入mongodb@query

我有这样的疑问 @Query(value = "{'statusHistories':{$elemMatch:{'status':{$in:['PROCESSABLE']}}},'created' : { '$gt' : { '$date' : ':#{#dateFrom}' } , '$lt' : { '$date' : ':dateTo'}}}", count = true) Long countMe(@Param("dateFrom") Date datefrom, @Param(

在mongodb中使用substr后聚合中匹配的项目不起作用

我对mongodb只有一个用途 下面是我的样本记录 { "_id" : ObjectId("56fa21da0be9b4e3328b4567"), "us_u_id" : "1459169911J4gPxpYQ7A", "us_dealer_u_id" : "1459169911J4gPxpYQ7A", "us_corporate_dealer_u_id" : "1459169173rgSdxVeMLa", "us_oem_u_id" : "1459169

MongoDB全文搜索以单词开头

我的MongoDB查询有一个问题,我需要在我的字段内搜索,只从单词的开头搜索,而不是100%匹配单词 在我遇到这个问题之前,我使用了$regex,这里没有问题,唯一的问题是它比$text搜索慢很多,所以现在我希望有一个可以帮助我 这是我今天的问题 db.getCollection('product').aggregate([ {$match : {$text: { $search : "\"samsung\" \"evo\" } } }, {$project: { _id: 0, C

Mongodb 带投影的Mongo查询

在mongo中,如果条件匹配,如何从列表中返回所有match dict元素 以下是我的数据: {"packages": [ {"package_name" : "abc", "installed_date" : "2016-08-03"}, {"package_name" : "def", "installed_date" : "2016-08-04"}, {"package_name" : "ghi", "installed_date" : "

无法通过身份验证连接到mongodb?

这里还有另一个答案:。我试过了,但仍然可以;我不知道我的配置出了什么问题 我使用Ubuntu 14.04、Mongo 3.4.1(最新版本)作为服务安装 安装后,我首先运行此命令,就像它的文档一样: 它返回成功添加的用户。然后我重新配置/etc/mongod.conf storage: dbPath: /var/lib/mongodb journal: enabled: true systemLog: destination: file logAppend: tr

用于SSIS MongoDB连接器在云中大容量插入SQL Server DB的CData

我正在使用一个名为Cdata的工具为SSIS Mongo Connector加载/连接MongoDB数据。使用此工具,我能够提取数据并将数据下载到本地机器 但是,当我尝试加载SQL Server临时表时,会出现以下错误: 选择数据源位于远程计算机上。大容量插入 操作只能在包含此数据源的计算机上执行 位于 由于我只使用30天的试用期,是否有办法将数据复制到云中的我的SQL Server&CData的替代品?下面的链接可能有助于您重新关注您的问题,但您应该了解Mongo db。 错误是来自CData

Mongodb Mongo数据库关键问题

我们有一个关于刚刚发布的生产网站的紧急情况。我们刚刚受到严重的DDoS攻击,服务器被请求超载。一旦攻击停止,我们就用数据库重新启动服务器,我们注意到“WiredTiger.wt”文件刚刚消失,Mongo不再工作。考虑到“WiredTiger.wt”文件丢失,我想知道我们能做些什么来恢复数据库并让Mongo运行回去? 我们有一个实例,它的MONGO_URL设置为另一个实例,我们有数据库(这里是DDoS攻击发生的地方) 以下是您可以查看的一些日志: 当我尝试在数据库服务器上连接“mongo NAM

在mongodb函数中插入多个动态查询

我正在尝试在mongoDB数据库中保存文档。然而,我无法做到这一点 下面是我的代码- db.system.js.save({ _id:"createMultipleUsers", value: function() { try { var query=""; for(var i=0;i<2;i++ ) { if(i !=0) { query=q

只记录慢速查询mongodb

我试图在mongodb日志文件中只记录执行速度慢的查询,这些查询需要10秒以上的时间 我在管理mongo mongod --fork --quiet -v --logpath /home/logs/mongod.log --logRotate reopen --logappend 并将配置文件设置为 db.setProfilingLevel(1, 10000) 但是当跟踪日志文件时,它会打印所有查询。我可以看到很多查询,它的运行时间为0毫秒。我还需要添加什么来只获取慢速查询吗?有两个选项可以

到SpringDataMongoDB的MongoDB聚合查询

我有下面的MongoDB聚合查询,并希望有它的等效SpringData MongoDB查询 MongoDB聚合查询: db.response.aggregate( // Pipeline [ // Stage 1 : Group by Emotion & Month { $group: { _id: {

授权后MongoDB不工作

到处都找不到答案。这就是问题所在: 我和MongoDB在digitalocean的NodeJS项目上建立了它。我已经安装了NodeJS和MongoDB,还克隆了我的项目。起初,我在8888端口上运行我的项目,它与mongodb配合得很好。然后我将adminuser添加到admin表中,每当我再次运行我的nodejs项目时,我都会收到这个错误 unhandledPromisejectionWarning:MongoError:测试时未授权执行命令 那怎么授权呢?我应该在运行我的应用程序之前进行授权

如何在Ubuntu上使用自定义DBPath启动MongoDB作为服务

我有一个运行MongoDB的Ubuntu服务器,运行得非常好,但是服务器磁盘空间不足,崩溃了。我已经清除了它,但现在我无法让Mongo恢复并作为服务运行 这种情况以前发生过,我可以通过执行以下操作来解决: sudo rm /var/lib/mongodb/mongod.lock sudo mongod --repair sudo chown mongodb /tmp/mongodb-27017.sock sudo service mongod start 但现在,当我这样做时,我在修复过程中遇

Mongodb 在mongo管道上合并输出

我已经使用mongo创建了一个聚合,该聚合计划每5分钟运行一次,并将结果添加到输出集合中。问题是,这些值正在被替换,我想要的是求和。这是我的收藏首次运行后的结果文档: { "_id" : { "ID" : "ID0001", "NAME" : "NAME0001" }, "total_a" : 8.0, "total_b" : 2.0, "total_c" : 5.0, "total_d" : 5.0, "T

尝试使用RoboMongo将当前日期/ISODate()插入MongoDB

我目前正在使用RoboMongo将文档插入到我的MongoDB集合中。有时,我也需要进行更新。我的文档有两个字段导致我出现问题: createDate和updateDate 我想做的是,当我对文档进行更改时,或者当我插入一个新文档时,提供当前的日期和时间戳。在RoboMongo内部,我正在尝试做以下工作: { createdDate: new Date(), updatedDate: new Date(), } 我也尝试过用“ISODate()”替换“new Date()”

mongodb哪些文档以批量写入方式更新

我有一个包含许多文档的数据库 我有一个例行程序,每天更新这个数据库的新文档。 我指定_id值是因为我希望添加每个唯一的文档,但不希望添加任何重复的文档。 偶尔,我会运行一个更新文件,其中一些将被添加,其他将被匹配,然后每隔一段时间我会得到一个更新 为了提高速度,将使用bulkwrite命令对其进行更新。 从返回的结果中,我可以得到每一个(匹配、修改、升级等)的计数。然而,我希望得到一个修改过的文档列表,这样就可以对它们进行审查,以了解它们为什么没有被升级。 显然,我的钥匙不是唯一的。但是,更新程

Mongodb Mongo db(jenssegers)与laravel的连接错误

我在mongo db中使用laravel 5.6。Laravel安装成功,但当我安装jessenger时,它显示了我的错误,你们可以看到附加的图像。 我也使用了php_mongo.dll,但仍然显示错误。 我需要帮助来安装mongo db 尝试按以下方式安装软件包: composer require jenssegers/mongodb --ignore-platform-reqs 终于找到了解决办法。您的php_mongodb.dll文件应与php版本兼容 请回答我的上述问题。谢谢

Mongodb 我应该为数据库使用EBS还是EFS?

对于高可用性MongoDB、Cassandra或Elasticsearch集群的数据库目录,我应该使用EBS还是EFS?MongoDB、Cassnadra和Elasticsearch群集负责跨节点复制数据(如果它们配置为复制因子>1),因此可能不需要提供EFS复制功能。EFS适用于多台可以访问同一组文件的服务器。Cassandra内置了复制功能,因此该功能没有任何用处。您不希望多个Cassandra节点访问相同的文件,因为每个节点都管理自己的sstables 更不用说Cassandra是磁盘密集

Mongodb Aggreagate在数小时后因网络错误而失败

尝试使用mongo命令行工具在MongoDB集合上运行聚合失败,数小时后出现网络错误 time mongo 127.0.0.1/db --eval 'db.coll.aggregate([ {$group: { _id: {someField: "$someField", otherField: "$otherField"}, uniqueIDs: {$addToSet: "$_id"}, count: {$sum: 1} } }, {$match: { count: {"$gt": 1} }

Mongodb 按人口范围创建索引

我是MongoDB的新手,我正在尝试根据城市和县的人口对其进行分类。数据样本如下: { "_id" : "D", "name" : "Dar-e-salaam", "pop" : 212253 } { "_id" : "WF", "name" : "Westfalia", "pop" : 50257} { "_id" : "G", "name" : "Gabon", "pop" : 369536 } { "_id" : "M", "name" : "Montgomery", "pop" : 10

MongoDB compass简单分组查询

如何在MongoDB Compass中运行这样的SQL查询 select subject,count(*) from books group by subject 您可以使用来实现这一点 试试看: db.collection_name.aggregate([{ $group : { _id : "$subject", subject : {$first : "$subject"}, count : {$sum : 1} } }])

多个集合上的MongoDB聚合和popuplate匹配

我需要创建在多个集合上运行的聚合,并可以进行弹出式上传、搜索。我有3个系列: 返工: 修理: { "_id" : ObjectId("5d54f04dbe5e6275e53a551e"), "name" : "Repair_1", "kind" : 2, "order" : ObjectId("5d352477e340044098d5bb4e"), }, { "_id" : ObjectId("5d23f4ba0df6d8476c8384b2"),

如何在mongodb atlas中结合$searchbeta和地理搜索

我的团队将数据迁移到mongodb atlas 我有个问题 如何在mongodb atlas中结合$searchbeta和地理搜索。现在,$search(或$searchbeta)阶段支持地理空间查询。 包含地理空间数据的字段必须映射到类型。然后有几种可能的方法来查询数据:,和。不确定MongoDB Atlas是否与on-prem MongoDB不同!你能解释一下你想做什么吗?@BookOfZeus我想搜索距离用户1公里以内的商店,并可以搜索商店名称,按商店名称或距离排序。只要你有访问权限和相同

MongoDB:如何根据其他字段更新数组元素的字段?

我试图通过使用管道更新来更新MongoDB(4.2)中的数据。困难在于我想根据另一个字段向数组元素添加一个字段。我还想对每个元素都这样做。我知道我可以用Javascript来实现每一个功能,但我想知道是否有更好的方法。这就是我想做的一个例子 之前: { "_id" : ObjectId("555555555"), "messages" : [ { "author" : { "userId" : "12345"

如何从Talend Open Studio连接到MongoDB?

我正试图从Talend Open Studio连接到MongoDB数据库,但遇到一些问题。起初,我甚至没有连接到MongoDB的组件(tMongoDBConnection,tMongoDBInput),所以我不得不下载并导入它们(按照这里第一个答案的步骤:) 现在,我有一个名为session\u store的数据库,其中有一个名为tutorialprogresses的集合,该集合具有数组类型的属性events。但是,当我试图从Talend中的该属性获取数据时,它总是返回null 这就是我的工作:

有人能在cosmos mongodb上使用带有日期字段的ttl吗?

几天来一直在修补宇宙。它说TTL的工作原理和mongos一样,但显然不是。它可以与int32配合使用。但它完全忽略了日期 作为参考,我在_ts字段上设置了索引,并将expireInSeconds设置为-1。然后,我给每个文档提供它自己的ttl字段,不管我希望它们停留多长时间 由于int系统确实可以工作,所以我继续创建了一些东西,可以将未来的日期转换为秒,这非常好。所以我的另一个问题是,在那么远的地方使用ttl可以吗。我可能希望文档在一个月后自动过期。这需要很多秒才能在飞行中找到答案。在任何给定的