我知道Twissandra这是一个使用Cassandra的示例twitter克隆但我有兴趣看看是否有人共享Cassandra架构不是为了克隆Twitter而是用于存储通过Twitter Streaming API发送的推文? / p>
答案 0 :(得分:6)
这很大程度上取决于您在摄取数据后要对数据进行哪种查询 - 我从您之前的问题“倾倒Twitter流媒体API推文......”中看到,您可能只想进行大批量处理它
如果是这种情况,您只需要担心负载平衡,确保集群中的每个节点处理写入负载的1 / n,并包含1 / n的数据 - 使用随机分区并插入一个每个推文的行以状态ID作为行键将实现此目的。
但是,如果您想进行“为给定用户提供所有推文”等查询,则需要稍微复杂的架构,因为上面建议的架构需要您扫描所有数据。您可以在每行插入多条推文,行键是userid,列键是tweet id,值是推文。然后你可以使用get_slice来回答该查询。
一篇好的(有点相关的)博文:http://blog.insidesystems.net/basic-time-series-with-cassandra