大數據數據庫技術簡介與分類分析

大數據生態

大數據數據庫技術簡介與分類分析

數據庫技術 傳統vs新型

從大的角度講,可以簡單的將數據庫分為兩類:

●傳統SMP架構的數據庫,主要指代的是傳統的關係型數據庫,例如DB2、Postgrel,MySQL等。

●新型數據庫,主要指代為支持大規模數量集,高併發要求,高可擴展性等孕育而生的新型數據庫。包括目前大數據生態當中主流MPP,NoSQL,NewSQL數據庫等

在這裡我還是要推薦下我自己建的大數據學習交流qq裙: 957205962, 裙 裡都是學大數據開發的,如果你正在學習大數據 ,小編歡迎你加入,大家都是軟件開發黨,不定期分享乾貨(只有大數據開發相關的),包括我自己整理的一份2018最新的大數據進階資料和高級開發教程,歡迎進階中和進想深入大數據的小夥伴

傳統數據庫和新型數據庫的一個主要區別是SMP架構VS分佈式/並行

數據庫理論基礎

理論基礎 - 服務器系統架構

●SMP(Symmetric Multi-Processor)

SMP是對稱多處理器結構的簡稱,指代多個CPU對稱工作,無主次或從屬關係。各個CPU共享相同的物理內存,每個CPU訪問內存中的任何地址的路徑是相同的(訪問的時間是相同的),因此SMP也被稱為一致存儲器訪問結構(UMA: Uniform Memory Access)。

●NUMA(Non-Uniform Memory Access)

NUMA是非對稱的多處理結構,剛好與SMP相對,多個CPU工作時,對內存的訪問路徑不同。NUMA架構的提出主要是解決SMP架構下多CPU擴展的問題。

●MPP(Massive Parallel Processing)

和NUMA不同,MPP提供了另一種進行系統擴展的方式。它由多個SMP服務器通過一定的節點互聯網絡進行連接,協同工作,完成相同的任務,從用戶的角度來看是一個服務器系統。

SMP和NUMA都主要指向單一的計算機系統,而MPP則有點集群的意思了

理論基礎 - ACID基本理論

●原子性(Atomic)

整個事務要麼成功,要麼失敗,杜絕部分成功

●一致性(Consistent)

事務的運行並不改變數據庫中數據的一致性。例如,完整約束了a+b=10,一個事務改變了a,那麼b也應該隨之改變

●獨立性(lsolated)

也稱作隔離性,指兩個以上的事務不會出現交錯執行的狀態,因為這樣不可能會導致數據不一致

●持久性(Durable)

事務執行成功以後,該事務所對數據庫做的更改便是持久的保存在數據庫之中,不會無緣無故的回滾

傳統基於關係模型的數據庫遵從ACID基本理論,而新型分佈式數據庫則並不完全遵從該理論

理論基礎 - 分佈式CAP理論

●一致性(Consistent)

即數據的⼀一致性,簡單的說就是數據複製到N臺機器,如果有更新,要N臺機器的數據一起更新

●可用性(Availability)

在集群中一部分節點故障後,集群整體還能響應客戶端的讀寫請求

●分區容錯性(Tolerance)

分區發生但不影響整個系統的運行

在這裡我還是要推薦下我自己建的大數據學習交流qq裙: 957205962, 裙 裡都是學大數據開發的,如果你正在學習大數據 ,小編歡迎你加入,大家都是軟件開發黨,不定期分享乾貨(只有大數據開發相關的),包括我自己整理的一份2018最新的大數據進階資料和高級開發教程,歡迎進階中和進想深入大數據的小夥伴

基於傳統關係型模型數據庫更關注CA,新型NoSQL數據庫更關心CP,AP


分享到:


相關文章: