官术网_书友最值得收藏!

  • 精通Spark數據科學
  • (美)安德魯·摩根 (英)安托萬·阿門德 大衛·喬治 馬修·哈利特
  • 718字
  • 2021-01-15 16:45:35

1.3 數據處理技術

Hadoop首次啟動時,Hadoop這個名稱指的是HDFS和MapReduce處理范式的結合,因為這一結合就是谷歌提出MapReduce時的原始框架。從那時起,有大量的技術被整合到Hadoop中。隨著Apache YARN的發展,像Spark這樣不同的范式處理軟件也開始出現。

Hadoop現在常常被作為大數據軟件棧的口語表述,因此本書將謹慎地界定軟件棧的范圍。本書將介紹的典型數據架構和所選技術如圖1-4所示。

1-4

圖1-4 典型數據架構和所選技術

這些技術之間的關系是相當復雜的,因為它們之間存在著復雜的相互依賴關系,例如,Spark依賴于GeoMesa,而GeoMesa依賴于Accumulo,而Accumulo又依賴于ZooKeeper和HDFS。因此,為了管理這些關系,出現了Cloudera、Hortonworks HDP以及類似的平臺。這些平臺提供了統一的用戶界面和集中配置。選擇何種平臺是用戶的自由,但建議不要先單獨安裝部分軟件然后再遷移到托管平臺上,因為這樣會遇到非常復雜的版本問題。在一臺“干凈”的機器上安裝會比較容易,在安裝前要確定技術類型。

本書使用的所有軟件都是與平臺無關的,因此可以適用于之前介紹的常規架構。這些軟件可以在不使用托管平臺的情況下獨立安裝,不論在單個還是多個服務器環境中使用都比較簡單。

Apache Spark的角色

Apache Spark是將這些組件組合在一起的“膠水”,它漸漸成為軟件棧的中心,集成了各種各樣的組件但并不使用“硬連線”連接它們。實際上,你甚至能將底層存儲機制替換掉。將這一功能與利用不同框架的能力相結合,意味著最初的Hadoop技術實際上是組件而不是框架。架構的邏輯如圖1-5所示。

1-5

圖1-5 架構邏輯

Spark的發展迅猛,并獲得許多行業的認可,很多針對不同組件的原始Hadoop實現已經對Spark進行了重構。這使圖1-5所示的架構邏輯更加復雜了,如利用特定組件通常有幾種不同的可用編程方式,尤其是命令式和聲明式版本,這取決于API是否已從原始Hadoop Java實現中移植。在后面的章節中,本書將盡可能保持Spark的風格。

主站蜘蛛池模板: 衡东县| 沙雅县| 平江县| 旌德县| 隆回县| 辉南县| 南宁市| 武穴市| 牙克石市| 醴陵市| 和硕县| 桦甸市| 织金县| 金山区| 安龙县| 阿巴嘎旗| 太湖县| 刚察县| 天等县| 永新县| 延川县| 怀仁县| 苏尼特左旗| 龙门县| 那坡县| 郓城县| 河津市| 太原市| 泸定县| 郴州市| 龙门县| 弥渡县| 江城| 凤城市| 杭州市| 庄浪县| 民乐县| 萨迦县| 康马县| 富民县| 宁远县|