李祖華 吳嵩
摘要:隨著科技的迅速發展,信息化時代、大數據時代已經到來,數據的使用范圍在不斷擴大,數據的功能也在不斷擴展。近年來,分布式數據庫開始出現,分布式數據庫的出現更好的滿足了用戶的信息處理需求,推動了社會的進步和發展。但分布式數據庫在使用的過程中需要關聯較多的儲存場地,在使用遠程場地中儲存的數據時往往要付出額外的代價,因而現階段急需尋找新的數據儲存技術來減小此代價。本文正是以此為背景,闡述了分布式數據庫的概念,分析了分布式數據的體系結構,探討了分布式數據庫中的數據儲存技術。
關鍵詞:數據儲存技術;分布式數據庫;應用
傳統數據庫大都是集中式的,但隨著科技的發展以及人們對數據需求的增加,傳統的集中式數據庫已不能滿足人們對數據使用的需求。現階段人們開始采用分布式數據可進行數據處理,該類型數據庫的使用方便了人們對數據的使用,但該類型的數據庫中,其關系分別儲存在不同的場地,因而在數據的傳輸過程中可能會因傳輸距離的增加或分布式的制約而導致額外的代價。就目前而言,可以說該額外代價就是制約分布式數據庫使用的瓶頸,而解決這一瓶頸的根本措施就是在分布式數據庫中使用合理的數據儲存技術,本文也正是以此為研究背景展開探討。
1 分布式數據庫的概念
分布式數據庫其數據的儲存是分布的,即數據儲存于多個場地內,在每個數據儲存場地內都有子數據庫對本地數據進行著管理,因而其數據的透明度要比傳統的集中式數據庫高很多。筆者認為,分布式數據庫主要有以下特點:
一是分布式數據庫具有很強的獨立性,從物理或邏輯的角度來說,用戶在對分布式數據庫進行數據查詢和使用的過程中不需要提供相應的關系或關系副本的儲存地點。此外,對于多個場地數據的查詢和使用,系統應對查詢代價、通訊代價以及執行代價進行優化。
二是分布式數據庫具有一定的原子性,用戶在分布式數據庫的使用過程中可以對各場地的數據進行修改,無論是本地還是異地。此外,假若修改數據時提交的事務被取消,那么將不再允許做出任何修改。
2 分布式數據的體系結構
隨著信息化的不斷發展,現階段已經出現三種形式的分布式數據庫體系結構,即客戶/服務器體系結構、協同服務器體系結構以及中間件體系結構。筆者將對這三種體系結構展開簡要分析:
(1)客戶/服務器體系結構。該類型的體系結構包含著一至多個客戶進程以及一至多個服務器進程,客戶進程在使用的過程中可以通過任何一個服務器進行查詢??蛻暨M程的主要作用是實現與用戶的交互,服務器進程的主要作用是數據管理以及客戶進程的處理。基于其工作原理,用戶進程可以通過個人計算機實現,而提交的查詢任務則需要借助大型服務器執行。
(2)協同服務器體系結構。由于客戶/服務器體系結構不能對涉及多個服務器的數據進行單個查詢,因而客戶在數據查詢和使用時會十分困難,甚至在一些情況下不能區分客戶和服務器?;谶@樣的情況,現階段研發了協同服務器體系結構,該體系結構可以借助協同服務器來代替客戶/服務器,從而使得本地事務的處理變得方便。
(3)中間件體系結構。該類型的體系結構支持涉及多個服務器的數據的查詢和使用,而且對數據庫服務器的要求也不是很高。事實也證明,該類型的體系結構在處理很難集成擴展的數據方面發揮著不可取代的作用。
3 分布式數據庫中的數據儲存技術
分布式數據庫在方便人們數據查詢和使用的同時也會帶來一定的額外傳輸代價,現階段為減小額外的傳輸代價大都在關系的精細分片儲存過程中將使用頻率較高的數據儲存于本地,將使用頻率極高的關系數據復制并儲存在各分場地。筆者認為,在分布式數據庫中的數據儲存技術應用主要體現在兩個方面:
(1)劃分儲存。所謂的劃分儲存就是將數據關系分割開來,將整體的關系分割成若干個小的關系或小的分片,而這些小的分片可以在一定程度上替代原先的整體關系儲存在各場地之中。通常來說,關系的劃分有兩類:一是水平劃分,水平劃分是將原始關系一部分一部分的分離出來,各分片之間沒有交集并且各分片的集合正好是原始關系的子集和;二是垂直劃分,垂直劃分要求各分片是原始關系的無損連接分解,劃分的過程中要保證每個分片都有自己的唯一標識屬性。當然,原始關系中有額外的標識屬性時可以將這個屬性添加到垂直分片中去,但是要保證該分解是一種無損的分解。通常來說一個關系可以進行多個層次的劃分,即原始關系劃分出的分片還可以進一步的劃分,但務必要保證可以借助劃分后的分片恢復原始關系。
(2)復制儲存。復制儲存是對儲存關系的儲存或者是儲存關系分片的儲存,通過儲存可以將一個儲存關系復制成多個不同版本的儲存關系并保留在不同的場地,關系分片的儲存也是如此。舉例來說,一個原始關系可以劃分為A1、A2、A3、A4、A5五個分片,在儲存的過程中可以僅對A1進行儲存,對A2、A3進行兩個副本的儲存,對A4、A5進行所有場地副本的儲存。就目前而言,主要有兩種復制儲存技術,一是同步復制儲存技術,二是異步復制儲存技術,這兩種復制儲存技術的區別在于是否需要保持副本和更新關系的一致。
此外,對數據的復制儲存還具有以下作用:一是可以增強數據的可用性,由于復制過的數據儲存有多個備份,因而在數據的查詢和使用過程中假如一個場地的數據失效,我們可以借助另外的場地進行數據的查詢和使用,同時借助本地提供的遠程數據副本還可以避免因網絡故障而造成數據訪問失敗。二是數據的復制和儲存可以使數據盡可能的本地化,可以借助本地副本取代遠程訪問從而在很大程度上提高數據的查詢和使用速度,減小了分布式數據庫使用中的額外代價。
4 結語
隨著科技的發展,分布式數據庫開始逐漸取代集中式數據庫,極大的方便了人們對數據的查詢和使用。但由于分布式數據庫數據儲存場地的原因導致分布式數據庫在使用的過程中會造成一定的額外代價。本文介紹了兩種主要的數據儲存技術,這兩種數據儲存技術可以提高用戶的數據訪問速度,因而可以減小數據使用因場地原因造成的額外代價。本文作為一篇參考性的文章,希望對分布式數據庫更好的發展和建設有一定的指導作用。
參考文獻:
[1]鄭振楣,于戈,郭敏.分布式數據庫.北京:科學出版社,1998.
[2]信息管理系列委員會.分布式數據庫.北京:中國人民大學出版社,2007.
[3]李紅主.數據庫原理與應用.北京:高等教育出版社,2003(2).
[4]劉方鑫.數據庫系統原理與技術.北京:電子工業出版社,2005.
基金:本文獲得核高基項目基金(2015ZX01040201)資助