nosql使用感受

2022-07-20 14:24:13 字數 803 閱讀 9885

最近乙個專案嘗試了使用ssdb(乙個類似於redis的資料結構資料庫),主要感受有幾點:

nosql的無模式在修改和插入時很方便,不需要預先新建表或者修改表結構來新加欄位,只需要**裡面使用就行。

nosql的速度非常快,而且一般有自動過期機制,而一般web伺服器都是無狀態的,用nosql作快取來配合極其方便,這也是大部分的使用場景。

架設簡單,協議也非常簡單,可以自己很輕易的寫乙個客戶端。

提供的一些資料結構,可以極大的簡化一些常見需求的實現(如排行榜)。

沒有sql語句,提供的客戶端工具只支援簡單的單個指令執行。這導致了幾乎任何乙個分析或者修改的需求,都需要寫程式來實現。

沒有模式,很多批量修改的場景只能用遍歷判斷來代替。

某些實現(如ssdb)為了實現簡便,對返回資料的大小有限制,這導致了遍歷還必須分段進行,結合1、2,進一步增加了統計分析的工作量和難度。

沒有事務和鎖支援,在某些場景下使用存在問題(redis有乙個簡單的佇列事務支援)。我利用setnx實現了乙個樂觀鎖,用incr指令代替了大部分的set指令來實現原子加/減,但事務在很多嚴謹的情況下還是必要的。

沒有redo log,不能按時間點備份或回檔,只能全量備份。

總結:nosql非常適合快取這種純粹的kv儲存(尤其是不需要遍歷的場景),也比較適合一些頻繁修改的實時應用,和一些特殊的場景(如排行榜),但不利於統計分析和修改。因此可以考慮把nosql只用於快取,或者用於儲存的同時,在寫入資料時同時把統計資料寫到乙個rds中,以便在之後利用強大的sql語句來做統計分析。

MACOS macbook pro使用感受

用macbook pro兩個星期了。對於os x並不是很熟悉 至少很多快捷鍵我還是不太清楚,也懶得記了 由於是從 ubuntu轉過來的,所以對unix環境還是比較熟悉的。更重要的是linux的經驗讓我不會做出諸如在macbook上面裝windows作為主係 統,或者想方設法在mac os x上面跑迅...

為什麼使用nosql

工作中遇到的挑戰 1,高併發讀寫 web2.0 資料庫併發負載非常高,往往達到每秒上萬次的讀寫請求 2,高容量儲存和高效儲存 web2.0 通常需要在後台資料庫中儲存海量資料,如何儲存海量資料並進行高效的查詢往往是乙個挑戰 3,高擴充套件性和高可用性 隨著系統的使用者量和訪問量與日俱增,需要資料庫能...

XWindow使用及感受

是不是你也和我一樣一直在困惑xwindow到底是怎麼來執行的?到底那個是伺服器,那個是客戶端?怎麼越來越搞不明白了?ok,不用先弄明白,跟我來,自己動手做一遍之後這些概念你就都可以明白了 首先在你需要有一台linux機器,現在虛擬機器程式這麼多,你怎麼都該在你的windows中分出來一塊給linux...