一级女人毛片人一女人-一级女性大黄生活片免费-一级女性全黄久久生活片-一级女性全黄生活片免费-国产美女在线一区二区三区-国产美女在线观看

始創于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊有禮 登錄
  • 掛牌上市企業
  • 60秒人工響應
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補償
您的位置: 網站首頁 > 幫助中心>文章內容

云計算環境下架構Hadoop集群的數據分配方式

發布時間:  2012/8/6 15:27:12
云計算是并行計算、分布式計算和網格計算的發展。文中詳細地闡述了MapReduce的編程思想、工作原理、步驟和方法。探討了來自Apache開源的分布式計算平臺Hadoop的核心設計MapReduce編程模型,并通過算法實驗分析和研究了MapReduce模型的工作方式和應用方法。

引言

云計算(Cloud Computing)是一種新興的商業計算模型。它將計算任務分布在大量計算機構成的資源池上,使各種應用系統能夠根據需要獲取計算力、存儲空間和各種軟件服務。云計算是網格計算(Grid Computing)、分布式計算(Distributed Computing)、并行計算(ParallelComputing)、效用計算(Utility Computing)、網絡存儲(Network Storage Technologies)、虛擬化(Virtualization),負載均衡(Load Balance)等傳統計算機技術和網絡技術發展融合的產物。

它的數據存儲是采用分布式存儲方式實現的,這就可以保證高可靠性、高可用性和經濟性,數據存儲的高可靠性是采用冗余存儲的方式來保證的,用可靠的軟件來彌補硬件的不足,從而提供廉價可靠的海量分布式存儲服務和計算服務。另外,數據存儲技術必須具有高吞吐率和高傳輸率的特點。這樣云計算系統就可同時滿足大量用戶的需求,才能為大量用戶并行地提供服務。云計算的數據存儲系統最著名的是谷歌研發的非開源系統GFS(Google File System)和Hadoop開發團隊開發的開源系統HDFS(Hadoop Distributed FileSystem)。

1. MapReduce編程模型

并行計算技術是云計算的核心技術,也是最具戰性的技術之一。MapReduce是Google公司的核心計算模型,名字源于函數式編程模型中的兩項核心操作:Map和Reduce操作。Map操作獨立地對每個元素進行操作,且操作沒有副作用;Reduce操作對N個Map結果進行歸約,也就是Map[1,2.。.,N]的結果是Reduce操作的參數。在一個指令式語言中求值順序是確定的,每個函數都有可能會變更或依賴于外部狀態,所以必須有序地執行這些函數。在MapReduce編程模型中,只要沒有函數修改或依賴千全局變量,N個Map操作的執行順序可以是無序的,這種特性使得MapReduce模型適合于對大規模數據進行并行處理。

在MapReduce計算模型中,有兩個關鍵過程:映射過程Map和聚集過程Reduce。因此需要用戶提供兩個關鍵函數,映射(Map)函數和聚集(Reduce)函數,這兩個函數對一組輸人的鍵值對(key/value)進行計算,得出另一組輸出鍵值對,即有:

Map:(in_key, in_value)-{(keyj, valuej)j=l.。.k}

Reduce :(key,[valuel,。..,valuem])一(key, fina_value)

在不同的應用中,Map和Reduce的輸人參數和輸出結果是不相同的。Map的輸入參數in_key和in_value,給S了Map函數要處理的是哪些數據。每個Map函數計算完與后輸出結果一組鍵/值對,它們是經過Mad任務執行完成后所返回的中間結果。系統在執行Reduce任務之前,先檢查前面Map任務返回的中間結果,根據Key進行分類處理,把相同key值所對應的value合并在一起把它們送給同一個Reduce任務進行處理,從而可以看出Reduce的輸入參數是(key,[ valuel,…,valuem])。Reduc任務主要對這些有著相同key值所對應的value值進行歸字處理,在Reduce任務執行完成后輸出(key, finaLvalue)的f果。一個key值對應了一個Reduce任務,把所有Reduce千務執行的結果合并連接在一起就形成了最終的輸出結果。

典型的MapReduce計算過程如圖1

\

圖1 MapReduce的工作流

(4)MapReduce庫把所有具有相同中間key值I的中間value值集合在一起后傳遞給reduce函數;

(5)用戶自定義的Reduce函數接受一個中間key的值I和相關的一個value值的集合。Reduce函數將這些value值合并成一個較小的value值的集合。正常的,每次Reduce函數調用只產生0或I個輸出value值。可以通過一個迭代器把中間value值提供給Reduce函數,這樣就可以處理無法全部放入內存中的大量的value值的集合。

2. Hadoop框架的工作機制

Hadoop是Apache軟件基金會(Apache SoftwareFoundation)組織下的一個開源項目,提供分布式計算環境下的可靠、可擴展軟件。Hadoop平臺擁有自己的分布式文件系統(HDFS),具體實現采用MapReduce模式。Hadoop采取文件備份的方式,為每份數據制作若干拷貝,擁有較高的安全可靠性。作為一個開源的分布式系統平臺,Hadoop除了擁有開源所帶來的更新速度快、應用廣泛等優勢外,還具有以下一些其它分布式云計算框架所共有的優點:高度的可擴展性、經濟實用性、高速有效性、高可靠性。

HDFS采用Master/Slave架構,一個HDFS集群由一個命名節點((NameNode)和一組數據節點(DataNode)組成。命名節點是一個中心服務器,負責管理文件系統的名字空間(NameSpace)以及客戶端對文件的訪問。在集群系統中,一般在一個節點上運行一個數據節點,負責管理它所在節點上的數據存儲,并負責處理文件系統客戶端的讀寫請求,在命名節點的統一調度下進行數據塊的創建、刪除和復制。Hadoop還實現了Google的MapReduce分布式計算模型,MapReduce把應用程序的總任務分割成許多子任務,每個子任務可以在任何集群節點(數據節點,通常也作為計算節點)上并行處理。HDFS創建了多份數據塊(Data Blocks)的副本(Replicas),以保證各個子任務節點計算的可靠性((Reliability)。由于采用了分布式文件系統和MapRedace模型,因此Hadoop框架具有高容錯性及對數據讀寫的高吞吐率,能自動處理失敗節點。圖2是Hadoop集群系統架構的示意圖。

由圖2可知,HDFS是由一個命名節點和多個數據節點組成的。數據節點存儲著文件系統的元數據,它的作用就像是文件系統的總指揮,維護文件系統命名空間、規范客戶對于文件的存取和提供對于文件目錄的操作,數據節點中存儲著實際的數據,負責管理存儲節點上的存儲空間和來自客戶的讀寫請求。數據節點也執行塊創建、刪除和來自命名節點的復制命令。


本文出自:億恩科技【www.laynepeng.cn】

服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經營性ICP/ISP證:贛B2-20080012
  • 服務器/云主機 24小時售后服務電話:0371-60135900
  • 虛擬主機/智能建站 24小時售后服務電話:0371-60135900
  • 專注服務器托管17年
    掃掃關注-微信公眾號
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權所有  地址:鄭州市高新區翠竹街1號總部企業基地億恩大廈  法律顧問:河南亞太人律師事務所郝建鋒、杜慧月律師   京公網安備41019702002023號
      1
     
     
     
     

    0371-60135900
    7*24小時客服服務熱線