王為軒
(湖北科技學(xué)院計算機科學(xué)與技術(shù)學(xué)院 湖北 咸寧 437100)
隨著科技的發(fā)展,人們對數(shù)據(jù)的需求逐漸增大,傳統(tǒng)的數(shù)據(jù)存儲技術(shù)已無法滿足人們的需求。分布式數(shù)據(jù)存儲技術(shù)的應(yīng)用范圍越來越廣泛,為人們提供了更加便利的數(shù)據(jù)存儲方式。但是分布式存儲數(shù)據(jù)技術(shù)的應(yīng)用也存在一定弊端,尤其體現(xiàn)在傳輸成本方面,還有一些額外的費用,這可能導(dǎo)致因距離或分布限制而產(chǎn)生額外的數(shù)據(jù)傳輸成本。這些額外的費用可以看作是使用分布式數(shù)據(jù)庫的障礙,而解決這一障礙的主要方法是在分布式數(shù)據(jù)庫中使用適當(dāng)?shù)臄?shù)據(jù)存儲技術(shù),這也是本文的重點[1-2]。
隨著物聯(lián)網(wǎng)、云計算技術(shù)在如今社會的全面應(yīng)用與發(fā)展,其處理數(shù)據(jù)體量也獲得了顯著提升,數(shù)據(jù)中心的規(guī)模冗余也勢必成為一個較為顯著的挑戰(zhàn)問題。例如,針對地理位置的挑選來說,以往的幾十年中,數(shù)據(jù)中心的選址歷經(jīng)了多個階段。而除了三大運營商之外,在其他行業(yè)也無法找到面積較大的機房場所。同時目前,各個行業(yè)的大型企業(yè)自行建設(shè)上千平方米的機房也較為常見。而數(shù)據(jù)中心規(guī)模的持續(xù)擴張,代表著業(yè)務(wù)高度集中,業(yè)務(wù)高度集中也會進一步催發(fā)運作風(fēng)險性的提升。伴隨著數(shù)據(jù)中心的擴張,其整體的運作壓力也在倍增,較大規(guī)模數(shù)據(jù)中心運營監(jiān)管系統(tǒng)的日常維護經(jīng)費也極為可觀。
傳統(tǒng)的數(shù)據(jù)中心在如今數(shù)據(jù)大爆炸的信息背景下已經(jīng)不適應(yīng)時代全面發(fā)展的需求。為了更好匹配全新技術(shù)的發(fā)展,全面應(yīng)用好大數(shù)據(jù)資源,推動全新數(shù)據(jù)中心建設(shè),為大數(shù)據(jù)應(yīng)用給予重要的環(huán)境支持,全新數(shù)據(jù)中心需要將注意力進一步放在數(shù)據(jù)計算方面。在立足于大數(shù)據(jù)與云計算的全新大數(shù)據(jù)中心建設(shè)之中,如何有效解決此項矛盾是探究的關(guān)鍵點。因為設(shè)施容量相對有限,傳統(tǒng)的集中式存儲數(shù)據(jù)模式勢必會逐步被更替,而分布式存儲系統(tǒng)因為其具有優(yōu)異的擴展性、高效性,無疑超越了傳統(tǒng)的集中式存儲技術(shù),以實現(xiàn)數(shù)據(jù)存儲的安全、穩(wěn)定。
分布式存儲是一種數(shù)據(jù)存儲技術(shù),它利用企業(yè)網(wǎng)絡(luò)中每臺計算機的存儲空間來創(chuàng)建這些分布式存儲資源的虛擬檔案,將數(shù)據(jù)存儲在企業(yè)的不同位置。分布式數(shù)據(jù)庫是分布式的,意味著數(shù)據(jù)存儲在多個地點,由子數(shù)據(jù)庫管理每個地點的本地數(shù)據(jù),這使得它們比傳統(tǒng)的集中式數(shù)據(jù)庫更容易管理。分布式存儲系統(tǒng),即數(shù)據(jù)存儲在多個獨立的設(shè)備上,比傳統(tǒng)的集中式數(shù)據(jù)庫要開放得多。傳統(tǒng)的網(wǎng)絡(luò)存儲系統(tǒng)使用中央服務(wù)器來存儲所有的數(shù)據(jù),這導(dǎo)致了系統(tǒng)性能的瓶頸、可靠性和安全性問題,并且不能滿足大型存儲應(yīng)用的需要[3]。分布式網(wǎng)絡(luò)存儲系統(tǒng)采用可擴展的系統(tǒng)結(jié)構(gòu),使用多個存儲服務(wù)器來分配存儲負載,并使用搜索服務(wù)器來檢索存儲的信息,這不僅提高了系統(tǒng)訪問的可靠性、可用性和性能,而且還有利于系統(tǒng)的擴展。
分布式數(shù)據(jù)庫的主要功能有:首先,分布式數(shù)據(jù)庫通常在物理上或邏輯上是獨立的,所以用戶在查詢和訪問分布式數(shù)據(jù)庫時不需要指定相關(guān)的鏈接或關(guān)系拷貝位置。此外,該系統(tǒng)必須在查詢成本、查詢的傳輸和執(zhí)行以及地點之間的數(shù)據(jù)訪問方面進行優(yōu)化。其次,分布式數(shù)據(jù)庫是原子化的,因此用戶在訪問分布式數(shù)據(jù)庫時,可以在不同的地方編輯數(shù)據(jù),包括本地和遠程。如果變更被拒絕,就不允許再進行變更。
數(shù)據(jù)存儲方式是指將分布在不同位置上的所有信息進行集中管理,并對其加以記錄、保存和傳輸。分布式數(shù)據(jù)的存儲方式主要包含以下幾種形式:(1)根據(jù)網(wǎng)絡(luò)拓撲結(jié)構(gòu)將數(shù)據(jù)信息進行分類后,選擇相應(yīng)的節(jié)點以及相應(yīng)的存儲設(shè)備,對信息進行加密處理,最后再傳輸至分布式文件系統(tǒng)中。(2)利用改善存儲機制中的結(jié)構(gòu),對數(shù)據(jù)進行保存。數(shù)據(jù)存儲指的是通過使用分布式存儲系統(tǒng),建立一個完整的數(shù)據(jù)庫,對信息進行處理后,將存儲到數(shù)據(jù)中不同位置上的信息加以記錄保存,使之成為分布式文件系統(tǒng)中重要組成部分,為用戶提供了強大而完善、可靠以及高效的服務(wù)。該存儲方式有著較強的靈活性,且存儲數(shù)據(jù)的性能較高,能夠滿足用戶對于信息處理速度和容量要求。(3)采用數(shù)據(jù)加密的形式對數(shù)據(jù)進行存儲,但是若需要存儲的數(shù)據(jù)量較大,不僅數(shù)據(jù)的安全性無法得到保證,且數(shù)據(jù)傳輸?shù)倪^程也比較緩慢,數(shù)據(jù)的完整性也得不到保障。通常情況下,這種數(shù)據(jù)存儲的方式只適合應(yīng)用于少量數(shù)據(jù)的存儲方面。
數(shù)據(jù)存儲方式主要有兩種類型,一是數(shù)據(jù)存儲類型,二是存儲系統(tǒng)對數(shù)據(jù)進行儲存的類型。從數(shù)據(jù)存儲類型而言,為了提高數(shù)據(jù)在存儲過程中的安全性,通常需要對修改數(shù)據(jù)本身后再進行數(shù)據(jù)的存儲。通常情況下,大部分數(shù)據(jù)存儲的方式都會利用數(shù)據(jù)加密技術(shù),利用數(shù)據(jù)加密技術(shù)來保證存儲的安全性,但是對于分布式存儲數(shù)據(jù)的處理上,則需要利用分布式文件系統(tǒng)、圖形加密技術(shù)以及服務(wù)器系統(tǒng)來對其進行有效的保護。數(shù)據(jù)存儲加密技術(shù)的安全性中等,當(dāng)有攻擊者對加密算法進行破壞時,就會對數(shù)據(jù)的完整性以及安全性造成破壞,或者是對數(shù)據(jù)信息進行篡改,造成數(shù)據(jù)丟失或者導(dǎo)致系統(tǒng)癱瘓。但是這種方式在傳統(tǒng)的數(shù)據(jù)加密技術(shù)的加密算法能力進一步加強,其對保存數(shù)據(jù)的保密方法也有了變化,并沒有對所要保存的數(shù)據(jù)進行保密,而只是對存放服務(wù)器的ID信息、IP地址以及數(shù)據(jù)存放路徑信息等進行了保密,而且加密的時間、保存的時間也大大減少,因此對數(shù)據(jù)的保存性能也大大提高了,被越來越多的使用者所認可。從存儲系統(tǒng)對數(shù)據(jù)進行儲存的類型來看,其可以進一步加強數(shù)據(jù)存儲的質(zhì)量,主要以網(wǎng)絡(luò)存儲數(shù)據(jù)為基礎(chǔ),利用圖論點著色法,根據(jù)數(shù)據(jù)的訪問時間以及安全性,對所存儲的數(shù)據(jù)進行加密,從而達到保護用戶信息安全、提高網(wǎng)絡(luò)傳輸速度和可靠性的目的。除此,在存儲系統(tǒng)中,此存儲類型通常分為存儲代理、數(shù)據(jù)存儲以及第三方審核幾個部分,從而形成一種層次結(jié)構(gòu),對數(shù)據(jù)的安全進行有效保障。
隨著信息技術(shù)的發(fā)展,出現(xiàn)了3種形式的分布式數(shù)據(jù)庫架構(gòu):客戶-服務(wù)器架構(gòu)、共享服務(wù)器架構(gòu)和中間件架構(gòu)。
(1)客戶-服務(wù)器體系結(jié)構(gòu)。這種類型的架構(gòu)由一個或多個客戶進程和一個或多個服務(wù)器進程組成,可以從任何使用中的服務(wù)器調(diào)用。客戶端進程的主要任務(wù)是與用戶互動,而服務(wù)器進程的主要任務(wù)是管理數(shù)據(jù)和處理客戶端進程。根據(jù)操作模式的不同,用戶進程可以在單個計算機上運行,但有些應(yīng)用程序必須在大型服務(wù)器上運行。
(2)協(xié)同服務(wù)器體系結(jié)構(gòu)??蛻舳?服務(wù)器架構(gòu)不允許向多個服務(wù)器單獨請求數(shù)據(jù),這使得客戶很難請求和訪問數(shù)據(jù),在某些情況下甚至無法將客戶和服務(wù)器分開。這導(dǎo)致了協(xié)作服務(wù)器架構(gòu)的發(fā)展,它可以用服務(wù)器到服務(wù)器的協(xié)作來取代客戶端-服務(wù)器的協(xié)作,以促進本地事務(wù)處理[4]。
(3)中間件體系結(jié)構(gòu)。這種類型的架構(gòu)支持多個服務(wù)器之間的查詢和數(shù)據(jù)訪問,并且不需要數(shù)據(jù)庫服務(wù)器。這種類型的架構(gòu)已被證明是數(shù)據(jù)處理的重要工具,但卻難以整合和擴展。
在如今大數(shù)據(jù)時代背景之下,數(shù)據(jù)的規(guī)模在進一步擴大,數(shù)據(jù)也變得更為復(fù)雜多樣,這也就意味著在分布式數(shù)據(jù)存儲的過程中,對系統(tǒng)的彈性提出了更高的要求。而系統(tǒng)彈性擴展技術(shù)是分布式存儲關(guān)鍵技術(shù)中的重要組成部分,該技術(shù)能夠有效提高存儲系統(tǒng)的擴展性,能夠有效解決分布式存儲數(shù)據(jù)過程中可能面對的原數(shù)據(jù)分布和透明的數(shù)據(jù)遷移的情況。系統(tǒng)必須能夠根據(jù)數(shù)據(jù)量和工作負荷來估計所需的節(jié)點數(shù)量,并在節(jié)點之間動態(tài)遷移數(shù)據(jù)。系統(tǒng)應(yīng)能在節(jié)點之間動態(tài)地傳輸數(shù)據(jù),以實現(xiàn)同步的負載平衡。在節(jié)點發(fā)生故障的情況下,應(yīng)能使用復(fù)制等機制來恢復(fù)數(shù)據(jù),而不影響更高級別的應(yīng)用[5]。
數(shù)據(jù)存儲系統(tǒng)應(yīng)從成本和容量的角度來考慮,所以數(shù)據(jù)存儲系統(tǒng)通常使用不同級別的存儲設(shè)備,具有不同的成本,形成一個數(shù)據(jù)存儲層次。有大量的數(shù)據(jù),通過利用存儲層次內(nèi)的優(yōu)化技術(shù),構(gòu)建不同的存儲層次,只有這些存儲層次具有有效性和合理性,并能夠在大量的數(shù)據(jù)中將這些數(shù)據(jù)有層次有效地進行分層次管理,可以確保在容量足夠的情況下,減少了相關(guān)設(shè)備的功能消耗,并且能夠降低相關(guān)的構(gòu)建系統(tǒng)的成本。存儲層次結(jié)構(gòu)還可以通過熱點數(shù)據(jù)和冷數(shù)據(jù)處理的方法進行結(jié)構(gòu)的優(yōu)化,能夠有效地進行存儲層級內(nèi)優(yōu)化技術(shù)的應(yīng)用。在節(jié)約成本方面,一種信息生命周期管理方法,即將數(shù)據(jù)以低延遲傳輸?shù)降统杀?、高速的存儲設(shè)備上,可以大大降低系統(tǒng)生產(chǎn)成本和功耗,而不會明顯降低整體系統(tǒng)性能。
在這個階段,在鏈接提取過程中,最頻繁使用的數(shù)據(jù)被儲存在本地,最頻繁使用的鏈接數(shù)據(jù)被復(fù)制并儲存在每個領(lǐng)域。在分布式數(shù)據(jù)庫中使用數(shù)據(jù)存儲技術(shù),主要可以從兩個方面來解決。
(1)劃分存儲。共享存儲是指將一個數(shù)據(jù)鏈路分割成較小的鏈路或部分,可以在每個地方存儲,以代替原始鏈路。一般來說,有兩種類型的分割關(guān)系:水平分割,即原始關(guān)系被分成若干部分,各部分不重疊,而且各部分的集合正好等于原始關(guān)系的子集之和;垂直分割,即每個部分是原始關(guān)系的無損分解,每個部分都有自己的唯一標(biāo)識符。當(dāng)然,如果原始關(guān)系有一個額外的身份屬性,它可以被添加到垂直分區(qū)中,但是必須注意確保分區(qū)是無損的。一般來說,關(guān)系可以在幾個層次上被拆分,即原始關(guān)系的部分可以進一步拆分,但重要的是,原始關(guān)系可以使用被拆分的部分重新創(chuàng)建。
(2)復(fù)制存儲。復(fù)制存儲是指對已保存的鏈接或部分已保存的鏈接的存儲,其中已保存的鏈接可以復(fù)制成多個版本的已保存的鏈接,并存儲在不同的位置,鏈接的部分也可以被存儲。例如,一個原始鏈接可以分成5個部分——A1、A2、A3、A4和A5,只有A1、A2和A3的兩個副本可以被存儲,而A4和A5的所有副本都可以存儲。目前,主要有兩種復(fù)制存儲的方法:同步復(fù)制存儲和異步復(fù)制存儲。這兩種復(fù)制存儲方法的區(qū)別在于,復(fù)制和更新之間必須有持續(xù)的關(guān)系。復(fù)制群主也存在著其自身獨有的優(yōu)勢,首先復(fù)制群主是以備份的數(shù)據(jù)存儲形式所使用的,相當(dāng)于一份數(shù)據(jù)存儲了兩份位置及具有較高的可用性,當(dāng)某一份數(shù)據(jù)無法使用時便可以使用備份數(shù)據(jù),通過拷貝和傳輸?shù)确绞娇梢缘玫搅硪环輸?shù)據(jù),這樣有效防止了數(shù)據(jù)丟失所導(dǎo)致的無法找回數(shù)據(jù)的情況的發(fā)生。此外,復(fù)制群主還可以將復(fù)制的數(shù)據(jù)與原始數(shù)據(jù)之間放置于不同的位置,可以通過副本取代等遠程方式的訪問形式,提高數(shù)據(jù)檢索的使用效率和速度,有效降低了相關(guān)成本費用的支出,復(fù)制群主具有一定的經(jīng)濟效益。
企業(yè)計算的逐步發(fā)展和互聯(lián)網(wǎng)的社會化以及云計算、物聯(lián)網(wǎng)和移動互聯(lián)網(wǎng)等衍生解決方案的廣泛采用,導(dǎo)致了世界上數(shù)據(jù)量的增加和類型的轉(zhuǎn)變。
隨著信息技術(shù)的發(fā)展,互聯(lián)網(wǎng)公司的增長,用戶數(shù)量和存儲空間的增加,數(shù)據(jù)量正在以驚人的速度增長。然而,存儲容量往往與整體存儲性能成反比。本文解決了傳統(tǒng)數(shù)據(jù)庫在管理大型數(shù)據(jù)集時存在的并發(fā)性低、可擴展性差和效率低的問題。本文著重于解決企業(yè)中不斷增加的數(shù)據(jù)量所引起的訪問性能問題,并為企業(yè)級存儲技術(shù)提供高并發(fā)、高可用性和高可擴展性的支持。
云計算是分布式和并行計算網(wǎng)絡(luò)的持續(xù)發(fā)展以及這些科學(xué)概念在實踐中的工業(yè)應(yīng)用。數(shù)字和互聯(lián)網(wǎng)技術(shù)的發(fā)展導(dǎo)致了數(shù)據(jù)量的指數(shù)級增長,造成了計算能力的相對短缺。為了滿足對計算能力的需求,需要更多的投資來建立具有更多計算能力的系統(tǒng)。
該措施可以解決與數(shù)據(jù)分析有關(guān)的問題,以提高存儲系統(tǒng)的低競爭力以及企業(yè)應(yīng)用中“大數(shù)據(jù)”的可擴展性、低存儲和可讀性。企業(yè)數(shù)據(jù)中心仍然主要使用集中式存儲設(shè)備,以FC-SAN為代表。缺點:同時讀寫大量數(shù)據(jù)的速度低,介質(zhì)容量有限,可擴展性低,制造、操作和維護成本高,對分布式系統(tǒng)有限制。
高效存儲和深度分析大數(shù)據(jù),提高商業(yè)價值和競爭力。NoSQL是關(guān)系型數(shù)據(jù)庫的統(tǒng)稱。在新時代背景下,傳統(tǒng)數(shù)據(jù)庫面臨著使用新的數(shù)據(jù)存儲方式的挑戰(zhàn),盡量減少數(shù)據(jù)交互,減少代碼編寫和調(diào)試,實現(xiàn)高效存儲和有效訪問大型數(shù)據(jù)集,同時開源和免費,降低業(yè)務(wù)成本。
NoSQL的主要特點:不需要預(yù)定義的模式,沒有通用的架構(gòu),靈活性和可擴展性,分區(qū),異步復(fù)制,BASE。
主要優(yōu)點:高效的數(shù)據(jù)庫配置,數(shù)據(jù)庫的可擴展性,低數(shù)據(jù)庫配置成本,靈活的數(shù)據(jù)模型。
大數(shù)據(jù)的集中式存儲模式已經(jīng)被提出,并正在演變成云服務(wù)的分布式存儲模式。分布式文件系統(tǒng)集中管理物理分布式存儲設(shè)備上的文件邏輯,從而改善數(shù)據(jù)共享、災(zāi)難恢復(fù)管理、訪問性能等。以往分布式存儲必須由多個專家來管理,導(dǎo)致額外的停機時間和人員成本,使用云存儲和通用資源管理界面的公司將有更多的標(biāo)準(zhǔn)化管理。隨著越來越多的公司擁有更多的公共和共享資源,一個開放的云存儲系統(tǒng)將是滿足這些需求的好方法,在公司網(wǎng)絡(luò)上使用云存儲時,可以暫時繞過互聯(lián)網(wǎng)。云存儲的高級安全和信任控制可以深入到云存儲的核心,檢查底層云存儲技術(shù)[6]。
綜上所述,隨著科技的發(fā)展,分布式數(shù)據(jù)庫正在逐步取代集中式數(shù)據(jù)庫。這種數(shù)據(jù)庫的轉(zhuǎn)變使得用戶在使用和訪問相關(guān)的數(shù)據(jù)過程中變得更加容易,但是伴隨著分布式數(shù)據(jù)庫的建立,同時也需要應(yīng)用到分布式存儲數(shù)據(jù)技術(shù),該技術(shù)的應(yīng)用,在未來必然被應(yīng)用于更多的領(lǐng)域,但是分布式存儲數(shù)據(jù)也會面臨額外的成本。本文通過對分布式存儲技術(shù)的應(yīng)用情況進行分析,希望能夠提高用戶訪問數(shù)據(jù)的速度,并減少因數(shù)據(jù)本地化而產(chǎn)生的額外數(shù)據(jù)消耗的成本,以供參考。根據(jù)上文的分析,分布式存儲數(shù)據(jù)技術(shù)的應(yīng)用范圍在逐步擴大,雖然其自身有一定的局限性,但是隨著技術(shù)的完善,其發(fā)展空間潛力巨大。