[英]How to structure friend relation in cassandra
我目前在Cassandra中有一個用戶表。
我想創建一個朋友關系表,但是我不確定什么是最好的方法。 首先,我想把當前用戶作為鍵,將列作為朋友,但是我不希望實現發送朋友請求的功能,所以我認為應該有另一個對象被接受,它可以照顧兩個人是否是真正的朋友,或者說是真實的朋友。其他人是否接受了朋友的請求。 我認為這將是“多對多”表。 例如在友誼關系中。
Friendship: {
John Dow: {
10: Mark Seldon,
8: Julian Hendrix,
...
},
Mark Seldon: {
9: John Dow,
...
},
...
}
任何方向表示贊賞。
這似乎可以通過創建一個新表“ friends”來實現,在該表中您可以(例如)在CQL中使用“復合鍵” {userid,friendid}:
CREATE TABLE friends(
userid varchar,
friendid varchar,
PRIMARY KEY (userid, friendid)
);
這將定義兩個用戶之間的“友誼”關系(都在Users表中有一個條目)...這將允許您查詢以下幾件事:
這也意味着,無論何時存儲關系,都需要在表中創建兩個“條目”:{user1,user2}和{user2,user1} ...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.