主流的nosql產品
redis是一款高效能的nosql系列的非關係型資料庫
nosql(nosql = not only sql),意即「不僅僅是sql」,是一項全新的資料庫理念,泛指非關係型的資料庫。
隨著網際網路web2.0**的興起,傳統的關聯式資料庫在應付web2.0**,特別是超大規模和高併發的sns型別的web2.0純動態**已經顯得力不從心,暴露了很多難以克服的問題,而非關係型的資料庫則由於其本身的特點得到了非常迅速的發展。nosql資料庫的產生就是為了解決大規模資料集合多重資料種類帶來的挑戰,尤其是大資料應用難題。
1)效能nosql是基於鍵值對的,可以想象成表中的主鍵和值的對應關係,而且不需要經過sql層的解析,所以效能非常高。
2)可擴充套件性同樣也是因為基於鍵值對,資料之間沒有耦合性,所以非常容易水平擴充套件。
1)複雜查詢可以用sql語句方便的在乙個表以及多個表之間做非常複雜的資料查詢。
2)事務支援使得對於安全效能很高的資料訪問要求得以實現。對於這兩類資料庫,對方的優勢就是自己的弱勢,反之亦然。
關係型資料庫與nosql資料庫並非對立而是互補的關係,即通常情況下使用關係型資料庫,在適合使用nosql的時候使用nosql資料庫,
讓nosql資料庫對關係型資料庫的不足進行彌補。
一般會將資料儲存在關係型資料庫中,在nosql資料庫中備份儲存關係型資料庫的資料
典型應用: 內容快取,主要用於處理大量資料的高訪問負載。
資料模型: 一系列鍵值對
優勢: 快速查詢
劣勢: 儲存的資料缺少結構化
典型應用:分布式的檔案系統
資料模型:以列簇式儲存,將同一列資料存在一起
優勢:查詢速度快,可擴充套件性強,更容易進行分布式擴充套件
劣勢:功能相對侷限
典型應用:web應用(與key-value類似,value是結構化的)
資料模型: 一系列鍵值對
優勢:資料結構要求不嚴格
劣勢: 查詢效能不高,而且缺乏統一的查詢語法
Redis入門 Nosql概述
1 單機mysql時代 90年代,乙個 的訪問量一般不會太大,單個資料庫完全夠用。隨著使用者增多,出現以下問題 資料量增加到一定程度,單機資料庫就放不下了 資料的索引 b tree 乙個機器記憶體也存放不下 訪問量變大後 讀寫混合 一台伺服器承受不住。2 memcached 快取 mysql 垂直拆...
Nosql資料庫概述
nosql資料庫簡稱非關係型資料庫,not only sql 那麼nosql資料庫有什麼特點呢?1.易擴充套件 nosql資料庫種類很多,但是有乙個共同的特點是都去掉了關係型資料庫的關係型特性 資料之間無關係,這樣就很容易擴充套件,也在架構的層面帶來了可擴充套件的能力 2.大資料量高效能 nosql...
Redis學習(一) nosql概述
單機mysql時代資料量太大,乙個機器放不下了 資料的索引,乙個機器記憶體也放不下 訪問量 讀寫混合 乙個伺服器承受不了 只要你開始出現以上情況之一,那麼你就必須要晉級!memcahced 快取 mysql 垂直拆分 80 的情況是在讀,每次要去查資料庫的話就十分麻煩,所以我們希望減輕資料庫的壓力,...