這部分在NoSQL精粹這本書的混合持久化到選擇合適的數據庫,即第13章到第15章描述的非常好。推薦大家閱讀下。
一個經典的使用場景是:在一個購物網站類似的系統中:
使用鍵值對數據庫來存儲購物車和會話數據,
使用文檔數據庫來存儲已完成的訂單
使用庫存及產品價格來存儲關係型數據庫,關係型數據庫在事務處理上面的優勢是其他數據庫不可比擬的
使用它圖數據庫來存儲客戶社交關係圖
補充自己的一點理解,列族數據庫也有自己的優點,如下描述(摘自別人的博客)
列存儲數據庫將數據儲存在列族(column family)中,一個列族存儲經常被一起查詢的相關數據。舉個例子,如果我們有一個Person類,我們通常會一起查詢他們的姓名和年齡而不是薪資。這種情況下,姓名和年齡就會被放入一個列族中,而薪資則在另一個列族中。
產品:Cassandra、HBase
有誰在使用:Ebay (Cassandra)、Instagram (Cassandra)、NASA (Cassandra)、Twitter (Cassandra and HBase)、Facebook (HBase)、Yahoo!(HBase)
1. 適用的場景
1) 日誌。因爲我們可以將數據儲存在不同的列中,每個應用程序可以將信息寫入自己的列族中。(日誌我覺得還是很適合用列族數據庫的這種存儲方式)
2) 博客平臺。我們儲存每個信息到不同的列族中。舉個例子,標籤可以儲存在一個,類別可以在一個,而文章則在另一個。(其實個人感覺,博客平臺使用文檔數據庫也很合適)