黃根華
?
試論云計算環境下的大規模圖數據處理技術
黃根華
廣東省電信規劃設計院有限公司,廣東 廣州 510630
互聯網基礎建設和普及的時代已經過去,云計算的產生使得一個平臺多種應用成為可能。近年來,隨著網絡帶寬等網絡技術的發展,通過網絡訪問非本地計算服務的條件越來越成熟,對大規模數據的處理應用實踐,更加促進了云計算技術往更加廣闊的方向發展。研究的主要內容是云計算環境下的大規模圖數據處理技術及其在實際應用的意義,旨在通過構建基于云計算虛擬機集群來解決圖數據計算難題,提高大規模圖數據處理效率,促進云計算技術的發展和推廣。
云計算環境;處理技術;大規模圖數據
圖是互聯網計算中最常用的數據結構之一,相對于常見的諸如線性表類的數據結構,圖在語義和結構表達上更為復雜,表示能力更具有一般性,能夠高度模擬不斷演變的網絡模型。隨著互聯網技術的發展,互聯網業務日益豐富和多樣,對計算能力提出了更高的要求。與此同時大規模圖數據處理技術研究也發展到了一個更高的層次,基于云計算環境的圖數據處理是一個重要的研究方向,如何對大規模的圖數據進行高效處理,成為新的挑戰[1]。
云計算是指以互聯網核心技術為基礎,以非常必要的實際應用平臺為主要內容的一種應用程序。云計算具有通用性、虛擬化、經濟性、可擴展性等優勢。
云計算主要涉及三種技術。一是海量分布式存儲技術。這種存儲技術對應用中的重要數據以及信息具有強大的存儲功能,可以有效提高云計算存儲數據的質量和安全性。二是數據管理技術。對高速訪問和讀寫的數據實現精準的比較、分析、存儲管理,從而有效避免由于重要數據丟失影響應用的正常運行。三是并行編程模式技術。對于云計算中的各種應用服務對象,進行科學合理的編程,按照合理的優先級進行同步或異步響應,提高計算資源的利用率。
2.1 云計算環境下的圖數據存儲模型
在云計算的環境下,對于大規模圖數據的存儲,主要有超圖和單圖兩種數據模型。二者的差異主要體現在存儲的格式:一個是基于數據庫格式;一個是文件系統格式[2]。云計算環境下的大規模圖數據處理技術的存儲應用,主要是借助這兩種方式實現對重要數據或是信息的海量存儲,并在存儲的過程中實現對相關信息的安全維護。這兩種存儲方式都具有便捷、靈活的特點,可以較大程度地提高對數據信息的高效處理。
分布式文件和分布式數據庫兩種不同形式的存儲方式,適用不同的應用場景,同一場景下運行將出現兩種完全不同的應用結果。因此,在實際應用的過程中,為了盡可能地提高大規模圖數據處理效率,需要我們結合其相關數據圖形的特點,采取恰當的存儲格式進行相應的處理。大量實踐結果證明,一般情況下,分布式數據庫主要是用來對各種數據模型的存儲,分布式文件主要是對接表和臨接矩陣來進行存儲。
2.2 云計算環境下的分割圖數據
在實際應用中,為了進一步提高對圖數據的處理質量,需要對云計算環境下的圖數據進行必要的分割處理。簡單而言,需要進行以下步驟:首先,結合云計算集群中的大規模存儲工作節點,對具有復雜邏輯結構的圖進行分割處理;其次,對已經分割完的圖進行連通性與均衡性比較,以保證被分割的圖之間還可以實現相互之間聯通。通過以上兩個步驟反復執行,達到一定的均衡性指標之后,即可實現對大規模圖數據的分割到合理的水平。圖數據過大時,不同分割的子圖之間的計算處理會出現時間差,出現“木桶理論”的時間瓶頸,降低圖數據整理處理效率,影響到應用系統的正常運轉。通過對這種分割之后的圖數據處理,可以有效地避免大規模圖數據計算的不同子圖之間的時間差,從而提高圖數據整體處理效率。
2.3 云計算環境下的圖數據計算模型
云計算環境下的圖數據計算模型有兩種,分別是BSP模型和Map Reduce模型。其中BSP模型主要是保障云計算環境下的圖數據之間通信,高效及時的通信機制可以避免計算機運行系統出現鎖死。Map Reduce模型是多個Reduce、Map組成的共同體,以實現多個共同體可以并行的對數據信息的并行處理,確保云計算環境下的大規模圖數據的處理效率。通常的處理流程如下:首先,通過Reduce對接受到的實際數據進行聚集處理,對分布式文件中的相關數據進行保存,得到輸出的結果;其次,借助Map階段,實現對數據的分析計算,并進行統一的資源分配。通過計算得到相對應的Key值,之后在使其與之相對應的數據信息在Reduce任務中進行映射[3]。
2.4 云計算環境下的圖數據查詢處理
在現階段的云計算環境下,有兩種模式可以支持大規模圖數據驅動:一種是以圖頂點驅動的主動遍歷模式;另一種是與之相反的以消息驅動的被動式遍歷模式。這兩種模式僅僅是驅動對象不同,應用操作對象都是圖頂點。因此,在查詢處理圖數據過程中,圖頂點的維護有著至關重要的作用。對二者的優缺點進行比較,主動遍歷模式的優點在于應用性強,可以支持所有的圖應用場景,但明顯的缺點是會出現較大程度的資源浪費;被動便利模式在不調動處理函數的情況下,可以有效地降低不必要節點,避免資源的浪費。
2.5 云計算環境下的圖數據容錯管理
在云計算環境下,大規模圖數據持續時間長,由于云平臺硬件性能普遍較低,單個節點出現故障的概率高,出錯重新處理的代價非常大,因此容錯機制必不可少。大規模圖數據處理技術在云環境中的容錯管理主要是通過對相應的冗余數據備份,或者是借助硬盤來進行讀寫,以實現對其數據的保護。其主要內容包括對冗余備份寫入時機的把握,確定冗余備份的相關數據存放位置,以及冗余備份過程中相關出現故障的檢測與恢復等。
云計算環境下大規模圖數據處理技術應用的現實意義。其一,強大的存儲能力,可以實現對數據的統一集中管理,統一高效維護,大大提高了信息數據量較大圖數據存儲以及保護水;第二,算法的靈活性拓展了大規模圖數據的實際應用領域,滿足不同場景的計算需求;其三,大規模圖數據處理技術將云計算技術的發展引入了一個新的方向,也促進互聯網計算技術的進一步發展[4]。
綜上所述,云計算是一項將計算機技術與網絡技術進行有效整合而成的新型信息產物,這一技術有著非常廣闊的應用背景。云計算技術與大規模圖數據處理技術兩者在發展歷程中相輔相成、相互促進。基于云計算環境的下大規模圖數據處理技術的應用,將會帶給我們更加豐富和完善的用戶體驗。
[1]李東升.云計算環境下的大規模圖數據處理技術[J].信息與電腦:理論版,2015,34(8):1753-1767.
[2]王欣.云計算環境下的大規模圖數據處理技術[J].決策與信息旬刊,2015,34(10):209.
[3]李淵.淺析云計算環境下的大規模圖數據處理技術[J].中國高新技術企業,2014(6):53-54.
[4]于雙紅.云計算環境下大規模圖數據處理技術的應用研究[J].信息與電腦:理論版,2016(1):6-7.
A Large-Scale Map Data Processing Technology in Cloud Computing Environment
Huang Genhua
Guangdong planning and Design Institute Co., Ltd., Guangdong Guangzhou 510630
The Internet infrastructure and the popularity of the era of the past, cloud computing makes a platform for a variety of applications possible.In recent years, with the rapid development of network technology such as network bandwidth, access condition and non local computing services through the network more mature, application of large-scale data processing, more to promote cloud computing the technology to broader direction. The main contents of this paper are large graph data processing technology in cloud computing environment and its significance in practical application, aims to build a cloud based virtual machine cluster to solve the graph data calculation problem, improve the large graph data processing efficiency, promote the development and promotion of cloud computing technology.
cloud computing; processing technology; large graph data
TN919.5
A
黃根華(1984—),男,工程師,畢業于中山大學,碩士,現就職于廣東省電信規劃設計院有限公司,長期從事網絡咨詢與規劃工作,在云計算、業務網絡等方面具有深厚的理論功底和豐富的項目經驗。