关于 Cassandra,我有一点不明白。比如说,我有一个类似于 Facebook 的网站,人们可以在其中分享、点赞、评论、上传图片等。
现在,假设我想获得我朋友所做的所有事情:
- Username1 喜欢你的评论
- 用户名 2 更新了他的头像
等等。
因此,经过大量阅读,我想我需要做的是为每一件事创建新的列族,例如:user_likes
user_comments
, user_shares
. 基本上,你能想到的任何事情,即使在我这样做之后,我仍然需要为大多数列创建二级索引,以便我可以搜索数据?即便如此,我怎么知道哪些用户是我的朋友?我是否需要先获取所有朋友的 id,然后为每个用户 id 搜索所有这些 Column Families?
编辑 好的,所以我做了更多的阅读,现在我对事情的理解更好了,但我仍然无法真正弄清楚如何构建我的表格,所以我会设置一个赏金,我想得到一个清楚的例子来说明我的如果我想以这种顺序存储和检索数据,表应该看起来像:
- 全部
- 喜欢
- 评论
- 收藏夹
- 下载
- 分享
- 留言
所以假设我想检索我所有朋友或我关注的人的最后十个上传文件,这就是它的样子:
John uploaded song AC/DC - Back in Black 10 mins ago
评论和分享之类的每件事都与此类似...
现在最大的挑战可能是一起检索所有类别的最后 10 个东西,所以列表将是所有东西的混合......
现在我不需要一个完整详细的表格的答案,我只需要一些非常清晰的例子来说明我将如何像我一样构建和检索mysql
数据joins