我想離開存儲訪問者的mysql在社交媒體應用程序中,並認爲cassandra會很好。如何獲得最新的20個獨特的東西
假設followign表:
CREATE TABLE visitors (
visiteduserid bigint,
visitinguserid bigint,
visitdate timestamp,
PRIMARY KEY (visiteduserid,visitinguserid)
);
我想獲得最新的20個獨特的visitinguserid對當前visiteduserid,但
SELECT visitinguserid FROM visitors WHERE visiteduserid=1 ORDER BY visitdate DESC LIMIT 20
Bad Request: Order by is currently only supported on the clustered columns of the PRIMARY KEY, got visitdate
我是正確的假設,我不能只是添加visitdate到主鍵,因爲我只想擁有單個用戶/用戶組合的最新訪問日期。最好的辦法是讓他們按訪問日期降序排序,如「Twitter克隆」演示文稿中所述...
任何幫助嗎?
Patric McFadin在cassandra峯會上介紹了時間序列和數據建模。看看[他的幻燈片](http://www.slideshare.net/planetcassandra/c-summit-2013-the-worlds-next-top-data-model-by-patrick-mcfadin),他們是一個優秀的資源,有一個「用戶活動」數據模型的例子,它幾乎是你想要的。 '也可以'您可以將'visitdate'添加到複合鍵上,然後按照您想要的方式進行分類。 –
目前版本的casssandra似乎不可能。 實施了一種解決方法,現在正在研究hbase。 –