大數據存儲和管理髮展過程中出現的四類大數據存儲和管理數據庫系統(參考《大數據挑戰與NoSQL數據庫技術》)。
一、並行數據庫
並行數據庫是指那些在無共享的體系結構中進行數據操作的數據庫系統。這些系統大部分採用了關係數據庫模型並且支持SQL語句查詢,但爲了能夠並行執行SQL的查詢操作,系統中採用了兩個關鍵技術:關係表的水平劃分和SQL查詢的分區執行。
水平劃分的主要思想是:根據某種策略將關係表中的元組分佈到集羣中的不同節點上,這些節點上的表結構是一樣的,這樣就可以對元組並行處理。(現有分區策略:哈希分區、範圍分區、循環分區)
優點:高性能和高可用性。通過多個節點並行執行數據庫任務,提高整個數據庫系統的性能和可用性。
缺點:1.沒有較好的彈性。這對中小型企業有利,但當數據需要轉移時,代價大,會導致某段時間內不可訪問。2.容錯性差。
二、NoSQL數據管理系統
NoSQL系統普遍採用的一些技術:
1.簡單數據模型。不支持外鍵和跨記錄的關係,一次獲取單個記錄的約束極大地增強了系統的可擴展性,可以在單臺機器中執行,沒有分佈式事務的開銷。
2.元數據和應用數據的分離。
3.弱一致性。
優點:
1.避免不必要的複雜性。
2.高吞吐量。
3.高水平擴展能力和低端硬件集羣。可以很好地進行水平擴展。
4.避免了昂貴的對象--關係映射。避免了數據庫中關係模型和程序中對象模型相互轉化的代價。
缺點:
1.數據模型和查詢語言沒有經過數學驗證。導致NoSQL較爲混亂。
2.不支持ACID特徵。
3.功能簡單。
4.沒有統一的查詢模型。NoSQL系統一般提供不同查詢模型,這一定程度上增加了開發者的負擔。
三、NewSQL數據管理系統
特點:可擴展、高性能。1.取消了耗費資源的緩衝池,在內存中運行整個數據庫。2.放棄了單線程服務的鎖機制,也通過使用冗餘機器來實現複製和故障恢復,取代原有的昂貴的恢復系統。
四、雲數據管理
雲數據管理指的是“數據庫即服務”,用戶無須在本機安裝數據庫管理軟件,也不需要搭建自己的數據管理集羣,而只需要使用服務提供商提供的數據庫服務。
優點:
1.透明性。用戶不用考慮服務實現所使用的軟硬件問題,利用接口就可使用服務。
2.可伸縮性。用戶可以根據自己的需求申請各種資源。
3.高性價比。節約了硬件費用和軟件版權費用。
缺點:用戶隱私和安全問題、服務可靠性問題、服務質量保證問題。