分布式資料庫 是什麼,有哪些優缺點,實際應用如何呢?

時間 2021-05-06 23:39:45

1樓:NebulaGraph

分布式資料庫是用計算機網路將物理上分散的多個資料庫單元連線起來組成的乙個邏輯上統一的資料庫。分布式資料庫有乙個統一的資料庫管理系統來進行管理,稱為分布式資料庫管理系統。分布式資料庫具有靈活的體系結構,適應分布式的管理和控制,系統的可靠性高、效能好等優點。

目前包括文件資料庫,鍵值資料庫,列儲存資料庫和圖資料庫。

由於分布式資料庫的結構特性,根據分布式系統的 CAP 定理,對於乙個分布式計算系統來說,不可能同時滿足以下三點:一致性(所有節點訪問同乙份最新的資料副本),可用性(每次請求都能獲取到非錯的響應,但是不保證獲取的資料為最新資料),分割槽容錯性(系統如果不能在時限內達成資料一致性,就意味著發生了分割槽的情況,必須就當前操作在 C 和 A 之間做出選擇。)

2樓:「已登出」

分布式資料庫說白了是因為現在科技落後,導致硬體效能差,單台經濟划算的伺服器無法容納或及時處理業務所涉及的全部資料,才發明了方法,讓多台伺服器進行協作。

優點是能實現上述需求。缺點是速度慢,要不費錢要不可用性差。

3樓:雲師兄

1.分布式資料庫是資料庫的一種,是資料庫技術和網路技術的結合產物。

2.各有優點和缺點.分布式資料庫分為邏輯上分部物理上分布及邏輯上分布物理上集中兩種。

是的,分布式資料檔案便於資料庫的管理維護。

分布式資料庫系統通常使用較小的計算機系統,每台計算機可單獨放在乙個地方,每台計算機中都有DBMS的乙份完整拷貝副本,並具有自己區域性的資料庫,位於不同地點的許多計算機通過網路互相連線,共同組成乙個完整的、全域性的大型資料庫。

這種組織資料庫的方法克服了物理中心資料庫組織的弱點。

1、首先,降低了資料傳送代價,因為大多數的對資料庫的訪問操作都是針對區域性資料庫的,而不是對其他位置的資料庫訪問;

2、其次,系統的可靠性提高了很多,因為當網路出現故障時,仍然允許對區域性資料庫的操作,而且乙個位置的故障不影響其他位置的處理工作,只有當訪問出現故障位置的資料時,在某種程度上才受影響;

3、便於系統的擴充,增加乙個新的區域性資料庫,或在某個位置擴充一台適當的小型計算機,都很容易實現。然而有些功能要付出更高的代價;

例如,為了調配在幾個位置上的活動,事務管理的效能比在中心資料庫時花費更高,而且甚至抵消許多其他的優點。

分布式資料庫系統主要特點:

1.多數處理就地完成;

2.各地的計算機由資料通訊網路相聯絡。

3.克服了中心資料庫的弱點:降低了資料傳輸代價;

4. 提高了系統的可靠性,區域性系統發生故障,其他部分還可繼續工作;

5.各個資料庫的位置是透明的,方便系統的擴充;

6.為了協調整個系統的事務活動,事務管理的效能花費高;

資料分片

型別:(1)水平分片:按一定的條件把全域性關係的所有元組劃分成若干不相交的子集,每個子集為關係的乙個片段。

(2)垂直分片:把乙個全域性關係的屬性集分成若干子集,並在這些子集上作投影運算,每個投影稱為垂直分片。

(3)匯出分片:又稱為匯出水平分片,即水平分片的條件不是本關係屬性的條件,而是其他關係屬性的條件。

(4)混合分片:以上三種方法的混合。可以先水平分片再垂直分片,或先垂直分片再水平分片,或其他形式,但他們的結果是不相同的。

條件:(1)完備性條件:必須把全域性關係的所有資料對映到片段中,決不允許有屬於全域性關係的資料卻不屬於它的任何乙個片段。

(2)可重構條件:必須保證能夠由同乙個全域性關係的各個片段來重建該全域性關係。對於水平分片可用並操作重構全域性關係;對於垂直分片可用聯接操作重構全域性關係。

(3)不相交條件:要求乙個全域性關係被分割後所得的各個資料片段互不重疊(對垂直分片的主鍵除外)。

資料分配方式

(1)集中式:所有資料片段都安排在同乙個場地上。

(2)分割式:所有資料只有乙份,它被分割成若干邏輯片段,每個邏輯片段被指派在乙個特定的場地上。

(4)全複製式:資料在每個場地重複儲存。也就是每個場地上都有乙個完整的資料副本。

(5)混合式:這是一種介乎於分割式和全複製式之間的分配方式。

目前分布式資料庫分配的設計,越來越多的採用尋找最優解的演算法,比如遺傳演算法、退火機制等

分布式資料庫,如hadoop cassandra mysql集群,主流是採用什麼儲存技術,DAS NAS還是SAN?

如果簡單的回答題主的問題,那麼答案是DAS。除了MySQL以外,其他的都是經典的分布式系統。這些分布式系統通常假定任何裝置都是不可靠的,演算法上會對資料做冗餘儲存,因此對介質本身的要求相對較低,DAS即可。MySQL相對特殊。一般而言,如果用MySQL,題主要用的是關聯式資料庫,且資料一般是比較重要...

分布式資料庫計算引擎對分布式儲存系統底座提出了哪些新的技術挑戰?

lemon wonder 我說一下HTAP情況,對於資料庫,TP主要是事務相關,一般底層儲存引擎使用行存,對於AP是分析性,對事務要求沒那麼高,一般用列存,要處理HTAP,那要做到行列混合儲存就很困難。對於儲存引擎,一種是外掛程式型,向MySQL中,SQL和儲存約定好介面,實現介面並直接使用。但是要...

分布式資料庫如何解決儲存過程?

xchliu 這是個好問題。事實上,太多的系統使用儲存過程來實現業務場景了,雖然在網際網路不多,畢竟網際網路系統沒有歷史包袱。在傳統企業系統中,儲存過程改造問題是非常艱鉅的任務。於是才有了這個問題,也就是說分布式資料支援儲存過程,改造代價就會小很多。而從分布式資料庫實現的角度,變成了乙個選擇題 要不...