Tag: nosql

具有高读取性能的NoSQL数据库(写入访问不重要)?

我正在使用Nodejs在“实时”网站上工作 。 目前,我正在使用Redis,因为我需要高性能的读取权限。 写入访问对我的用例来说并不重要。 另外,Redis没有search的查询语言。 所以,我手动创build我的索引,并使用一些联合/交叉点/ …来查找一些值。 我认为使用embedded式查找系统和类似ORM的MongoDB会比较容易(例如Mongoose )。 问题是我不确定MongoDB是否是我的用例的最佳select。 你对NoSQL DB的build议是什么? Redis? CouchDB ? MongoDB? 卡桑德拉 ? 等等 我再说一遍:我希望读取访问和search (写入访问不重要),最简单的可能(orm-like?查找系统等) 谢谢。

在Mongoose中删除多个参考

我的一个mongoose模式是一个多对多的关系: var UserSchema = new Schema({ name : String, groups : [ {type : mongoose.Schema.ObjectId, ref : 'Group'} ] }); var GroupSchema = new Schema({ name : String, users : [ {type : mongoose.Schema.ObjectId, ref : 'User'} ] }); 如果我删除一个组,是否有从所有用户的“组”数组中删除该组objectId? GroupSchema.pre('remove', function(next){ //Remove group._id from all the users })

wordpress和node.js

是否有可能在同一台服务器maschine上安装wordpress和node.js服务器,还可以从node.js中使用wordpress mysql数据库? 也有可能有noSql也安装在服务器上使用node.js? 我想为我的门户使用前端的wordpress,但是所有的asynchronous工作都是使用node.js和从wordpress的mysql中读取一些数据,然后写一些到noSql。 有人可以请帮助我如何实现这个testing目的的步骤。 感谢您的时间和最好的问候!

mongodb中的地理空间索引与node.js

我在find如下所示的定义地理空间索引“2d”的问题。 任何线索什么是错的? var Address = new Schema({ loc : {lat: Number, lng: Number }, Address : String, create_date : {type: Date, default: Date.now} }); Address.index ({ loc : "2d" }); 它抛出错误, events.js:45个参数[1]; //未处理“错误”事件^错误:在[对象对象] 处不在范围内 。 (/ cygdrive / c / Personal / software / nodejs / NODE / no de_modules / mongoose / node_modules / […]

Node.JS与NoSQL或SQL?

我不是很了解,我一直在为Node.JS的数据库做一些研究,几乎所有人都推荐使用MongoDB或CouchDB之类的NoSQLtypes数据库来与Node一起使用。 但进一步阅读,我发现NoSQL对于关系数据来说并不是那么好……但是这正是我感到困惑的地方:大多数业务应用程序(或社交networkingtypes的应用程序)都有关系数据。 例如,假设我正在Node.JS中为有学生,老师,class级的学校构build一个应用程序。 你可以看到那里有很多关系 你还会推荐使用NoSQL吗?

Mongoose,CastError:在尝试保存包含模型的模型时,Cast to Array失败。

我正在尝试使用mongoose为我的mongodb数据库创build模型。 这是我想要做的: var Class = mongoose.model('Class', {className: String, marks: [{type: Number}], grades: [{type: Number}]}); var User = mongoose.model('User', {email: String, classes: [Class] }); //Lets create a new user var class1 = new Class({className: 'aaa', marks: [72, 88, 63], grades: [30, 40, 30]}); var user1 = new User({email: 'aaa@some.com', classes: [class1]}); 保存class1似乎工作正常,但是当我检查mongodb时,会显示: { "_id" : ObjectId("someId"), […]

如何在KeystoneJS中创build唯一的键

我正在使用KeystoneJS构build的网站,允许用户发布单词并从其他用户那里获取build议的同义词。 单词是作为短语或句子的一部分提交的,例如“猫已经(危险地)接近敲开玻璃杯”。 我的句子模型看起来像这样: Sentence.add({ sentence: { type: Types.Text, required: true, initial: "New Sentence", index: true }, word: { type: Types.Relationship, ref: 'Word', required: true, index: true, unique: true, initial: true }, submitter: { type: Types.Relationship, ref: 'User', required: true, index: true, unique: true, initial: true }, source: { type: Types.Text }, createdAt: { type: Date, […]

在布尔键上的DynamoDB查询

我是DynamoDB的新手(对于一般的noSQL),并且为了让我的头脑围绕一些概念而挣扎。 有一件事情特别是给我一些问题,这是围绕一个布尔键查询表的问题。 我意识到我不能创build一个布尔键的主要或次要索引,但我不明白我应该如何理想地索引和查询具有以下结构的表; reportId: string (uuid) reportText: string isActive: boolean category: string 我希望能够完成以下search: 直接访问特定报告( reportId的主散列索引) 列出特定类别的报告(类别上的主要哈希索引) 这些都是直截了当的,但我想要执行另外两个查询; 列出所有标记为isActive = true的报告 列出标记为isActive = true的特定类别的所有报告 我的第一种方法是在isActive上创build一个主要的hashkey索引,并使用category ,但是我只能selectString , Number of Boolean作为键types。 存储isActive作为一个string(保存为“真”而不是布尔真)解决了这个问题,但它使用一个string可怕的布尔属性。 我错过了什么吗? 有一个简单的方法直接查询表的布尔值? 任何build议非常感激。 提前致谢。

如何在每次保存时使用Mongoose模式中的当前date更新属性?

在我的数据库集合中,每当使用当前date时间更新logging时,我想更新一个“lastChanged”字段。 我希望它与mongoose的默认date相同的格式,如: ISODate("2011-10-06T14: 01: 31.106Z") 任何智慧的话语?

Mongoose:populate()/ DBref或数据重复?

我有两个集合: 用户 上传 每个上传都有一个与之关联的User ,当查看Upload时,我需要知道他们的详细信息。 最好的做法是在Uploadslogging中复制这些数据,或者使用populate()从_id引用的Users集合中获取这些细节。 选项1 var UploadSchema = new Schema({ _id: { type: Schema.ObjectId }, _user: { type: Schema.ObjectId, ref: 'users'}, title: { type: String }, }); scheme2 var UploadSchema = new Schema({ _id: { type: Schema.ObjectId }, user: { name: { type: String }, email: { type: String }, avatar: { type: […]