書名: 精通Spark數據科學作者名: (美)安德魯·摩根 (英)安托萬·阿門德 大衛·喬治 馬修·哈利特本章字數: 718字更新時間: 2021-01-15 16:45:35
1.3 數據處理技術
Hadoop首次啟動時,Hadoop這個名稱指的是HDFS和MapReduce處理范式的結合,因為這一結合就是谷歌提出MapReduce時的原始框架。從那時起,有大量的技術被整合到Hadoop中。隨著Apache YARN的發展,像Spark這樣不同的范式處理軟件也開始出現。
Hadoop現在常常被作為大數據軟件棧的口語表述,因此本書將謹慎地界定軟件棧的范圍。本書將介紹的典型數據架構和所選技術如圖1-4所示。
圖1-4 典型數據架構和所選技術
這些技術之間的關系是相當復雜的,因為它們之間存在著復雜的相互依賴關系,例如,Spark依賴于GeoMesa,而GeoMesa依賴于Accumulo,而Accumulo又依賴于ZooKeeper和HDFS。因此,為了管理這些關系,出現了Cloudera、Hortonworks HDP以及類似的平臺。這些平臺提供了統一的用戶界面和集中配置。選擇何種平臺是用戶的自由,但建議不要先單獨安裝部分軟件然后再遷移到托管平臺上,因為這樣會遇到非常復雜的版本問題。在一臺“干凈”的機器上安裝會比較容易,在安裝前要確定技術類型。
本書使用的所有軟件都是與平臺無關的,因此可以適用于之前介紹的常規架構。這些軟件可以在不使用托管平臺的情況下獨立安裝,不論在單個還是多個服務器環境中使用都比較簡單。
Apache Spark的角色
Apache Spark是將這些組件組合在一起的“膠水”,它漸漸成為軟件棧的中心,集成了各種各樣的組件但并不使用“硬連線”連接它們。實際上,你甚至能將底層存儲機制替換掉。將這一功能與利用不同框架的能力相結合,意味著最初的Hadoop技術實際上是組件而不是框架。架構的邏輯如圖1-5所示。
圖1-5 架構邏輯
Spark的發展迅猛,并獲得許多行業的認可,很多針對不同組件的原始Hadoop實現已經對Spark進行了重構。這使圖1-5所示的架構邏輯更加復雜了,如利用特定組件通常有幾種不同的可用編程方式,尤其是命令式和聲明式版本,這取決于API是否已從原始Hadoop Java實現中移植。在后面的章節中,本書將盡可能保持Spark的風格。
- Mastering Proxmox(Third Edition)
- Managing Mission:Critical Domains and DNS
- Python Artificial Intelligence Projects for Beginners
- 空間機器人遙操作系統及控制
- Learning Apache Spark 2
- TIBCO Spotfire:A Comprehensive Primer(Second Edition)
- Hands-On Data Science with SQL Server 2017
- Hands-On Linux for Architects
- Implementing Oracle API Platform Cloud Service
- PVCBOT機器人控制技術入門
- Extending Ansible
- 基于ARM9的小型機器人制作
- 計算機組裝與維修實訓
- 常用傳感器技術及應用(第2版)
- 機器人制作入門(第4版)