我在我的Ubuntu 13.04安装MondoDB,并试图通过在任一输入运行其后台程序mongod或sudo mongod,但我遇到了以下信息:
mongod --help for help and startup options
Thu Jun 27 05:11:02 [initandlisten] MongoDB starting : pid=11685 port=27017 dbpath=/data/db/ 64-bit host=myhost
Thu Jun 27 05:11:02 [initandlisten] db version v2.2.4, pdfile version 4.5
Thu Jun 27 05:11:02 [initandlisten] git version: nogitversion
Thu Jun 27 05:11:02 [initandlisten] build info: Linux batsu 3.2.0-37-generic #58-Ubuntu SMP Thu Jan 24 15:28:10 UTC 2013 x86_64 BOOST_LIB_VERSION=1_49
Thu Jun 27 05:11:02 [initandlisten] options: {}
Thu Jun 27 05:11:02 [initandlisten] journal dir=/data/db/journal …Run Code Online (Sandbox Code Playgroud) 我一直在网上寻找一段时间,一般来说,什么是CRUD(创建,删除,更新,删除)cassandra集群/密钥空间/列系列和列的最佳方法是什么?
有很多框架和驱动程序和api(节俭,hector,datastax驱动程序,cassandra sharp驱动程序,aquiles,fluentcassandra ...),我真的很困惑选择哪一个.
任何人都可以提供一份关于做这种事情的最佳方式的小简历/概述吗?
提前致谢
我正在使用一个生成对象的框架,Node他们已经分配了一个id.现在需要将它们转换为Titan顶点,并在框架中控制相同的ID(访问时node.id)
public long addNode(Node node) {
TitanVertex vertex = (TitanVertex) g.addVertex(null);
g.commit();
vertex.setProperty(ID, node.id);
vertex.setProperty(TYPE, node.type);
vertex.setProperty(VERSION, node.version);
vertex.setProperty(TIME, node.time);
vertex.setProperty(DATA, node.data);
...
Run Code Online (Sandbox Code Playgroud)
错误:
java.lang.IllegalArgumentException: Name is reserved: id
Run Code Online (Sandbox Code Playgroud)
但它似乎不允许它.我应该使用一些虚假财产来模仿二级身份证吗?泰坦有办法做到这一点吗?
谢谢!
我正在node.js和mongodb(mongoose模块)上编写一个大型社交网络.这意味着数据库中将有许多用户和大数据.
我已创建用户注册,现在我需要允许用户互相编写私人消息.
问题:
1)我应该如何存储有关发送私信的数据?我想过两种方法:
第一
var schemaUser = new mongoose.Schema({
i: Number,
...
message: { type: Schema.ObjectId, ref: 'Message' }
});
var schemaMessage = new mongoose.Schema({
m: [{
f: Number, // value i from schemaUser, means from user
m: String, // message
d: { type: Date, default: Date.now } // date
}]
});
module.exports = {
User: db.model('User', schemaUser),
Message: db.model('Message', schemaMessage)
}
Run Code Online (Sandbox Code Playgroud)
通过这种方式,每个用户都有message字段到Message表,其中只有一个集合m,其中数组存储所有消息.
第二
我存储在这样的Messages所有消息中:
var schemaMessage = new mongoose.Schema({
t: …Run Code Online (Sandbox Code Playgroud) 我打算使用RavenDB作为我的数据存储来构建单页面应用程序(SPA).
我想从SPA部分的ASP.NET Hot Towel模板开始.
我将删除EntityFramework/WebApi/Breeze组件,并用RavenDB替换存储和ServiceStack来构建后端API.
在RavenDB之上使用任何类型的存储库或其他抽象并且直接在控制器内部(在MVC应用程序中)使用RavenDB API时,大多数当前的观点似乎都不屑一顾
我假设我在使用Raven和ServiceStack时应该遵循同样的智慧,并直接在我的服务实现中对IDocumentSession进行调用.
我担心的是,通过遵循这条路径,我的服务实现似乎会变得相当臃肿.我似乎经常需要多次编写相同的代码,例如,如果我需要更新几个不同的Web服务端点中的用户文档.
我似乎也需要从我的应用程序的其他(未来)部分访问Raven.例如,我可能需要添加一个控制台应用程序,以便将来处理队列中的作业,而这部分应用程序可能需要访问Raven中的数据...但从一开始,我唯一的途径就是通过Raven Web服务API.我是否只打算从这个理论控制台应用程序调用web api?如果它们可能在同一硬件上运行,那么效率似乎很低.
任何人都可以提供有关如何在我的网络服务和其他地方有效利用Raven的建议,同时仍然遵循使用此文档存储的最佳实践?创建一个直接处理针对raven的调用的中间业务逻辑层似乎很实际......允许我的webservices调用此层中的方法.这有意义吗?
编辑
任何人都可以提供类似架构的最新样本吗?
我正在开发一个小应用程序,它将存储有关用户,帐户和交易的信息.用户将拥有许多帐户(可能少于10个),并且帐户将有许多交易(可能是1000个).阅读文档似乎表明嵌入如下是要走的路......
{
"username": "joe",
"accounts": [
{
"name": "account1",
"transactions": [
{
"date": "2013-08-06",
"desc": "transaction1",
"amount": "123.45"
},
{
"date": "2013-08-07",
"desc": "transaction2",
"amount": "123.45"
},
{
"date": "2013-08-08",
"desc": "transaction3",
"amount": "123.45"
}
]
},
{
"name": "account2",
"transactions": [
{
"date": "2013-08-06",
"desc": "transaction1",
"amount": "123.45"
},
{
"date": "2013-08-07",
"desc": "transaction2",
"amount": "123.45"
},
{
"date": "2013-08-08",
"desc": "transaction3",
"amount": "123.45"
}
]
}
]
}
Run Code Online (Sandbox Code Playgroud)
我的问题是......由于事务列表将在文档中增长到大约1000个,因此数据将变得支离破碎并降低性能.我是否更好地拥有一个文档来存储用户和不会增长的帐户,然后是一个单独的集合来存储引用帐户的事务.或者,还有更好的方法?
我正在开发一个网站(如果成功的话)它将拥有一个快速增长的数据库(可能是太字节或更多).到目前为止我一直使用sql server并且对nosql一无所知.我刚刚发现nosql正在研究数据库大小,现在我不确定它是否能满足我的需求.我将拥有与sql-server相同的功能吗?
我的问题可能看起来很傻,因为我是nosql中的新手,但我只是想知道它是否不支持sql查询.我们怎么能这样做:
select *, (select name from cities where id = cityid) from users
Run Code Online (Sandbox Code Playgroud)
如何加入表格?使用类似存储过程,视图或类似的东西?
我对MongoDb有点新,我使用的是MongoDb v.2.4.问题在于,当我使用--auth参数运行mongod时,即使在验证后我也无法执行简单的操作,例如"show users".但是如果我在没有--auth参数的情况下运行mongod,那么工作正常.
> use admin
switched to db admin
> db.auth("dbadmin","mypassword")
1
> show users
**Thu Feb 27 16:50:17.695 error: { "$err" : "not authorized for query on admin.sys
tem.users", "code" : 16550 } at src/mongo/shell/query.js:128**
Run Code Online (Sandbox Code Playgroud) 我正在寻找适合数据db的最佳方法,可以在产品/商店建议+产品订单项目中生成.
我提取了在这样一个项目中被操纵的主要实体.
经过这样的分析后,我发现我需要3个不同模型的不同数据库:Neo4j,DynamoDB,mongoDB,哪种奇怪.这个解决方案对你来说是好的还是你对这些任务有很好的建议(关系数据库也是可能的选择).
在我在MySQL数据库和应用程序之间有缓存的架构中.我遇到了数据一致性的问题,因为我的缓存时间超过20分钟,因为它是一个非常高的负载服务器.
我的问题是如果我使用noSql数据库,是否还需要一个缓存服务器?这个想法是应用层和数据库层之间的内存缓存.
考虑替代我当前的架构.