MongoDB、CouchDB和Cassandra需要Solr/Lucene吗?

如果您有RDBMS,您可能必须使用Solr将关系表索引到完全嵌套的文档 我不熟悉Mongodb、CouchDB和Cassandra等非sql数据库,但在我看来,您保存的数据已经存在于该文档结构中,就像保存在Solr/Lucene中的文档一样 这是否意味着在使用这些数据库时不必使用Solr/Lucene 它是否已编制索引以便您可以进行全文搜索?这取决于您的需要。他们有全文搜索。在CouchDB中,搜索是Lucene(与solr相同)。不幸的是,这只是一个全文索引,如果您需要复杂的评分或DisMax

Mongodb Node.js mongoose:如何使用查询的.in和.sort方法?

我正试图了解mongoose,但对于一些更高级的查询选项,特别是.in和.sort方法,我很难找到任何类型的文档。排序的语法是什么,例如,按年龄排序的人 db.model(“Person”).find().sort(???).all(函数(人){}) 然后,假设我想找到一部基于类型的电影,其中一部电影可以有许多类型(在本例中,是字符串数组)。大概,我会使用.in函数来实现这一点,但我不确定语法是什么。或者我根本不必使用.in方法。。。?不管怎样,我都迷路了 db.model(“Movie”).f

Mongodb 插入&;保存与猫鼬收集

我正在尝试使用Mongoose将新记录插入我的MongoDB。我有下面的coffeescript,在一组ad_单元上迭代: campaign_doc = new mongoose.Collection 'scheduled_campaigns', db for unit in ad_units campaign = new campaign_model unit campaign_doc.insert campaign campaign.save() 代码运行时不会抛出任何错误。但是,我的收藏

MapReduce和iReport/Jasperserver(MongoDB)?

iReport是否支持MapReduce?(与MongoDB合作) 我想知道我是否可以在此窗口中放置Map Reduce查询,或者是否可以在jasperserver上的报告中放置(当您上载.jrxml时,您有一个“查询”选项卡) 感谢查看Jasperforge论坛,根据此更新,它似乎支持Windows中的MapReduce查询- 我自己还没有测试过,但iReport似乎允许您运行任何您想要的Mongo查询。是的,它可以。例如: { collectionName : 'dataByZipCo

Mongodb mongoose-按数组长度排序

我有这个模式 var PostSchema = new Schema({ title: {type: String, trim: true} , description: {type: String, trim: true} , votes: [{ type: Schema.ObjectId, ref: 'User' }] }) 我想根据投票对帖子进行排序,也就是说,我需要按数组长度排序 用通常的方法试过了,但不起作用 PostSchema.statics.trending =

Mongodb 如何找到猫鼬的所有收藏

我应该找到mongo数据库中存储的所有集合 require('../app/models/schemas'); //loading application schemas mongoose.connect('mongodb://localhost/test'); var db = mongoose.connection; db.on('error', console.error.bind(console, 'connection error:')); var collections = db.c

在MongoDb聚合中匹配三分之二(或不包括一个)

假设我有一个mongo db餐厅集合,它有一系列不同的食物,我想平均每个餐厅的“三明治”和“汉堡”的价格,即不包括牛排。在这种情况下,我如何匹配三种类型中的两种,即,换句话说,过滤掉牛排 例如,对于match操作符,我可以(假设我已经解开了数组)执行如下操作 { $match : { foods : "burger" } } 但我想做更多类似的事情(不包括牛排) 除了代码不起作用 你能解释一下吗 "_id" : ObjectId("50b59cd75bed76f46522c34e"), "re

MongoDB列表文档不在其他列表中

我有一个包含许多对象的文档,以及在这些对象上运行的几个聚合处理器。 假设objects文档的名称为objects。 对于一个处理器,我创建了另一个名为ProcessedObjects的文档,其中每个实例都是一个对象,其中包含一个字段processedObjectPtr,该字段是指向对象的链接 我想运行以下基本循环: for all objects that haven't been processed yet: 1 - process object 2 - add object

无法将csv文件导入mongodb数据库2.4.9。

我尝试了多种方法将csv文件导入mongodb。但所有的人都给了我错误。我尝试的导入命令是 mongoimport --host 127.0.0.1:270107 -d test -c test --type csv --file d:\sakthi\mcmis\ktest.csv --headerline Error: Couldn't connect to [127.0.0.1:270107] couldn't connect to server 127.0.0.1:270107. 然后

Mongodb 海量数据的高效索引

我有一个储存电话号码的栏。我添加了一个索引,查询正在按预期使用它。但这个指数有效吗?当我有数百万张唱片时,它还会快吗 >db.testData.ensureIndex({phone:1}) >find({“phone”:“267884851”}).explain() { “光标”:“BtreeCursor phone_1”, “未扫描”:1, “非扫描对象”:1, “n”:1, “毫”:0, “NYELDS”:0, “跳过”:0, “isMultiKey”:没错, “indexOnly”:错误,

Mongodb 在Mongo中按嵌套数组中的文档值排序

我有一个叫做对象的集合。每个对象文档都有一个称为属性的嵌套文档数组。每个属性文档都有一个名称和一个值 例如,假设我有两个对象,每个对象都有两个属性(高度和宽度)。我将如何按高度对对象进行排序 { "id": 1, "properties": [ { "name": "height", "value": 170 }, { "name": "width", "value": 200 }, ] }, { "

Mongodb在Golang mgo中的聚集

有人知道我们在mongodb shell中为golang mgo/bson使用的聚合命令是什么吗 诸如此类: aggregate([{$match:{my_id:ObjectId("543d171c5b2c1242fe0019")}},{$sort:{my_id:1, dateInfo:1, name:1}},{$group:{_id:"$my_id", lastEntry:{$max: "$dateInfo"},nm:{$last:"$name"}}}]) 假设c是您的收藏: pipe :=

如何使用java代码连接共享MongoDB集群?

我在本地主机上设置了一个共享集群,其中包含3个副本集,并在默认端口上运行mongos。如何使用Java API连接到共享集群。看看Java Mongo驱动程序()。具体来说,对于您的情况,您需要创建一个mongoClient,其中包含您的mongos(或mongos es?请阅读此处的更多信息)的主机和端口 如果您计划在MongoDB之上构建一个更复杂的应用程序,我强烈建议您也看看Morphia() // for a sharded cluster setup with two mongos r

原始MongoDB和Mongoid之间的不同结果

我直接在MongoDB中运行此查询: db.events.aggregate([ {$match: {name: 'new_session', created_at: { $gte: ISODate('2010-01-01T00:00:00.000Z'), $lt: ISODate('2015-05-01T00:00:00.000Z') }}}, {"$project": { "user_id": "$user_id", "year": {"$year": "

mongodb分片集合索引信息存储在哪里?

让我们假设一个具有shard key的shard集合名为skey 还有另一个索引键,但不是名为ikey的切分键 如果查询是这样的 db.collection.find({"ikey": "something"}) 它将搜索所有碎片中的文档,因为它不是碎片密钥 在这一点上,mongos怎么知道应该在碎片上搜索它?索引信息存储在哪里?配置服务器?或者每个分片mongod服务器?索引存储在单个分片上。这适用于切分键和所有其他索引 mongos为每个分片保存所谓的分片密钥范围缓存。密钥范围存储在配置服

Mongodb 具有可变用户id的文档的架构

我从许多机器上获得了这样的数据,我们称之为事件,我想把它们放到mongodb中: 稍后,这个用户可以更改他的机器,并为他生成新的id-user\u sid 具有新用户\u sid的新条目 `event` { "payload":"xxxxxxxxxxxx", "user":{ "user_sid":"S-1-5-21-2242820312-3698568055-2602798999-5555", "user_login":"john1"

Mongodb 展开和匹配后的组数组

我有一个两次嵌套的模式: mongoose.model('Team', mongoose.Schema( { players : [{ trikots : [{ isNew : Boolean, color : String }] }] }) 目前,我的查询如下所示: Team.aggregate() .match({'_id' : new ObjectId(teamId)}) .unwind('player

Mongodb 在Meteor中为用户使用不同的集合

我有一个Meteor项目,不幸的是,我被迫通过包meteorsteam:Meteor-postgres修改该项目以使用PostgreSQL而不是MongoDB。我已经设法让一切正常运行,除了用户集合,它似乎与Meteor焊接在一起 是否可以使用其他收藏 我试着用内存中的集合替换它,并连接一些逻辑与psql表同步。这会打乱内置的发布功能,因为集合没有名称 不会有很多用户,所以将整个内容作为一个集合存储在内存中不是问题 我在互联网上搜索过,但找不到任何提及此事的内容 建议?如果可以,一个简单的解决方

MongoDB:如何按日期进行文本搜索和排序

上下文:我有一个MongoDB,里面有大量的电子邮件。我想在以下任何字段中搜索所有包含给定电子邮件地址的电子邮件:收件人、发件人、抄送和密件抄送。结果需要按字段日期排序。我们当前正在尝试以下查询: db.collection.find({ $text : {$search: "\"email@domain.com\""}}).sort({Date:1}) 我试着做一个包含日期的复合索引,但它不起作用 有了这个索引 db.collection.createIndex({Date: 1, From

Mongodb Mongo-将null或未定义的fieled视为特定值

我有以下情况: 考虑包含以下文档的集合: [ { '_id': ObjectId('somehting'), 'date': null }, { '_id': ObjectId('somehting'), }, { '_id': ObjectId('somehting'), 'date': '2015-01-01 12:12:12' }, many others ] 现在我有了以下查询,可

NoSql中使用mongoDB和Mongoose的关系

好的,我来自SQL背景,我只是在用MongoDB和Mongoose弄脏我的手 我有两个简单的模型: 汽车: 司机 let mongoose = require('mongoose'); let Schema = mongoose.Schema; let driverSchema = new mongoose.Schema({ name: String, cars: [{ type: Schema.Types.ObjectId, ref: 'Car

mongodb上的Map reduce返回递归结果

我收集了一些房地产,在mongodb上运行map reduce来计算一些基本统计数据。在本地一切都很好,但当我在mongohq上运行任务时,我会返回递归结果 让我把事情简化一点,而不是真正的reduce fn,说reduce是: function(key, values) { return { values: values }; } 地图功能: function() { emit('price', this.price); } 在本地运行任务时,输出如下所示: { "values

MongoDB:带数组的文本索引,只索引第一个术语

我有一个具有以下架构的文档 { description : String, tags : [String] } 我已经将这两个字段作为文本索引,但问题是每当我搜索 数组中的特定字符串,仅当该字符串是数组的第一个元素时,它才会返回文档。因此,$text索引似乎只对第一个元素起作用,这是mongo固有的工作方式还是有一个必须传递给索引的选项 示例文件 { description : 'random description', tags : ["hello", "there"]

嵌入单据的Mongodb组查询

是否可以在嵌入的文档中查询特定键的值计数 这是我的文件: { "_id" : 1, "drives" : [ {"fw": "A"}, {"fw": "B"} ] } { "_id" : 2, "drives" : [ {"fw": "B"}, {"fw": "C"} ] } { "_id" : 3, "drives" : [ {"fw": "A"}, {"fw": "C"} ] } { "_id" : 4, "drives" : [ {"fw": "A"}, {"fw": "D"} ] }

Mongodb 无效的参数索引!您似乎声明的查询方法参数太少了!-Spring Mongo文本搜索

我正在开发用于文本搜索的Spring+Mongo数据JPA示例。当我尝试使用OrderID102进行搜索时。我希望所有记录都能从数据库中获取,这些记录在OrderID中包含102条。请帮助我,我看到以下错误即将发生 org.springframework.data.repository.query.ParameterOutOfBoundsException: Invalid parameter index! You seem to have declare too little query me

Mongodb Mongorestore通过标准输入到具有不同名称的数据库

我一直在试图找到一种方法来做到这一点,但做不到,我有一种感觉,没有一种简单的方法来做我想做的事情 我一直在测试使用,以避免创建实际存储的文件集,这在基于云的服务中非常有用。到目前为止,我一直在通过指定相同的db来测试这一点,尽管从技术上来说这是不必要的,就像这样 mongodump -h hostname -d dumpdb --excludeCollection bigcollection --archive | mongorestore --archive -d dumpdb --drop

MongoDB获取不同值的计数

假设我有一组记录: {'name':'record1', 'colors':['red','green','blue']} {'name':'record2', 'colors':['red','orange']} {'name':'record3', 'colors':['red','yellow','blue']} {'name':'record4', 'colors':['red','green','blue']} 我可以使用以下方法获得不同颜色的列表: collection.disti

Mongodb 数组中与序列匹配的文档

考虑以下3个文件(简化): 我需要按数组中的项目顺序匹配文档。我将使用诸如572、942、68等整数。整数的每个数字表示数组中的位置 例如,对于572,我需要匹配第一个文档(Alex Ham),因为如果查看对手数组,项目序列及其位置字段分别为5、7和2 对于942,我必须匹配第二个文档(John Flex),对于68,我必须匹配第三个文档(Adam Will),依此类推 考虑到拥有大量数据(数百万个文档),并考虑到性能,我如何构建一个聚合管道来匹配上述情况下的文档。请通过下面的管道解决问题。基本

MongoDB聚合错误:管道阶段规范对象必须仅包含一个字段

我是mongodb的新手,第一次尝试聚合。在这里,我试图获得每15分钟分组的推文数量。当我尝试在mongo控制台中运行以下查询时,我得到了错误: 管道阶段规范对象必须仅包含一个字段 我找不到一个很好的理由来解释这件事。请分享您对此主题的想法以及为什么我的查询有错误。MongoDB抱怨,因为您的管道中有一个无法识别的管道阶段规范“count”:{“$sum”:1} 正确格式化原始管道时 db.hashtag.aggregate([ { "$group": {

在服务列表中找不到MongoDB服务

我已经按照这个链接的指示进行了操作 我什么时候去 sudo service mongod start 它显示为无法识别的服务 我知道我可能需要使用mongodb而不是mongod,但这是一样的 然后,我已经检查了所有的服务列表 service --status-all 列表中没有与mongodb相关的服务 我重新安装了它,它是一样的。我也通过互联网搜索过,但我找不到解决方案。我安装在Windows的ubuntu bash上。在此问题之前(14.04至16.04),我已重新安装过一次bash

Mongodb 如何根据查找结果对mongo文档进行排序

我有一个MongoDB集合,它有1000万个数据。我有两个主要字段domain(字符串类型)和level(整数类型)。这两个字段都编制了索引,但当我在find语句之后对结果进行排序时,mongo会花费大量时间返回结果 如何从find语句中快速排序结果 db.collection.find({"domain":"DOMAIN_NAME"}).sort({"level":1}) 从您的评论来看,您似乎创建了两个单独的索引:一个在域上,另一个在级别上。当与该查询配对时,无法组合这些索引以支持排序 发

Mongodb聚合-聚合到辅助主机并创建到远程主机的集合

我必须对次要成员执行更新、匹配、解绑操作,但在次要成员上,我将无法创建外收集,因此我希望在次要成员上执行聚合,并将输出还原到远程主机以进一步处理数据。如果是“更新”,则需要写入“主要成员”。根本没有别的办法。也没有使用聚合的“更新”之类的东西$out创建一个全新的集合。这不是一个简单的更新。更新需要循环,或者可以直接应用于“multi”。所以我不知道你在说什么。也许你应该举例说明,而不是用几句话。谢谢你回复Neil,有可能让$out集合创建到不同的主机(比如我的测试机)吗并运行到辅助节点的聚合$

如何取回“只”字_id";MongoDB find()中的字段

我只想返回mongo中与find()query匹配的文档id 我知道我可以在结果集中传递要排除或包含的对象,但是我找不到只返回\u id字段的方法 我的思维过程只是返回一点信息,这将更加有效(我的用例不需要其他文档数据,只需要ObjectId) 我希望能够使用的一个查询示例是: collection.find({}, { _id: 1 }).toArray(function(err, docs) { ... } 但是,这将返回整个文档,而不仅仅是\u id字段。您只需要使用投影来查找所

Mongodb 删除同一字段上匹配的两个正则表达式

我需要删除文档,但在同一变量中有多个条件 db.getCollection('system_parameter').remove( { "variable":/^pickup_kota/, "variable": { $nin: [ /^pickup_kota_jakarta/ ] } } ) 我想做的是,我想删除所有前缀相同的数据('picku kota'),但不包括('picku kot

MongoDB连接到AWS平均堆栈上的节点

几天来,我一直在尝试将我的mongoDB连接到MEAN stack,但没有成功。它在AWS lightsail Bitnami上运行。网站本身运行良好,除了任何具有ajax/db调用的页面,因为数据库没有连接/验证我的连接字符串 我使用的是mongo、node、express堆栈的一部分,目前我不需要也不知道任何角度。我认为这比在nodeJS上设置然后单独添加mongoDB要容易得多。我确实尝试过,首先遇到了类似的问题,我确实打算在将来学习angualar,所以从长远来看这可能更好。服务器端设置

Mongodb 流星上升设置“;启动Mongo:失败";:码头集装箱

我要做的是推送自动生成的默认meteor应用程序 meteor create myApp 到raspberryPi3B+运行raspbian stretch lite 我被困在Meteor Up页面的第2-3步: 在第2步中配置“mup.js”文件时,我肯定出了什么问题,运行后在第3步中抛出了一个错误 sudo mup setup --verbose 我在终端中得到以下输出: Started TaskList: Setup Docker [192.168.1.30] - Setup Dock

如何在有3台web服务器用于负载平衡的情况下设置mongodb复制?

我们计划在3个地点建立一个web解决方案。。。由负载平衡器前置,负载平衡器将根据客户端的位置进行分发。 因此,如果web应用程序的请求来自北美,我们将路由到北美服务器/站点。 如果后端数据库是mongodb,我如何才能让这种类型的设置正常工作?从我所读到的内容来看,您不可能拥有多主机复制,其中3个位置中的任何一个都可以写入其本地数据库,然后将其复制到其他2个位置 你能给我指一下正确的方向吗? 谢谢。这可能没有您想要的结果。我假设您在地理位置上拥有前端web服务器以提高性能,但它们仍需要转到Mon

Mongodb 如何根据文档与整个集合的比较来提取整个文档?

我试图从一个“稀疏”集合中提取最新的可用每日测量值,该集合可能没有每天的测量值。我想把整个原始文档作为输出。该集合包含由唯一id标识的多个测量系列 例如,给定以下集合: { "date" : "2019-04-10", "id" : 1, "measurement" : 50 } { "date" : "2019-04-10", "id" : 2, "measurement" : 1 } { "date" : "2019-04-10", "id" : 3, "measurement" : 33

Mongodb 当primitive.a是bson[]接口时,如何将mongo go驱动程序的输出作为bson数组反序列化到[]接口{}中

我有一个map[string]接口{},它是从使用新的mongo go驱动程序的mongo查询生成的 我想处理映射中的某些值,并替换属于聚合键的值中的字符 这是地图: result2 = map[aggregate:[map[£match:map[Source:Cities]] map[£sort:map[Order:1]]] collection:aggregate_stats db:stats] 在地图中循环: for key, value := range result2 {

MongoDB/Mongoose:将相关记录附加到每个攻击结果

给定以下名为“成员”的Mongo集合 我有一个聚合查询,它返回一组分页记录以及找到的总记录的元数据: db.members.aggregate([ { $facet:{ 管道1:[{$count:'count'}], 管道2:[{$skip:0},{$limit:4}], }, }, { $unwind:“$pipe1”, }, { $项目:{ 计数:“$pipe1.count”, 结果:“$pipe2”, }, }, ]) 这给了我: {count: 454, results: [<F

Mongodb 在填充mongoose之前,按对象id数组中的id进行筛选

我有这样的帖子 const postSchema = new mongoose.Schema({ title: { type: String, minlength: 2 }, description: { type: String }, categoryId: [{ type: mongoose.Schema.ObjectId, ref: "category" }], }); 我必须从帖子中随机获取文档并填充其中的所有类别。到目前为止,我所取得的成就是 await Post.agg

Mongodb NestJS与mongoose模式、接口和dto方法问题

我是nestJS和mongoDB的新手,我不清楚为什么我们需要为每个要保存在mongoDB中的集合声明DTO、模式和接口。例如,我有一个收藏(不幸的是,我把它命名为collection,但这并不重要),这是我的DTO: export class CollectionDto { readonly description: string; readonly name: string; readonly expiration: Date; } 接口: import { Document

Mongodb 如何使用$exists:false条件创建部分索引?

我要创建此部分索引: db.mycollection.createIndex( {"firstname": 1, "lastname": 1}, { partialFilterExpression: { "status": {$exists: false}, "quantity": { $lt: -1 } } } ); 但我收到了这个错误: 部分索引中不支持的表达式:$not\n状态存在\n“ 我该怎么办?不幸的是,你没有 该功能请求已经存在了很长一段时间: 希望他们能很快找到它

Mongodb 修改/创建文档时发出信号

我有一个具有用户管理和用户通知的Qt应用程序。在我的MongoDB数据库中,我有一个通知集合。我想在创建通知文档时,以某种方式将信号连接到Qt通知小部件 理想情况下,我不想在QTimer上运行数据库查询,但这是我目前唯一能想到的。有什么想法吗?使用变更流,这里是 这个小示例返回集合清单上更改的游标 cursor = db.inventory.watch() document = next(cursor) 使用变更流。我必须在单独的线程上运行吗?它会冻结我的申请吗?

上一页 1 2 ...  8   9   10   11    12   13   14  ... 下一页 最后一页 共 1229 页