follower/following 在卡桑德拉

follower/following in cassandra

我们正在用 Cassandra 设计一个类似 follower/following 的推特,发现了类似的东西

从这里开始https://www.slideshare.net/jaykumarpatel/cassandra-at-ebay-13920376/13-Data_Model_simplified_13

所以我认为 ItemLike 是 table? itemid1=>(userid1, userid2...) 是 table 中的一行? 你认为这个 ItemLike table 的 create table 是什么?

是的,ItemLike是一个table

ItemLike 的架构 table 将类似于:

CREATE TABLE itemlike(
    itemid bigint,
    userid bigint,
    timeuuid timeuuid,
    PRIMARY KEY(itemid, userid)
); 

幻灯片的图片就是上面table的内部结构。

让我们插入一些数据:

 itemid | userid | timeuuid
--------+--------+--------------------------------------
      2 |    100 | f172e3c0-67a6-11e7-8e08-371a840aa4bb
      2 |    103 | eaf31240-67a6-11e7-8e08-371a840aa4bb
      1 |    100 | d92f7e90-67a6-11e7-8e08-371a840aa4bb

在内部,cassandra 将存储如下数据:

--------------------------------------------------------------------------------------|
|    |             100:timeuuid              |            103:timeuuid                | 
|    +---------------------------------------+----------------------------------------|
|2   | f172e3c0-67a6-11e7-8e08-371a840aa4bb  |  eaf31240-67a6-11e7-8e08-371a840aa4bb  |
--------------------------------------------------------------------------------------|

---------------------------------------------|
|    |             100:timeuuid              |
|    +---------------------------------------|
|1   | d92f7e90-67a6-11e7-8e08-371a840aa4bb  |
---------------------------------------------|