天天看點

大資料時代下的NoSql一、NoSql二、應用

      随着大資料時代的到來,我們的問題也就來了。海量的資料如何去處理,如何存儲,如何才能發揮出大資料的價值呢?在資料量越來越大的今天,傳統的關系型資料存儲已經滿足不了我們的需求,于是就誕生了非關系型資料庫NoSql。今天我們就來看看大資料的存儲NoSql.

一、NoSql

1、概念

      NoSQL(NoSQL = Not Only SQL ),意即”不僅僅是SQL”,泛指非關系型的資料庫。是一項全新的資料庫革命性運動。NoSQL的擁護者們提倡運用非關系型的資料存儲。大多數資料庫技術不能保證支援ACID(原子性、一緻性、隔離性和持久性),而且大部分技術都是開源項目,這些技術作為整體被稱為NoSQL。

2、CAP定理

      在計算機科學中, CAP定理(CAP theorem), 又被稱作 布魯爾定理(Brewer’s theorem), 它指出對于一個分布式計算系統來說,不可能同時滿足以下三點:
一緻性(Consistency) (所有節點在同一時間具有相同的資料)
           
可用性(Availability) (保證每個請求不管成功或者失敗都有響應)
           
分隔容忍(Partition tolerance) (系統中任意資訊的丢失或失敗不會影響系統的繼續運作)
           
  • CAP理論的核心
      一個分布式系統不可能同時很好的滿足一緻性,可用性和分區容錯性這三個需求,最多隻能同時較好的滿足兩個。是以,根據 CAP 原理将 NoSQL 資料庫分成了滿足 CA 原則、滿足 CP 原則和滿足 AP 原則三 大類:
CA - 單點叢集,滿足一緻性,可用性的系統,通常在可擴充性上不太強大。
           
CP - 滿足一緻性,分區容忍必的系統,通常性能不是特别高。
           
AP - 滿足可用性,分區容忍性的系統,通常可能對一緻性要求低一些。
           
大資料時代下的NoSql一、NoSql二、應用

3、優點

高可擴充性
           
分布式計算
           
低成本
           
架構的靈活性,半結構化資料
           
沒有複雜的關系
           

4、缺點

沒有标準化
           
有限的查詢功能(到目前為止)
           
最終一緻是不直覺的程式
           

二、應用

1、分類

大資料時代下的NoSql一、NoSql二、應用

2、與關系型資料比較

大資料時代下的NoSql一、NoSql二、應用

總結:

      在大資料時代來臨之季,我們了解一下非關系型資料庫是非常有必要的,尤其是掌握一兩個非關系型資料庫的應用,如redis和mongolDB等。接下來我們會開始非關系型資料庫的學習之路。