And*_*y B 10 database-design data-modeling key-value cassandra nosql
我希望有人可以帮我建议使用nosql数据库Apache Cassandra实现合适的数据模型.比我更需要它在高负载和大量数据下工作.
简化我有3种类型的对象:
产品:
key - string key
name - string
.... - some other fields
Run Code Online (Sandbox Code Playgroud)
标签:
key - string key
name - unique tag words
Run Code Online (Sandbox Code Playgroud)
ProductTag:
product_key - foreign key referring to product
tag_key - foreign key referring to tag
rating - this is rating of tag for this product
Run Code Online (Sandbox Code Playgroud)
每个产品可能有0个或多个标签.标签可以分配给1个或多个产品.意味着产品和标签之间的关系在关系数据库方面是多对多的.
"评级"的价值经常"非常"更新.
我需要运行以下查询
考虑到评级不断更新,最重要的是使这些查询在大量数据上非常快.
像这样的东西:
Products : { // Column Family
productA : { //Row key
name: 'The name of the product' // column
price: 33.55 // column
tags : 'fun, toy' // column
}
}
ProductTag : { // Column Family
fun : { //Row key
timeuuid_1 : productA // column
timeuuid_2 : productB // column
},
toy : { //Row key
timeuuid_3 : productA // column
}
}
Run Code Online (Sandbox Code Playgroud)
更新
检查此模型以存储最大分数