Cassandra 資料庫設計

2022-03-03 19:38:19 字數 842 閱讀 5796

cassandra 2.*

cql3.1

最近更新:2015-10-30

在cassandra中經常會發現,索引不夠用,不好用,各種不強大。

比如,我關注的人的需求uid + follow 作為主鍵,沒人覺得有什麼問題,但是檢視我關注的人的時候,需要用關注的時間排序,這就麻煩了。

目前我採用的乙個辦法是,再建立一張表儲存uid ,follow,time(關注日期)而這張表使用,uid + time作為主鍵,這樣就可以通過先查詢這張表來排序。

note: 唯一索引一定用主表實現,否非常不方便,因為主表經常要增刪改查,索引表主要是增、查、刪,幾乎不改。

到目前為止我所了解的cassandra排序,都需要基於主鍵,而主鍵是不允許update的,所以,如果你需要乙個可以編輯又可以排序的字段,

在處理資料的時候,需要先delete再insert。

由於timeuuid的唯一性,很多場合下,你需要按照時間排序,又希望主鍵具有唯一性的時候,可以使用timeuuid。

比如我的好友,按新增時間排序

create table user (

uid int,

create_time timeuuid,

friend_id int,

primary key(uid, create_time)

);--這樣,你可以使用uid + create_time進行刪除操作,而不用擔心刪錯資料,因為timeuuid是唯一的。同時,排序順序是按照create_time來進行的。

--而uid 和 friend_id的唯一性,你需要另建乙個表來處理。

關於cassandra資料庫

nosql資料庫 基於列的資料庫 高度可擴充套件的高效能分布式資料庫 cassandra的特點 1 彈性可擴充套件。2 始終基於架構,沒有單點故障。3 快速線性效能。4 靈活的資料儲存,支援結構化,半結構化和非結構化。5 便捷資料分發,多資料中心間複製資料。6 支援事務。7 快速寫入。cassand...

Docker資料庫應用 Cassandra

apache cassandra 是個開源 apache license 2.0 的分布式資料庫,支援分布式高可用資料儲存,可以提供跨資料中心的容錯能力其無單點故障,並通過非同步無主複製實現所有客戶端的低延遲操作。cassandra在設計上引入了p2p 技術,具備大規模可分割槽行儲存能力,並支援sp...

cassandra 非關聯式資料庫

url 目錄非關係型資料庫 cassandra 古希臘神話人物 cassandra展開 編輯本段 非關係型資料庫 cassandra 簡介cassandra是乙個混合型的非關係的資料庫,類似於google的bigtable。其主要功能比dynomite 分布式的key value儲存系統 更豐富,但...