我是第一次在Firebase中开发一个应用程序,并且很好奇我应该如何在两个对象a user和a 之间建模数据post.我来自更多的关系数据库背景,不仅好奇这是如何在非关系数据库中完成的,而且特别是如何在Firebase中设置两个对象之间的关系.
例如,我的应用程序有很多用户,每个用户创建许多帖子.
User {
firstName: String,
lastname: String,
userName: String
}
Post {
title: String,
content: String,
date: Date,
writtenBy: [User object?]
}
Run Code Online (Sandbox Code Playgroud)
我应该如何在Firebase中构建这两个对象,以便帖子属于用户,但是无论用户如何都可以查询所有帖子,并且可以在不中断其他对象的数据和/或关系的情况下编辑用户和帖子对象?
我应该如何通过firebase创建新的"关系"对象:
sync.$set({userA: {
firstname: "Billy",
lastName: "Bob",
userName: "BillyBob",
Posts: {
// .....
}
}
});
Run Code Online (Sandbox Code Playgroud)
谢谢!
我正在寻找一个HBase shell命令,它将计算指定列族中的记录数.我知道我可以跑:
echo "scan 'table_name'" | hbase shell | grep column_family_name | wc -l
Run Code Online (Sandbox Code Playgroud)
但是这将比标准计数命令运行得慢得多:
count 'table_name' , CACHE => 50000 (because the use of the CACHE=>50000)
Run Code Online (Sandbox Code Playgroud)
更糟糕的是 - 它没有返回实际的记录数,而是返回指定列族中的单元格总数(如果我没有弄错?).我需要这样的东西:
count 'table_name' , CACHE => 50000 , {COLUMNS => 'column_family_name'}
Run Code Online (Sandbox Code Playgroud)
迈克尔,提前谢谢
经过多年与关系数据库的交易,我很自然 自在 被洗脑了标准化为考虑表,列和行.卡桑德拉仍然无法完全环绕它.
我更了解它的持久性地图,你只能查询这些地图的唯一键,但我的理解是不完整的.
是的,我是RTFM.不过,有人能给我一个很好的,简洁的描述Cassandra如何构建数据与SQL数据库吗?我的意思是,1000英尺的视图,它的工作原理有何不同?
例如,在Ebay技术博客上,它说:
不要想到关系表.
相反,请考虑嵌套的有序地图数据结构.资料来源:http://www.ebaytechblog.com/2012/07/16/cassandra-data-modeling-best-practices-part-1/
而我几乎完全得到它......但并不完全.
这些是一些很好的答案.添加了赏金,看它是否激励任何人做出更具权威性的回应.
给定mongoose架构
var SomeSchema = new Schema({
// ...
members: [
{
name: String,
username: String
}
]
});
Run Code Online (Sandbox Code Playgroud)
从我的代码我想推送对象,members但只有在数组中没有给定的用户名时.我怎么能用猫鼬做呢?
我试图将一个新字段插入到一个对象数组中
{
"_id": "543356fe0c9af6066e68970c",
"createdDate": "2014-10-06 07:59 pm",
"cancle": false,
"eventDate": "2014/12/12",
"eventstatus": true,
"location": "chennai",
"userId": "54310801e2659ecc3650100b",
"createdBy": "one",
"eventName": "tea ",
"__v": 0,
"friends": [
{
"userId": "54310814e2659ecc3650100c",
"userName": "two",
"phoneNumber": "22222222"
},
{
"userId": "54310945e2659ecc3650100d",
"userName": "three",
"phoneNumber": "33333333"
},
{
"userId": "54334def7e85de48638d1069",
"userName": "four",
"phoneNumber": "44444444"
}
]
}
Run Code Online (Sandbox Code Playgroud)
我想为friends数组中的所有对象添加"status":0
我尝试使用addtoset,push和多种方式,将其添加为friends数组中的新对象.
db.events.update({},{$push:{ "friends" : {"status" : 0} }},false,true)
db.events.update({},{$addToSet : {'friends' : $each: [{ 'status':0}]}},false,true)
Run Code Online (Sandbox Code Playgroud)
请让我知道我做错了什么.谢谢你的帮助
Cassandra 2.0节点之一因“打开文件太多”消息而崩溃。目前,我们已将http://www.datastax.com/docs/1.0/install/recommended_settings中指定的无文件限制设置为32768 。
由于我们仍然看到错误,因此我们应该增加它吗?生产推荐值是多少?增加此nofile限制会有任何副作用吗?是什么原因导致打开的文件增加?
提前致谢。
我在elasticsearch中有一个大型文档存储,并希望检索不同的过滤器值以便在HTML下拉列表中显示.
一个例子就是这样的
[
{
"name": "John Doe",
"deparments": [
{
"name": "Accounts"
},
{
"name": "Management"
}
]
},
{
"name": "Jane Smith",
"deparments": [
{
"name": "IT"
},
{
"name": "Management"
}
]
}
]
下拉列表应包含一系列部门,即IT,帐户和管理.
有些人请指出我正确的方向从弹性搜索中检索一个独特的部门列表?
谢谢
我试图查询我,mongodb但我不知道我的数据是哪一行所以我试图用参数查询这两行,这种语法是否正确?
db.table.find({groupA: data} || {groupB: data}, function(err, records)
Run Code Online (Sandbox Code Playgroud) 这是我的Neo4j主动节点
class User
include Neo4j::ActiveNode
has_many :out, :following, type: :following, model_class: 'User'
end
john = User.find(:name => "John")
tom = User.find(:name => "Tom")
# create following relationship john --> tom
john.following << tom
# check count
john.following.count
#=> 1
# again create the relationship
john.following << tom
# again check count
john.following.count
#=> 2
Run Code Online (Sandbox Code Playgroud)
我想创造独特的关系.
为避免重复,我们必须在创建关系密码查询时使用create unique.
例:
MATCH (root { name: 'root' })
CREATE UNIQUE (root)-[:LOVES]-(someone)
RETURN someone
Run Code Online (Sandbox Code Playgroud)
参考:http://neo4j.com/docs/stable/query-create-unique.html
我怎么能用Rails在Neo4j.rb中做到这一点......?
提前致谢..