認識大數據的黃色小象幫手 –– Hadoop

繼雲端運算(Cloud Computing)之後,大數據(Big Data)接棒成為最熱門的科技潮字,和大數據有關的技術和科技接二連三成為科技圈注目的焦點,如果你也關注雲端跟大數據的資訊,Hadoop 這個字出現頻率一定挺高的,這個黃色小象 Logo 也應該經常亮相。究竟 Hadoop 是什麼?能夠用來解決什麼問題?又為什麼重要?
評論
評論

繼雲端運算(Cloud Computing)之後,大數據(Big Data)接棒成為最熱門的科技潮字,和大數據有關的技術和科技接二連三成為科技圈注目的焦點。如果你也關注雲端跟大數據的資訊,Hadoop 這個字出現頻率一定挺高的,這個黃色小象 Logo 也應該經常亮相。

yahoo網路行銷logo for inside

本文由 Yahoo 奇摩贊助。

hadoop-pic1

究竟 Hadoop 是什麼?能夠用來解決什麼問題?又為什麼重要?比起解釋一大堆技術上的細節,倒不如從 Hadoop 處理巨量資料的角度切入了解,看 Hadoop 能夠帶來什麼好處,同時也從這個方向反過來理解大數據。

Hadoop 簡史:黃色小象的由來

Hadoop 的雛形 Nutch 最初是由 Doug Cutting 和 Mike Cafarella 針對網頁相關的資料搜尋而開發,2006 年 Doug Cutting 進入 Yahoo 後成立了專業的團隊繼續研究發展這項技術,正式命名為 Hadoop。

Hadoop 這個名稱並不代表任何英文字彙或者縮寫代號,「Hadoop」來自於 Doug Cutting 兒子的一個黃色大象填充玩具 1,主要原因是開發過程中他需要為這套軟體提供一個代號方便溝通,而 Hadoop 這個名字發音簡單拼字容易,且毫無意義、也沒有在任何地方使用過,因此雀屏中選,黃色小象也因而成為 Hadoop 的標誌。

值得一提的是,在 Hadoop 之後所發展的幾個相關軟體和模組也都參考了這樣的命名方式,名稱不會與主要功能實際相關,而是採用與大象或其他動物有關的名稱作為其開發代號,像是 Pig、Hive、ZooKeeper 等等。

什麼是 Hadoop?

首先,想像有個檔案大小超過 PC 能夠儲存的容量,那便無法儲存在你的電腦裡,對吧?

Hadoop 不但讓你儲存超過一個伺服器所能容納的超大檔案,還能同時儲存、處理、分析幾千幾萬份這種超大檔案,所以每每提到大數據,便會提到 Hadoop 這套技術。

簡單來說,Hadoop 是一個能夠儲存並管理大量資料的雲端平台,為 Apache 軟體基金會底下的一個開放原始碼、社群基礎、而且完全免費的軟體,被各種組織和產業廣為採用,非常受歡迎。

然而要懂 Hadoop,你必須先了解它最主要的兩項功能:

  1. Hadoop 如何儲存資料(Store)
  2. Hadoop 怎麼處理資料(Process)

Forrester 分析師 Mike Gualtieri 曾錄製一段六分鐘的影片講解 Hadoop2,十分簡要易懂:

分散式檔案系統 HDFS

Hadoop 是一個叢集系統(cluster system),也就是由單一伺服器擴充到數以千計的機器,整合應用起來像是一台超級電腦。而資料存放在這個叢集中的方式則是採用 HDFS 分散式檔案系統(Hadoop Distributed File System)。

HDFS 的設計概念是這樣的,叢集系統中有數以千計的節點用來存放資料,如果把一份檔案想成一份藏寶圖,機器中會有一個機器老大(Master Node)跟其他機器小弟(Slave/Worker Node),為了妥善保管藏寶圖,先將它分割成數小塊(block),通常每小塊的大小是 64 MB,而且把每小塊拷貝成三份(Data replication),再將這些小塊分散給小弟們保管。機器小弟們用「DataNode」這個程式來放藏寶圖,機器老大則用「NameNode」這個程式來監視所有小弟們藏寶圖的存放狀態。

如果老大的程式 NameNode 發現有哪個 DataNode 上的藏寶圖遺失或遭到損壞(例如某位小弟不幸陣亡,順帶藏寶圖也丟了),就會尋找其他 DataNode 上的副本(Replica)進行複製,保持每小塊的藏寶圖在整個系統都有三份的狀態,這樣便萬無一失。

透過 HDFS,Hadoop 能夠儲存上看 TB(Tera Bytes)甚至 PB(Peta Bytes)等級的巨量資料,也不用擔心單一檔案的大小超過一個磁碟區的大小,而且也不用擔心某個機器損壞導致資料遺失。

來看看 Yahoo 的 Hadoop cluster 系統:

MapReduce 平行運算架構

上一段提到,HDFS 將資料分散儲存在 Hadoop 電腦叢集中的數個機器裡,現在我們要談談 Hadoop 如何用 MapReduce 這套技術處理這些節點上的資料。

在函數程式設計(Functional programming)3 中很早就有了 Map(映射)和 Reduce(歸納)的觀念,類似於演算法中個別擊破(Divide and Conquer)的作法,也就是將問題分解成很多個小問題之後再做總和。

MapReduce 顧名思義是以 Map 跟 Reduce 為基礎的應用程式。一般我們進行資料分析處理時,是將整個檔案丟進程式軟體中做運算出結果,而面對巨量資料時,Hadoop 的做法是採用分散式計算的技術處理各節點上的資料。

在各個節點上處理資料片段,把工作分散、分佈出去的這個階段叫做 Mapping;接下來把各節點運算出的結果直接傳送回來歸納整合,這個階段就叫做 Reducing。這樣多管齊下、在上千台機器上平行處理巨量資料,可以大大節省資料處理的時間。

黃色小象以及小象的朋友們

總和來看,Hadoop 透過 HDFS 和 MapReduce 這兩項核心功能,解決了檔案存放的問題、解決了系統擴張的問題、解決了系統備份的問題、解決了資料處理的問題,非常適合應用於大數據儲存和大數據分析,因此被廣泛接受成為大數據的主流技術。

當然 Hadoop 並沒有解決所有巨量資料帶來的難題,所以許多與 Hadoop 相關的技術被開發來應付巨量資料的其他需求 4。像是用來處理資料的 Script 語言「Pig」、類似 SQL 語法查詢功能的「Hive」、專門用在 Hadoop 上的資料庫系統「HBase」等。

Hadoop 生態系:

對 Hadoop 有初步的認識後,如果想進一步學習相關的大數據技術,可以參考 《成為大數據時代的精英學子:Big Data 的推薦好課!》 一文,其中列出了許多線上的 Hadoop 推薦好課。

 

<h3> 歡迎加入"Inside" Line 官方帳號,關注最新創業、科技、網路、工作訊息</h3>
<a href="https://line.me/ti/p/%40paq1370n"><img src="http://biz.line.naver.jp/line_business/img/btn/addfriends_zh-Hant.png" alt=" 好友人數" height="36″ border="0″ /></a>

<img src="http://qr-official.line.me/L/2Rc147bThe.png" alt="" />


洞見機會,創新未來──新創如何用雲端打出一手好牌:AWS Startup Day 7 月 15 日線上重磅回歸

AWS Startup Day 即將於 7 月 15 日重磅回歸,此次不只聚焦新創趨勢與數位應用,更聯合 AWS 創投新創媒合會,提供參與者豐富的資源,所有與新創生態系相關的夥伴都不容錯過。
評論
Photo Credit:AWS
評論

隨著 Web3.0 去中心化的趨勢開展與現在進行式的產業數位轉型浪潮,雲端技術早已成為許多早期新創發展產品或服務的關鍵金鑰,甚至為其奠定高速發展的穩健根基。而台灣雲端服務供應龍頭 AWS(亞馬遜網路服務公司)更自 Web2.0 時代開始就從未缺席,始終在技術新知、應用實務等方方面面致力支持新創,其中最具代表性的免費論壇活動──AWS Startup Day 也即將於今年 7 月 15 日重磅回歸,在線上和參與者相會!

今年度 AWS Startup Day 持續聚焦新創趨勢與數位應用,精心規劃八場新創專題演說,非常適合長期關注新創生態系統的相關人士,或是正要起步、成長的新創夥伴報名參加。

立即報名 2022 AWS Startup Day!

五大特色議程安排,給你滿滿新創觀點與技術乾貨

Photo Credit:AWS

「新創如何運用雲端科技打出一手好牌,投注資源延續未來業務?」這是今年 AWS Startup Day 欲探討的核心議題之一。為解答雲端科技之於新創企業的珍貴價值,AWS 以「國際市場」、「創投趨勢」、「多元創業」、「雲端技術」、「焦點產業」等五大特色精心規劃講座內容,完整收錄新創趨勢脈動、雲端技術實務、佈局策略觀點與創投媒合等新創事業歷程的重要節點。為此,AWS 不只力邀 Web3.0、電商、串流、B2B 解決方案等不同領域的新創合作夥伴,分享選擇 AWS 開展新創事業的策略考量,更毫不藏私地解析雲端技術如何快速又穩定的開拓事業。

Photo Credit:AWS

無論新創還是育成,想要洞見機會就不能錯過 AWS Startup Day

Photo Credit:AWS

任何產業或技術的發展,不單要前人的引領,也需要後繼者無窮盡的創新思維與打破框架的勇氣,缺乏其中一個環節,生態系都無法平衡永續。所以無論是天使創投、孵化器,還是剛起步或處於早期新創的企業,只要你身為新創生態系統中的一份子,渴望尋求創意突破或開展新興業務,AWS Startup Day 都是你絕對不能錯過的最佳活動。

填單取得 2022 AWS Startup Day 免費入場券!

尋找下一個新創獨角獸──同場加映 AWS 年度創投新創媒合會

本次 AWS Startup Day 除新創及創投相關講座外,AWS 更直接邀請多家國際及台灣知名創投公司,與 AWS Startup Day 同場舉辦今年度唯一的線上「新創創投媒合會」,欲透過串聯本地深具潛力的新創與創投,幫助台灣新創企業獲得更豐富的資源,孕育下一個獨角獸。

根據 AWS 釋出的消息,媒合會將以早期天使輪或 Pre-A 輪融資為主,重點關注 AI/ML工具和平台、智能零售、MarTech、Web3.0、媒體和娛樂等產業,並以快速輪流的形式替新創獲得最大的曝光。

立即報名 2022 AWS Startup Day,共構台灣新創生態系統!