熱線電話:13121318867

登錄
首頁精彩閱讀一文讀懂MapR,Apache Hadoop的MapR發行版白皮書
一文讀懂MapR,Apache Hadoop的MapR發行版白皮書
2014-11-23
收藏


一文讀懂MapR,Apache Hadoop的MapR發行版白皮書



內容目錄

概述

戰略性的Hadoop

完整、先進、擁有強力支持的Hadoop發行版

易用的Hadoop

從批處理轉向實時數據流

內建數據壓縮機制

多集群支持

籌劃、搭建和管理集群

MapR的卷

輕松的規?;芾?/span>

可靠的Hadoop

避免作業丟失

用于大規模并具有高可用性的分布式管理節點

Hadoop高可用性及直接掛載NFS

使用快照方便地恢復數據

鏡像

更快的Hadoop

高性能架構

性能特色

性能測試

結論

概述

現在每天都有2百萬人使用著互聯網,每一次通話、每一條推特、每一封電子郵件、每一個下載或每一回購物都產生出有價值的信息。企業越來越依賴于使用Hadoop從迅猛增長的數據中發掘潛藏的價值,促進企業利潤的增長。僅僅Orbitz這家旅游網站每月就有460萬人次的訪問量,社交網站Facebook的用戶數量從4億變為5億只用了不到半年的時間,而社交游戲網站Zynga近來供應了750萬份虛擬情人節蛋糕。這些公司有一個共同點:依靠Hadoop處理海量數據從而推動業務的發展。

Hadoop可不是只能分析點擊流,諸如傳感器輸出數據、視頻、日志文件、位置數據、基因信息、行為甚至地震分析等數據,這些只是在各種政府機關及各個層次企業中Hadoop所能夠大顯身手的一小部分數據源而已。不過Hadoop并不完美,用過Hadoop的人就會明白Hadoop所面臨的挑戰及其不足之處。目前市面上雖有6種不同的Hadoop發行版可供選擇,然而這些發行版不但配置方案一樣,而且都存在單點故障、數據丟失的風險及性能瓶頸這樣的缺陷。

我們為您帶來一個更好的新選擇——Apache Hadoop的MapR發行版——最簡單、最可靠、最快速的Hadoop發行版。

戰略性的Hadoop

在您的組織對Hadoop發行版進行評估和選擇時,應該緊密結合自身實際情況來確定評價標準。與發行版有關的重要問題包括:

易用性如何?

能夠多大程度上方便地在集群中移動數據?

集群能否被用戶、工作任務和不同地理分布所便捷地共享?

集群是否既能處理大量文件,也可以使擁護輕松應對訪問、保護和安全問題?

可靠性如何?

對于生產和商務的關鍵性數據它能否勝任?

怎樣對業務的持續性給予支持?

集群能否用從用戶或程序錯誤中恢復數據?

能否對不同集群間的數據進行鏡像?

性能如何?

處理能力是否受到批處理應用程序的限制?

管理節點是否會成為性能瓶頸?

系統能否充分利用硬件資源?

MapR所提出的創新方案將使更多企業可以更好地利用大數據分析的能力,本發行版的諸多新特點令Hadoop更易使用、更可信賴并使其性能得以顯著提升,從而極大地拓展了Hadoop的應用和適用范圍。

完整、先進、擁有強力支持的Hadoop發行版

大量社區開發者已經作出了杰出的貢獻,在此基礎上MapR又進行了創新。這些新的重要技術進步,使得MapR將Hadoop打造成為一個處理實時數據流的可信交互系統。

MapR對Apache Hadoop API的兼容性達到100%,如兼容MapReduce、HDFS和HBase的所有API。集MapR公司與社區精英的才智于一體且已打有最新補丁,MapR完整發行版不僅經過全面測試還具有MapR公司的支持。如圖1所示,MapR提供完整的Hadoop組件體系,包括:

語言處理組件(Hive和Pig)

數據庫組件(HBase)

工作流管理庫(Oozie)

應用程序創建庫(Mahout)

Hadoop數據庫SQL輸入/輸出轉接器(Sqoop)

日志采集系統(Flume)

完整的MapReduce層

底層存儲服務功能

MapR突破了其他Hadoop發行版的限制,無論一個還是幾萬個節點,MapR都能夠輕松應對其上PB級的數據量。

MapR

圖1 MapR發行版與Apache Hadoop達到100%兼容,并新增了多種提高易用性、可靠性和性能的創新之處

易用的Hadoop

為了讓更多的用戶容易地使用,也為了承載更大的任務量,Hadoop必須能讓用戶簡單地使用、部署、運營和管理。MapR公司致力取得關鍵性技術突破,這些突破使得在集群中轉移數據、擴展集群資源及管理大型Hadoop集群這樣的任務不但變得更加容易,而且僅需很少的人力便可完成。

從批處理轉向實時數據流

其他發行版采用了較為繁瑣的批處理方式來管理數據,從而導致數據處理速度的降低。應用程序首先將數據轉運到本地或附加的網絡存儲中。按照預先設定的時間間隔,數據被分批載入傳統Apache Hadoop的一次性寫入式文件系統中。最后,分析生成結果并將這些結果分批卸載以待進一步的分析。

標準的批處理方式使得在應用程序數據生成與Hadoop集群數據分析之間形成明顯時滯。即使通過提高數據加載頻率這樣的手段可以最大程度地縮小這個時滯,卻同時產生了數量眾多的小文件,如此之多的小文件對于傳統Hadoop擴展性的極限形成了巨大的挑戰。此外,其他的Hadoop發行版也受到Hadoop分布式文件系統(HDFS)的限制,類似于常見的CD-ROM,HDFS也是一次性寫入的文件系統,不僅不能夠對已寫入文件進行修改,也不允許對未關閉的文件進行讀取。

與這些Hadoop發行版截然相反,MapR基于行業標準的網絡文件系統(Network File System,NFS)協議,使用NFS直接存取技術對數據流進行實時讀/寫。利用該項技術,不但任一遠程客戶端都可方便地掛載集群文件系統,各個應用服務器還能夠將日志或其他數據直接寫入集群,而不必將數據先導入本地或網絡存儲之中。在MapR的無鎖存儲服務技術的支持下,MapR直接存取NFS技術讓用戶可以更快更經濟地使用Hadoop

有別與傳統Hadoop一次性寫入式的文件系統,MapR允許根據用戶需要對文件進行修改、覆蓋或讀取。MapR無鎖存儲服務技術支持對任意文件進行多個并發的讀/寫操作。

用戶可以使用圖形化的文件瀏覽器訪問和操作集群中的數據。使用文件瀏覽器,用戶可以僅僅是瀏覽文件,也可以點擊鼠標來自動打開有關應用程序,還可以拖拽文件或目錄而使其移入或移出集群。

可以使用文本編輯器或集成開發環境(Integrated Development Environments,IDEs)直接編輯集群中的文件。

在MapR中,用戶可以直接使用標準的命令行工具、UNIX應用程序及其他工具(如Grep、Sed、Tar、Sort和Tail)來處理集群中的數據。對其他Hadoop發行版而言,用戶不是需要再進行開發,就是為了使用標準化工具而把數據從集群中拷貝出來。

如Flume之類的日志采集工具經常需要在每臺應用服務器上額外運行代理程序,而MapR大大降低了對日志采集工具的依賴。MapR既允許應用服務器直接向集群中寫入數據,也允許使用Rsync這樣的標準化工具在本地磁盤和集群間同步數據。

應用程序的二進制代碼、庫及配置文件可以在直接在集群內部存儲和訪問,并且操作十分簡單。

內建數據壓縮機制

雖然一般的Hadoop發行版也可以對數據進行壓縮,但實現起來既困難又低效。所以通常的做法是,先手工將數據進行壓縮再將其拷入集群,而后執行指定的MapReduce任務對壓縮的數據進行索引(假設應用程序需要采用并行處理)。為了達到壓縮指標,還需要修改應用程序。

MapR的自動壓縮功能在提升了性能的同時又能夠對重要的存儲進行備份。所以說,MapR壓縮方案節省了網絡I/O帶寬和存儲空間的占用。

多集群支持

不論是為了分發不同數據或應用程序,還是為了業務的持續性,亦或是出于性能考慮,企業都經常需要操作多個Hadoop集群。MapR內在的設計使其可以支持多集群作業、直接存取、遠程鏡像和多集群管理。

直接存取。所有的MapR Hadoop集群都可以讓用戶簡單地在集群內外直接存取數據。假設一家組織擁有“dev”和“test”兩個集群,人們可以在/mapr/dev目錄下使用dev集群中的文件,也可以在/mapr/test目錄下訪問test集群中的文件。不管使用Hadoop集群直接訪問(hadoop fs -ls /mapr/dev/user/jdoe)還是通過遠程NFS方式(ls /mapr/dev/user/jdoe),訪問路徑都是相同的。除此之外,用戶可以通過執行一個簡單的命令(cp /mapr/dev/foo.txt /mapr/test/)就能夠在不同集群之間拷貝文件,而且配置不同集群間的符號鏈接也是很容易的事情。

遠程鏡像。利用MapR鏡像工具,用戶可以很輕松地配置MapR來為不同集群的數據做鏡像。MapR的這個功能不僅能夠用于支撐持續性業務(為另一個集群做數據鏡像),也能用于保障生產或研究中各個集群間的同步。

多集群管理。使用MapR控制系統(MCS),用戶可以看到所有正在運行的MapR集群,也能夠輕松地查看和切換可用集群。

籌劃、搭建和管理集群

正如數據分析需求的不斷增長一樣,人們對昂貴的集群資源進行有效管理和利用的需求也在不斷增長。不論是定位或存取數據,還是對數據施用策略,都對大規模數據的有效管理提出了一個巨大的挑戰。集群的架構必須能夠支撐應用程序、用戶、部門和管理者對海量文件管理的需求。集群的應用和數據必須既能滿足技術需求,又得兼顧企業利益。

企業級的應用方案,通常需要對下述問題進行考察:

需要怎樣的CPU處理能力?(現在和將來)

需要怎樣的存儲能力?(現在和將來)

應用程序是否具有高I/O存儲需求?

具有哪些的數據保護需求?

具有哪些業務持續性需求?

需要采用何種安全授權和存取控制的手段?

在MapReduce的環境下,上述問題則對Hadoop發行版全面性和靈活性提出了更高的要求。其他Hadoop發行版都是在文件層面上進行策略(如所有者、復制等)管理,事實上它無法處理可能面對的數以百萬計的文件。MapR是企業級發行版,具有先進的數據管理功能,正如文章標題中所稱,MapR可以讓企業簡單、容易而又經濟地實現業務層次的各項目標。

MapR的卷

MapR的卷讓用戶便捷地存取和管理集群中的數據。為了容易被組織、管理和確保安全,MapR采用樹狀結構把相關的文件和目錄都分類匯集起來形成卷。MapR的卷具有如下功能:

  1. 復制。復制參數決定了整個集群中數據副本的數量。
  2. 快照。不必費時費力地復制數據,MapR的快照功能就能夠在線實時恢復數據。
  3. 鏡像。MapR的鏡像具有負載均衡、跨集群備份、大容量數據遷移以及為確保業務持續性的失效備援的功能。本地鏡像可高效、頻繁存取數據,而遠程鏡像則負責保障業務的連續性并在企業原有系統和私有云間進行集成。
  4. 配額。通過限制任何用戶、用戶組和卷的磁盤空間,或是為特定的用戶和用戶組分配一個卷,企業可以使用配額來對應用程序、用戶或部門的需求進行精確的管理。MapR擁有集群內部的存儲配額管理能力,配額既可配置用于一個單獨的卷,也可以用于一個用戶或用戶組。一旦配額即將溢出,系統會自動發送電子郵件進行提醒。用戶和用戶組可以來自本地系統,也可以來自如NIS或LDAP這樣的標準名稱服務器。
  5. 數據位置控制。MapR允許根據需求把數據保存在集群內指定的位置上。比如,可以將那些具有頻繁I/O請求的應用程序數據放置到SSD這類的高速設備中,而其他數據則存放在標準磁盤設備上。
  6. 管理權限。集群管理員有時需要對其他用戶進行授權,這時可授予管理權限有:允許特定用戶創建和刪除卷、運行鏡像和快照、設定配額等。
  7. 數據存取。用戶可在卷級別對數據進行存取。MapR集成了標準的目錄服務,如LDAP或NIS。

輕松的規?;芾?/strong>

管理大規模的Hadoop集群,可視化和自動化非常必要。管理員的確沒有時間對服務器進行逐一排障和管理。在高級的數據管理和自我恢復功能幫助下,僅需一個管理員就能輕松管理上千個節點的MapR集群。

MapR的下述特點令管理變得更加容易:

  1. 具有經過測試、功能完善的Hadoop堆棧,預先集成了豐富的組件,如Hive、Pig、Oozie等等。
  2. 安裝簡單
  3. 擁有完善的管理工具,如GUI、CLI及REST APIs
  4. 系統更新及撤銷回滾無需暫停業務

MapR控制系統(MCS)對集群的資源和對集群的操作實現完全可視化。如圖2所示,通過集群拓撲的組織(例如數據中心和機架),MCS所包含的MapR Hadoop Heatmap工具被設計用于對上千的節點進行管理,它能夠以可視化的形式展現節點的健康情況、服務狀態和資源使用狀況。若要了解整個集群的健康情況,MapR Hadoop Heatmap讓您一看便知。對于數量眾多的節點、文件和卷,用戶可以利用過濾器直接選取指定的部分,也可以使用群管理器直接運行管理動作。

MapR

圖2 MapR Hadoop Heatmap令每個集群中
所有節點的狀態一目了然

可靠的Hadoop

可靠性對于業務的持續運營至關重要,企業對系統的可靠性、可用性和存儲能力都有著較高要求——對于生產性數據尤其如此。與其他發行版不同,MapR采用了完全分布式的架構來滿足企業級集群運行需求,并提供可信的數據存儲以確保在共享環境下數據依舊安全:

  1. 高可用性。MapR的每一部分不但都是事務性和日志性的,而且僅需數秒便可重啟。整個集群可以自行恢復與調整。公司重寫了作業調度器和管理節點,使其變為分布式并可被復制。NFS的高可用性意味著客戶機不必掛起等待無效服務器。滾動式的更新方式確保集群一直處于可用狀態。
  2. 數據保護。不同于一般的發行版,MapR不存在單點故障問題,集群中的元數據具有三份副本。從客戶機內存到集群中的磁盤,MapR全程監控著靜默數據損壞問題并進行端到端的校驗。MapR快照工具具有實時恢復鏡像的功能,而MapR鏡像工具則通過使用遠程或本地鏡像對數據進行保護以保證業務的連續進行。
  3. 災難恢復。遠程鏡像可以對遠端站點中的集群數據進行同步備份,即使遇到災害企業依舊能夠持續運營。使用MapR控制系統可以輕松管理大量地理集中或分散的集群。
  4. 安全、共享的環境。MapR保護系統資源不受失控作業的影響,保證所有應用都能夠從核心集群里獲取資源。而在其他發行版中,用戶作業中的Bug(如無限循環)則會影響到重要的系統守護進程。
  5. 監控。MapR自帶的過濾器通知和警告功能不僅支持許多層面,包括集群范圍、預定的服務、預先配置的卷、任一用戶或用戶組以及任何一個節點,還支持群發電子郵件。使用率追蹤和配額功能能夠幫助管理員有效跟蹤資源并了解負荷程度。當然,用戶也可以集成并使用第三方的監控系統。

避免作業丟失

Hadoop利用作業調度器(JobTracker)跟蹤遍布集群不計其數的Mapper和Reduce任務。不幸的是其他發行版中的作業調度器僅在一個節點上運行,使得整個集群存在單點故障的可能性。一旦作業調度器失效,所有正在運行的作業都將失效,而且所有進程也將丟失。此外,管理員首先還必須首先能夠探查到問題的根源,然后手動重啟作業調度器使集群重新恢復正常。

MapR擁有高可用的作業調度器,它在縮減恢復時間的同時還支持集群自我恢復。若是某個作業調度器失效,任務控制器將自動暫停,此時集群中會有另一個節點上的MapR作業調度器自動啟動,任務管理器將等待直至重新連接到新啟動的作業控制器。整個過程中所有正在運行的作業或任務都將繼續運行,而不會出現作業失效或丟失進程的現象。

用于大規模并具有高可用性的分布式管理節點

Hadoop中,管理節點追蹤并記錄集群中數據的所在位置。其他發行版里,即使是規模很大的集群,仍然使用單臺服務器來運行管理節點,這會產生很多問題。MapR采用分布式管理節點而解決了這些問題。

  1. 沒有單點故障。單一管理節點可以引發單點故障,如果節點宕掉,整個集群都無法使用,只有再花費數分鐘甚至數小時的時間重啟管理節點才能讓集群重新運行起來。在MapR中,集群的所有節點都能夠存儲和處理元數據,故而即使在多磁盤或節點失效的情況下也不會有丟失或停工的發生。
  2. 沒有文件數量限制。即使是運行在性能超強服務器上,其他發行版的管理節點最多也只能處理7000萬份的文件量。實際上為了試圖解決這個問題,許多大型Hadoop站點需要在集群中進行遍歷來搜尋和登記文件的,這種做法不但占用大量日常作業任務還浪費了資源和金錢。而MapR的分布式管理節點數量與節點總數保持線型增長,對文件數量沒有任何限制。
  3. 具有性能優勢。別的Hadoop發行版由于集群內的所有元數據操作(如查詢、創建)必須通過單一的管理節點才能實現,使得系統性能受到制約。這一問題既影響了系統性能,又限制了集群所能處理的工作量。然而,MapR集群任一節點都能夠存儲和處理元數據,意味著規模更大的集群將獲得更高的性能。

Hadoop高可用性及直接掛載NFS

MapR的若干創新使NFS的存取更好用也更穩定。通過使用虛擬IP地址保障集群的高可用性,令Hadoop更符合生產環境的要求。很多集群節點(乃至集群中的所有節點)都能作為NFS網關,同時MapR采用了透明的錯誤管理機制。用戶還可以配置負載均衡使得客戶端能夠均勻地分布到整個NFS網關中。此外,MapR允許NFS客戶端控制數據塊的大?。ㄈ纾?4MB、128MB、256MB),并能通過隱藏在每個目錄下(類似于Linux中的/proc目錄)的一個偽文件進行壓縮設置。

使用快照方便地恢復數據

由于每天都要收集并處理海量的數據,因此對如此之多的數據原封不動地備份通常都是不現實的。與此同時,一旦遇到應用程序崩潰或操作失誤,企業要求系統必須可以還原特定時間點上的數據。數據副本是其他Hadoop發行版提供的唯一數據保護手段,然而遺憾的是,數據副本只能在磁盤和節點失效的情況起作用,卻無法應對整個集群處處都可能發生的用戶或應用程序出現的錯誤。許多Hadoop用戶正是由于這些錯誤才導致其重要數據的丟失。

MapR的快照功能允許組織自行創建還原點對象,通過提供時間點還原鏡像來保護系統免受用戶或程序的錯誤之苦。MapR快照由MapR控制系統進行管理并對MapR卷進行操作,它可以被設定成定期計劃任務也可以根據需要來隨時執行。對某個快照進行恢復就如同瀏覽快照目錄或是把目錄或文件拷入當前目錄中一樣簡單。用戶可以為個別的卷單獨建立快照,也可以為不同的卷設定不同的快照任務計劃。

MapR同樣支持制訂復雜的任務計劃。例如,“重要”數據的快照計劃可能包括:

一天24小時,每小時進行一次快照。

一周7天,每天中午12點整進行一次快照。

每周周日中午12點整進行一次快照,持續12周。

MapR快照具備高性能和低磁盤占用等優勢:

速度極快。創建一份快照無需對數據進行拷貝,也就是說PB級別的一份快照在幾秒鐘內即可完成。

原子操作??煺詹僮鞫际窃有缘?,它具有完整的連續性。

不影響寫性能??煺詹僮鲗懭氩僮餍阅軟]有任何影響。MapR使用的是直寫操作,即系統中的每次寫動作都將寫入至磁盤的一個新塊,直接寫入操作比復制寫入操作效率更高。

最小化存儲占用。如果文件不被修改或刪除,快照將不會占用任何磁盤空間。所有未作改動的數據塊都同時被快照和卷內的即時讀/寫鏡像所共用。因此,MapR的快照技術能夠最低限度地占用磁盤空間,在目標數據塊寫入性能零損失的基礎上還可以提供速度極快的分布式快照。

鏡像

很多企業都需要對他們的數據創建時間點的物理備份,MapR的鏡像功能能夠滿足企業的這一需求。MapR鏡像有兩種明顯不同的使用形式:遠程鏡像(正如本小節所描述)應用于集群間的災難恢復、研發與測試或是共有云與私有云的集成,本地鏡像(參見性能小節)則用于同一集群內的負載均衡或性能增強。遠程鏡像能夠支持眾多的用例。

  1. 災難恢復(Disaster recovery,DR)。組織可以應用遠程鏡像部署容災性的另一個集群。該集群一般安置于其他數據中心或地區,一旦發生數據丟失便可利用容災集群進行數據恢復,而且即便主集群受到災害影響,所有的應用程序都可以切換至容災集群上。
  2. 研究性集群。組織可以使用MapR輕松地部署一個與生產集群并行的研究性或測試性集群。管理員能夠十分輕松地在研究性集群中創建卷的鏡像,系統也會定期把生產環境中的數據鏡像做到研究性集群之中。這一功能使用戶可以在研究性集群的環境中處理真實的、最新的數據。
  3. 公有云與私有云的集成。由于絕大多數的組織都選擇在自己的硬件平臺上運行Hadoop,有的組織感到有時很有必要使用其他公有云集群(如Amazon EC2)來獲取額外的計算能力。例如,某個組織決定在每周五晚都將使用EC2上的100個節點來滿足特定的處理需求。MapR能夠既簡單又輕松地同步公有云集群與本地集群中的數據。
  4. 高效。MapR的鏡像不同于其他發行版,因為鏡像中僅對數據源的改動進行記存。例如,假設某一文件中僅有一個8KB的數據塊被修改,在下一個鏡像中也只有這個小塊而非整個文件將被傳送,這些數據在網絡中傳輸時還要經過壓縮并使用校驗來確保數據的完整性。如果需要使用同一個卷的多個鏡像,鏡像可以被分層傳送以減少對傳輸帶寬的占用。存儲原始卷的服務器對數據進行異步傳輸和并行處理,這并不會影響本地系統的性能。
  5. 在線傳送或者線下儲運。如果數據量過于巨大以致不適用網絡進行傳輸,可以把鏡像保存到數據源所在地的一個或更多可移動的磁盤或服務器中,隨后將其物理地運送至目的地再進行裝載(于是也被稱為“步行網”)。網絡和步行網的鏡像可以相互操作。比如,可以在原集群中創建一份相當大的鏡像,隨后將其運輸至很遠的目的地,接著原集群便可從遠程集群大量加載并同步數據。
  6. 原子操作。MapR的鏡像功能基于MapR快照,具備原生的原子操作。當一個鏡像操作所需的所有數據都被目標集群接收后,目標集群才會改變,也就意味著目標集群的更新也是原子性的。用戶可以使用GUI、CLI或REST API工具來配置和監控鏡像之間的關聯。類似于快照任務計劃,鏡像任務計劃也可以在卷層面上進行設置。

更快的Hadoop

MapR最初就被設計為一款具有十分突出的I/O和性能優勢的Hadoop發行版。不論集群規模是大還是小、擁有一個還是上千節點,MapR都能提高集群的性能。

高性能架構

從一開始,為了提升性能MapR公司就已經進行了重新設計,打造出的MapR發行版具有多方面的架構特色,包括:

  1. MapR無鎖存儲服務。MapR無鎖存儲服務加速了MapReduce的性能外還提供多維度的擴展性能。首先,在實際運行中為了避免鎖定沖突,使用數據路由表而非互斥鎖或自旋鎖。其次,有許多用戶應用程序分布在不同的節點中,為了維護執行這些程序所需的資源,棄用線程而采用了狀態機。再有,MapR無鎖存儲服務不是通過HDFSLinux文件系統層而是直接對塊設備進行寫入。
  2. 樂觀性Shuffle。MapR的Shuffle過程利用了MapR無鎖存儲服務的特點來對Mapper和Reducer的任務進行排列。于是當Reducer讀取Mapper輸出時數據都是從磁盤(也可能是跨磁盤間)連續讀出的,這種做法具有相當強的性能。樂觀性的MapR Shuffle并不使用Linux頁面緩存,從而避免了與用戶應用程序搶占寶貴的內存資源。于是,MapR的Shuffle過程比其他發行版要快三倍。
  3. 分布式管理節點。由于其他Hadoop發行版依靠唯一的管理節點來管理整個集群的元數據操作。相反地,MapR的管理節點是分布式的,它的元數據操作遍布整個集群,因而具有更高級別的可伸縮性。
  4. 內建壓縮機制。MapR對數據進行壓縮以節省磁盤和網絡I/O,整個過程完全透明。
  5. 開發語言。MapR底層是用C/C++進行編寫的。除了能夠獲得更高的效率和性能外,選擇這種語言進行開發還能克服其他發行版都頭疼的垃圾收集問題。
  6. 多網卡支持。如今絕大部分服務器上都配備至少兩塊網卡(Network Interface Controllers,NICs)。MapR通過綁定網卡可以在每一個節點上使用多個網卡而無需在交換層綁定端口。在網絡上的其他機器看來,MapR集群中的任何兩塊對等網卡只有一個端口是開放的。
  7. 最小化CPU或存儲空間占用。在集群中MapReduce應用程序運行在相同的節點上并將其視為文件服務器,MapR從基礎架構本身著手來最大程度地降低CPU和存儲空間占用,從而確保能有充足的CPU、內存和其他資源來運行用戶應用程序。此外,所有的MapR服務都作為用戶空間進程執行——既提升了性能又不影響系統穩定。

性能特色

不僅僅是先進的架構,MapR的數據位置控制和本地鏡像功能還可以讓用戶對Hadoop應用進行定制,進而使性能得到再次提升。

  1. 數據位置控制。MapR可以對數據位置進行控制,而其他發行版卻無法控制集群內數據的物理存儲位置。面對全部可用節點,數據位置控制可用于對卷設定訪問策略使其僅對某一部分節點開放,也可以將某個卷單獨綁定到指定機架或數據中心上,亦或是綁定到某些特定硬件配置的機器上。例如,一個需要對會話查詢表進行隨機和高頻訪問的應用程序,就可以將查詢表所在的MapR的卷專門綁定到那些裝配SSD硬盤驅動器的集群節點上,這將使集群性能獲得極大的提升。
  2. 本地鏡像及鏡像卷。MapReduce會產生訪問相同數據的大量進程。如果使用傳統Hadoop技術,對一個文件系統元素的大量并發訪問很快就會導致文件服務器的崩潰而使得整體性能下降,特別是在啟動新作業時表現的更為明顯。MapR中的用戶可以使用本地鏡像(又稱為鏡像卷)來創建卷的多個副本。這些副本都采用相同的路徑進行訪問并可同步更新,系統還能夠自動地在這些副本中對讀請求進行負載均衡處理。

性能測試

公司已經對MapR發行版進行了多項測試,比如流式I/O、隨機I/O及MapReduce性能等,并與其他Apache Hadoop發行版進行比較來評估MapR的性能。結果參見后續小節。

流式I/O性能

作為Hadoop領域內的第一個I/O性能測試基準,DFSIO基準成為了衡量流式I/O性能的有用工具。通過運行一項多mappers和單reducer的MapReduce作業,重點考察mapper平均的轉換率(用MB/s表示)。在本測試中,MapR工程師使用10個節點的集群進行測試。如圖3所示。

MapR

圖3 DFSIO測試(數值越大越好)顯示MapR比其他發行版快三倍

系統采用10節點集群進行測試,每個節點的主要硬件配置是:兩顆四核處理器、24GB內存和12塊1TB 7200轉SATA硬盤驅動器。正如在圖中所示,MapR中的I/O幾乎達到硬件設備的物理極限。CPU在測試中基本上處于閑置狀態,說明了數據通道是高效的。測試中的寫入速度由于校驗而稍微有些偏低。

隨機I/O性能

有些應用程序需要創建和訪問數量眾多的文件。為了對這方面性能進行評估,MapR工程師基于NNBench對比測試了MapR和其他發行版的效果,本測試是通過重復如下步驟來進行的:

新建一個文件

向文件中寫入100字節

關閉文件

程序運行在10個相同節點的集群上,每個節點同時部署了傳統Apache Hadoop發行版和MapR發行版。為了完成測試關閉了傳統發行版中的塊報告功能。測試的結果如圖4所示。

MapR

圖4 MapR在隨機I/O測試中完勝傳統發行版

MapR不論是在速度上(縱軸)還是在容量上(橫軸)都獲得十分出色的結果。實際上,由于差距如此之大以至于傳統發行版的結果必須經過放大才能看到。即便關閉了塊報告功能,傳統發行版最多只能寫入150萬份文件隨后曲線便陡然下降。與此不同,MapR完成9000萬份文件寫入任務時,速度才從12000份/秒降低到4000份/秒。結果說明MapR的擴展能力是普通發行版的60倍。

MapReduce性能

除了I/O,工程師也想對MapR的數據分析性能進行評估。采用Terasort測試,測驗平臺仍然是10節點集群進行測試,每個節點的硬件都含有兩顆四核處理器、24GB內存和12塊1TB 7200轉SATA硬盤驅動器。Benchmark測試的結果如圖5所示。

MapR

圖5 在Terasort測試中(越小越好)MapR的性能幾乎領先傳統發行版近3倍

MapR

MapR及其他發行版的擴展性比較

結論

MapR相信不斷加深的數據處理危機需要戰略性地重視Hadoop平臺的選擇。雖然已經有許多發行版可以拿來使用,但只有與眾不同的MapR發行版才突破了其他發行版的各種不足和限制(如表2所示)。MapR具有其他發行版根本不具備的獨特特色和功能,包括:

簡易的安裝、部署和管理集群,全程可視化,操作簡便

企業級的存儲訪問和存儲管理,企業級的可靠性

由于性能的突破,可以通過顯著降低硬件需求從而控制成本

MapR的努力和創新讓Hadoop變得更加簡單、可靠和快速,使其能夠滿足現今絕大多數應用的需要,而且我們也做好了迎接未來挑戰的準備。

MapR

MapR及其他發行版的擴展性比較

MapR技術公司打造出了業內最快、最為可靠、也最易用的Aapche Hadoop發行版。本公司致力于推進Hadoop平臺及其生態系統,使更多企業能夠利用大數據分析的威力獲得競爭優勢。您可以訪問公司網站www.mapr.com來獲取更多信息。


數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢