5
在Cassandra中有大約2000萬行的表格。獲取Cassandra中的最後一條記錄
該表按primary_key
列排序,該列是一個字符串。我們使用'ByteOrderedPartitioner',所以行按primary_key
排序,而不是primary_key
列的散列。
什麼是獲得表中最後一條記錄的好方法?
非常感謝!
在Cassandra中有大約2000萬行的表格。獲取Cassandra中的最後一條記錄
該表按primary_key
列排序,該列是一個字符串。我們使用'ByteOrderedPartitioner',所以行按primary_key
排序,而不是primary_key
列的散列。
什麼是獲得表中最後一條記錄的好方法?
非常感謝!
如果對於「最後一條記錄」,您指的是最後一條記錄,我不認爲您可以像「GET」那樣執行它,您必須掃描行。您可以做的最好的,afaik,根據您的主鍵選擇一個很好的範圍來掃描(良好的開始鍵)。
從datastax文檔:
「使用有序分區允許有序掃描通過主鍵 這意味着你可以掃描行,就好像您是通過傳統的指數移動光標 例如,如果。你的應用程序的用戶 名稱作爲行鍵,你可以掃描行用戶的名字落在傑克和喬之間 。這種類型的查詢是不可能使用 隨機分配行鍵,因爲密鑰存儲在順序 其MD5哈希(不是按順序)。「
如果你找到更好的解決方案讓我知道。
問候, 卡羅
強烈建議您不要使用,因爲維護ByteOrderedPartitioner需要時您的數據分佈的變化,或者您擴展羣集。如果可能,應該更改數據模型,以便可以使用列範圍查詢。 – Richard