雲計算環境下大規模資料處理技術研究論文
雲計算環境下大規模資料處理技術研究論文
隨著計算機技術和網際網路技術的發展和應用,網路資訊和資料量正在高速增長。傳統的平行計算、分佈計算等方式由於各種限制,往往都難以滿足實際的計算要求。基於此,採用基於雲計算環境下的大規模資料處理技術,能夠有效的打破這些限制,從而實現更加高效、快速的資料計算。
1雲計算環境下大資料處理模式
1.1大規模廉價計算平臺
利用虛擬化技術,能夠實現大規模廉價計算平臺,將儲存、應用程式、網路、計算等資源作為虛擬化實體。對閒散的計算資源進行抽象,使之形成相互之間完全獨立的虛擬伺服器例項,從而獨立的完成資料處理和計算。透過這種方式,就能夠實現底層硬體的虛擬化。構建可擴充套件計算節點資源池,並在其中實現整合管理虛擬計算流程和計算節點。這樣,大規模資料子處理任務就能夠完成實時遷移、資源轉換、系統監控和任務部署。
建設大規模計算平臺的過程,也是雲計算環境下大規模資料處理的一個重要步驟。具體來說,首先要對資料處理需要的資源進行引數化的配置,根據相應的要求進行定製。透過這一過程,使用者能夠獲取自己需要的資源。在不同的操作模式下為使用者提供引數服務。在設定引數完成定製之後,以此為基礎,在大規模資料處理的時候,部署儲存和計算資源,設定計算流程和資料處理方案。將相關引數設定資訊在儲存和計算資源的配置檔案當中進行寫入之後,以此對計算流程進行分配,從而在計算節點中啟動相關的資源,並且管理和部署計算節點的定製處理服務。
部署工具透過網路連線到目標計算節點和計算流程,然後執行大規模資料處理方案。然後根據相應的方案,透過程式碼對儲存和計算資源進行分配和執行。將部署在計算節點進行進行啟動,利用網路在各個計算節點發送資料處理命令,從而完成排程和部署計算流程的工作。
1.2Map Reduce技術的支援
採用Map Reduce分散式和並行式程式設計模型,從而在模型內部對任務容錯處理、計算節點負載均衡、空間區域性性最佳化、並行任務排程等方加以實現。在Map Reduce的`開發過程中,只需對Map、Reduce兩個介面進行定義,透過計算機叢集,對使用者編寫程式進行執行,拆分大規模資料集合,使之形成若干資料片段,從而得到一系列鍵值對[4]。然後向一個Map任務中分配一個數據片段,在Map Reduce框架下,向大規模計算叢集中的節點進行子任務的分配。最後,結合得到的鍵值對進行計算,生成鍵值對集合,向Reduce當中進行輸出。
Reduce當中每一個Reduce任務,都會向二元組集合當中進行分配,輸入集合片段,執行Reduce函式,輸出二元組鍵值對。如果資料處理任務失敗,也能夠自動重新進行計算。在大規模資料處理當中,是高度並行操作Map的,這一步驟對於大規模資料的高效處理來說,具有不可忽視的意義。基於雲計算環境下,對規模資料資訊大都能夠達到TB級別或GB級別。在長時間處理大規模資料的時候,如果發生資料處理任務失敗的情況,能夠防止發生計算任務重新執行的情況。由於資料塊是被複制的,因此在容錯性方面,還會關係到負載均衡的情況。
2雲計算環境下大資料處理的框架模型
在大規模資料資源和計算資源當中,對雲計算技術、計算機網路技術進行引入,建立大規模資料處理框架模型。主要包含了兩級結構,其一是虛擬資源體系、大規模廉價計算機叢集,其二是大規模資料處理分析的處理監測管理體系、資料處理服務請求、以及相應的基礎架構。利用限制的計算機資源,對虛擬資源層和物理裝置進行構建,從而形成最底層的物理資源,形成同構的資料處理資源池或接近於同構的資料處理資源池。在第二級結構當中,最為重要的就是軟體體系,能夠為大規模資料處理提供服務。採用Hadoop核心技術,對資料處理介面進行編寫。透過這種方式,在不同的學科和領域當中,能夠提供相應的大規模資料處理服務,從而使使用者能夠享有良好的計算平臺軟體支援。
在這一框架的設計與實現當中,對Hadoop分散式開源計算機框架進行了應用,對其中的HDFS分散式檔案系統,以及Map Reduce進行應用,從而對大規模資料處理業務進行處理和協調。在計算節點當中,對放置在Map Reduce任務進行對映,對大規模資料進行劃分,使之形成若干子塊,並對資料塊的數量、規格等引數加以掌握。透過HDFS功能,可以在每一個計算節點當中,對資料塊副塊進行智慧的放置,同時針對各個節點,對具體的角色進行設計。在大規模資料處理的過程當中,需要利用Reduce函式、Map函式、以及相關的程式進行分佈化處理。在Hadoop當中,為了對Map Reduce進行執行,提供了一個API進行支援。
3結論
在當前資訊化的時代背景當中,計算機和網路的廣泛應用,使得各個領域中的資料量和資訊量與日倶增。而對於這些海量的大規模資料來說,利用傳統的資料處理方式,往往難以取得十分理想的處理效果。基於此,可在雲計算環境下,開發和利用相應的大規模資料處理技術,以此來支援社會各個領域當中的大規模資料處理需要,從而數字化的時代當中,始終保持較高的工作效率和良好的工作效果。