標籤:
NoSQL(NoSQL=Not Only SQL),意為SQL運動,是一項全新的資料庫革命性運動,早期就有人提出,發展至2009年趨勢越發高漲,它指的是非關係型的資料庫,隨著互連網Web2.0網站的興起,傳統的關聯式資料庫在應付Web2.0網站,特別是超大規模和高並發的SNS類型的Web2.0純動態網站已經顯得力不從心,暴露了很多難以克服的問題,而非關係型的資料庫則由於其本身的特點得到了非常迅速的發展。
NoSQL是以key-value形式儲存,和傳統的關係型資料庫不一樣,不一定遵守傳統資料庫的一些基本要求比如說遵守SQL標準、ACID屬性、表結構等等,這類資料庫主要有以下特點:非關係型的、分布式的、開源的、水平可擴充的。
NoSQL特點
1.處理超大量的資料
2.運行在便宜的PC伺服器叢集上
3.擊碎了效能瓶頸
NoSQL適用情境
1.對資料高並發讀寫
2.對海量資料的高效儲存和訪問
3.對資料的高可擴充性和高可用性
------------------------------------------------------這裡是華麗的分割線-----------------------------------------------------------
NoSQL的代表Redis介紹
官網介紹:
Redis is an open source, BSD licensed, advanced key-value cache and store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets, sorted sets, bitmaps and hyperloglogs.
看不懂沒關係(嘻嘻^_^)
Redis是一個開源的,BSD認證、先進的key-value儲存。它通常被稱為資料結構伺服器,因為鍵可以包含字串,雜湊,鏈表,集合、有序集合、位元影像和計數器。
Redis是一個Key-Value儲存系統。它支援儲存的value類型很多,包括string(字串)list(鏈表)、set(集合)、zset(有序集合)這些資料類型都支援push/pop、add/remove及取交集和並集及更豐富的操作,Redis支援各種不同方式的排序,為了保證效率,資料都是緩衝在記憶體中它也可以周期性的把更新的資料寫入磁碟或者把修改操作寫入追加的記錄檔案
新浪是全球最大的Redis使用者
用法一:應用程式直接存取Redis伺服器
用法二:應用程式直接存取Redis,只有當Redis訪問失敗時才訪問MySQL
Redis適用情境:
1.取最新N個資料的操作
2.熱門排行榜應用,取TOP N操作
3.需要精確設定到期時間的應用
4.計數器應用
5.Uniq操作,擷取某段時間所有資料排重值
6.即時系統,反垃圾系統
7.Pub/Sub構建即時訊息系統
8.構建隊列系統
9.緩衝
Redis MySQL和MongoDB區別
Redis和MongoDB沒有欄位,MySQL有
MongoDB是集合、MySQL表、Redis沒有
Redis學習(1)-NoSQL的介紹