Alan Tsai 的學習筆記


學而不思則罔,思而不學則殆,不思不學則“網貸” 為現任微軟最有價值專家 (MVP)、微軟認證講師 (MCT) 、Blogger、Youtuber:記錄軟體開發的點點滴滴 著重於微軟技術、C#、ASP .NET、Azure、DevOps、Docker、AI、Chatbot、Data Science

[Data Science 到底是什麼從一個完全外行角度來看][12]Hadoop總結(下篇) - 一切才剛剛開始

image
圖片來源: https://pixabay.com/en/books-spine-colors-pastel-1099067/https://pixabay.com/en/math-blackboard-education-classroom-1547018/

上一篇(11]Hadoop總結(上篇) - 一切才剛剛開始)介紹了Hadoop的Ecosystem之後,了解到有很多package建立在Hadoop上面。

不過一個問題會浮現出來,這門多package,怎麼讓他們互相溝通沒有問題?畢竟版本和版本之間很有可能會有相容性問題。

這就是Hadoop Distribution的作用,一些整理好包成一包的Hadoop Ecosystem,有些distribution還包括一些管理界面讓整個管理變得更加簡單。

Hadoop Distribution

當透過這系列的介紹方式把Hadoop POC做完了之後,當真的要測試的時候肯定不是用這種方式管理,而是用Hadoop Distribution。

基本上Hadoop Distribution可以把它想象成一個solution package - 把多個Ecosystem套件組合在一起變成一個完整的package,讓安裝和使用變得簡單。

這邊快速介紹3+1個這種Distribution:

  1. Cloudera's Distribution include Apache Hadoop (CDH) - Linux
  2. Hortonworks Data Platform (HDP) - Linux and Windows
  3. Syncfusion Big Data Platform - Linux and Windows
  4. Microsoft Azure HDInsight - 微軟雲端的big data solution

快速總結Distribution的差異

CDHHDPSBDPHDInsight
支援的OSLinuxWindows、LinuxWindows、LinuxNA - 在Azure雲端
是否需要收費?免費免費符合條件免費 - 收費收費
是否有客制管理界面?沒有有 - Azure管理界面
建議使用情境如果在Linux環境如果在Windows並且需要免費

如果在Windows並且願意付費。

如果剛開始在Windows學習Hadoop,建議從這個開始,因為安裝和管理界面很容易使用,並且如果符合Community License也是免費。

如果沒有機器但是又想測試Hadoop

接下來會在更深入一些介紹這些Distribution。

Cloudera's Distribution include Apache Hadoop (CDH)

CDH貌似是最早做這種Distribution的機構,基本概念很簡單,整合這些Ecosystem的package在一包裡面並且提供一個管理界面方便管理cluster和這些package。

從下圖可以看到整個CDH提供的服務和內容:

image
CDH的架構。來源:https://www.cloudera.com/documentation/enterprise/latest/topics/cdh_intro.html

CDH是免費的,不過cloudera也有提供Enterprise服務,也就是收費的服務。基本上就是CDH加上更多管理面和一些Technical Support。

CDH 只支援 Linux,所以如果在Windows就別想了。

參考資料
  1. Overview: CDH Overview
  2. 有支援的OS:CDH 5 and Cloudera Manager 5 Requirements and Supported Versions
  3. 快速測試的下載鏈接:CDH 5.12 Quick Start Download
  4. 快速測試的文件:Cloudera Manager and CDH QuickStart Guide

Hortonworks Data Platform (HDP)

image
Hortonworks Logo

HDP可以說是最早有支援Windows的Distribution,後面提到的Azure HDInsight內部執行的就是HDP。

HDP可以說是把很多opensource package整合在一起的Distribution,所以不像cloudera那樣有自己的管理界面,而是用Ambari(也是一個open source的package)。

image
整個架構

HDP支援Windows和Linux。

參考資料
  1. Overview介紹:鏈接 - 對於每個Package有對應說明
  2. 下載Sandbox VM做測試:GET STARTED WITH HORTONWORKS SANDBOX

Syncfusion Big Data Platform

image
Syncfusion的logo

Syncfusion最出名應該是有提供一些免費的ebook叫做Succinctly系列,用短短篇幅介紹一些技術,同時對於Windows的開發有提供很多好用的套件可以快速上手。因此在這邊介紹的Distribution裡面以Windows開發者來說是最親民。

Syncfusion Big Data Platform (下面簡稱SBDP) 是這3個裡面最年輕的Distribution,不過個人認為至少在Windows平台下是最容易操作的一個。

SBDP有包含一個BigData Studio,裡面用tab的方式能夠切換不同的Package,並且有一個界面可以看到這些Package的Service是否有啟動,這個操作起來非常的直覺。

image
BigData Studio的截圖

SBDP支援Windows和Linux,如果需要在Windows開發個人建議從SBDP做嘗試。

SBDP有提供Community的版本,所以在測試上面是免費,不過如果用在Production如果不符合Community License就會需要一筆費用。

參考資源
  • 首頁介紹:鏈接
  • 下載鏈接(需要先註冊帳號):鏈接
  • 操作手冊:鏈接

Azure HDInsight

Azure HDInsight不算是Distribution,是微軟Azure上面的一個Hadoop as Service的概念。因此,如果沒有機器但是想要測試Hadoop,可以考慮用Azure HDInsight。

整個Azure HDInsight底層其實就是Hortonworks的HDP。

基本上拆成了兩塊:

  1. HDInsight - 屬於運算的部分(可以理解MapReduce執行的部分)
  2. Azure Storage - HDFS的部分

所以儲存和運算可以分開,由於HDInsight比較貴,因此可以先把資料上傳到Azure Storage(Storage和HDInsight比相對便宜呢多),等到需要執行運算的時候在啟動HDInsight。

image
架構

參考資料

一切才剛剛開始 - Data Engineer之路

Data Engineer屬於Data Sciencist的分支的一個部分,主要在做的工作就是專注于在資料儲存這一塊。

因此如果對於Hadoop和整個Ecosystem的管理、維護及使用非常有興趣,那麼可以繼續往下鑽研並且可以找Data Engineer相關的工作。

結語

這個系列關於Data底層儲存就介紹到這邊了,希望對於要往下鑽研能夠提供一個足夠的基礎,至少往下看的時候不會完全看不懂。

之前做的Hadoop VM先不要刪,後面介紹R的時候會介紹R如何和Hadoop接。所以如果到時候要跟著做的話會需用到。

接下來將會開始到下一個階段([13]Data的運用 - 介紹篇),也就是實際對資料的理解、運用到最後建立出預測模型。


如果文章對您有幫助,就請我喝杯飲料吧
街口支付QR Code
街口支付QR Code
台灣 Pay QR Code
台灣 Pay QR Code
Line Pay 一卡通 QR Code
Line Pay 一卡通 QR Code
街口支付QR Code
支付寶QR Code
街口支付QR Code
微信支付QR Code
comments powered by Disqus