認識大數據的黃色小象幫手 –– 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="" />


【社會數位轉型】連假出門不塞車、推動漁港再生,經濟部打造永續交通生態圈

智慧運輸時代來臨,全球競相投入無人載具與數位交通研發,希望在未來行動力的佈局搶得先機。從陸地、海洋到空中,無人機以整合 AI、5G 技術為核心,應用場域超乎想像,不僅能帶動產業升級與經濟成長,在解決社會問題上也有許多可能性。
評論
Photo Credit:Pexels
評論

聯合國預估,2030 年全球將出現 43 個人口超過千萬的巨型城市,而 2050 年將有 7 成人口居住於都市。城市人口密度持續增加,為交通帶來更大考驗,需要用更有效率的方式來管理。而在臺灣常見因車流量過大造成塞車、事故頻傳,以及偏鄉交通不便、公共運輸使用吸引不足、燃油車輛帶來環境污染等問題,也可望透過發展智慧交通迎刃而解。雖然短時間內還無法真正落地、普及,但種種想像已顯現出智慧運輸系統(Intelligent Transport System,ITS)的重要性。

智慧運輸科技是一門跨領域的技術,包括 7 大關鍵新興科技 iABCDEF 中的i(IoT,物聯網)、A(AI,人工智慧)、D(數據科技,DataTech)、E(邊緣運算,Edge Computing),並涵蓋資通訊、能源與電子等產業。面對接踵而來的挑戰,經濟部技術處與工業局合作,配合交通部、科技部、工研院、資策會等跨部會單位,關注企業與民眾的需求缺口,擴大各項交通科技創新服務的實驗場域。希望加速資通訊及智慧交通應用落地,推動產業轉型與數位經濟發展,更處理公共議題,建立更好的居住環境。

交通車載設備一站式整合 為國內實現物物相聯

未來在 5G 環境下,物聯網能讓各種設備、軟體、網路服務等更快速的相互連結,透過虛實整合應用與民眾進行深度互動,達成高速運算、低延遲通訊、萬物聯網的目標,這也是目前持續發展如智慧交通、自駕車所必備的條件。

當交通與運輸更加智慧化,將為國內業者帶來新商機,相關產業鏈例如雲端軟體服務、影像辨識與人工智慧分析、路側設備業、道路安全警示以及周邊的系統整合、工程顧問、二輪車安全聯網等,都是發展智慧交通智慧系統重要的環節,而智慧交通控制服務也是相當重要的一環,當交通號誌的紅綠燈控制做最有效的安排時,將可使路網中的車流運行更加順暢,也能減少更多的廢氣與碳排放的產生。

資策會智慧系統研究所(系統所)組長黃暉慈指出,發展一站式整合的關鍵之一在於道路上的路側設備(Roadside Unit,RSU)與安裝在車內的車載裝置(On Board Unit,OBU)兩者間的跨設備溝通,過去常因各家技術及介面規格不一、各類型設備分屬不同廠商維護、跨部門協調等原因難以整合,若要產生對民眾更具價值的應用相對是一大難題。

以建立永續智慧交通環境為目標,經濟部技術處匯集各法人能量,致力於運輸資源、資訊的整合共享,提升協作效能。

「比方說像各縣市智慧公車站牌就都長得不一樣,以及路側設備分屬不同部門管理:如交通局的號誌、工務局路燈管理處的路燈、警察局的 CCTV 等等,設備跟服務多為各單位獨立運作,資源無法進行有效的整合」黃暉慈表示。因此,為提升協作效率最佳化,經濟部技術處與資策會系統所合作,發展多元資訊的智慧交通作業系統,以建立共通平台之概念,打破廠商之間的資訊串接藩籬並能協同合作,減少資料使用者、管理者必須面對不同格式資料的困擾,以達成資訊交流的通透性與共享目的。

黃暉慈說明,智慧交通作業系統(Transport OS,TOS)是一套能整合各項遠端設備的管理平台,透過 TOS 函式庫讓程式介接、遠端佈署與應用開發都變得更簡單。「我們希望藉由一套共通的標準格式進行資料的收集,協助業者在設備管理、資料管理、資料分析上都能更加簡易有效率。」經由系統的整合,能自動化遠端監控路側設備的運行狀態,偵測錯誤並通知管理者,並以AI感測蒐集車輛、事故等應用數據。「省下開發系統和串接的功夫,業者能專注在設備功能的強化。」經濟部計畫透過整合性資訊服務,改善當今運輸走廊壅塞問題,未來國內車廠在技術發展上也能突破國外母廠的限制,打造出門無縫、用路安全、交通順暢的智慧運輸系統。

黃暉慈舉例,假如 CCTV 的監控影像出現雜訊、模糊、被遮蔽或鏡頭偏移,或工業電腦網路斷線等異常發生,系統都能即時發現問題,發出警示,「本系統具備彈性擴充功能,可協助業者介接提供更多加值應用,例如接入 RTSP 串流影像也能做到如智慧化判斷車輛是否違停的科技執法應用。」此外,TOS 的另一特色就是會將蒐集到的數據生成可視化圖表,有效地傳遞資訊,以利使用者能迅速評估狀況、做出因應。

Photo Credit:資策會

提升船舶監測效率 給予閒置港岸新生命

除了陸地的交通,海洋也是智慧運輸科技的發展重點。資策會系統所蔡政鴻組長分析,臺灣四面環海、海岸線長達 1,000 多公里,每年海洋經濟產值高達近 6 千億,「物流、漁業之外,還有觀光娛樂,光是用漁船載客出海磯釣每年就可賺超過百億,把安全性做好會很有市場。」

資策會系統所在經濟部技術處科技專案的支持下,採納百家以上產官學研機構與專家的建議,以海港數位轉型需求的高可靠邊霧協作物聯網技術為主,規劃「近岸船舶監測系統」,與相關業者、海巡隊合作,加強港岸船舶的管理效率。

蔡政鴻說,過去在智慧漁港常常做的是智慧照明,當然智慧照明在節能與管理上有很多好處,但除了漁港好像放在其他地方也很好,對於漁港的特色比較沒有凸顯出來。現在漁港面臨的問題是利用度不高,漁港資產閒置,最主要原因是來自過度捕撈,導致海裡無魚可抓,因此產生閒置問題,海洋資源的永續是主要的解決方法,除了生態保育,另一個是漁業漁港的轉型,從過去過度捕撈的抓來吃,轉型到生態體驗的旅遊價值,傳統漁業要轉型到娛樂漁業,發揮觀光旅遊的價值,從中帶來收入,魚就不用補那麼多,海洋資源才可永續。美國的漁業統計,休閒釣魚的經濟效益是商業捕魚的九倍,因此休閒釣魚的發展,其實是可以取代商業捕魚的部分經濟能量,進而減少捕撈。

以基隆市政府為例,2017 年便率先制定娛樂漁業島礁磯釣自治條例,管理認證核發與收費標準,並陸續導入科技管理工具,以船舶自動識別系統(Automatic Identification System,AIS)對磯釣船舶實施監測,採用邊霧運算技術,藉由與鄰近船舶、衛星等設備交換資料,當磯釣船訊號消失或離岸太遠,就會發出警示,建立數位治理機制,確保磯釣活動的安全戒護工作落實,保障業者與釣客的活動安全。另外磯釣證申辦,過去都要上班時間臨櫃申辦,造成不便。現在將磯釣證上網申辦,結合磯釣船出船單,送到漁港的海巡安檢流程,到磯釣船舶的海上航跡訊號勾稽,完成一套完整的服務鏈路,讓安全與方便形成基隆磯釣發展的重要後盾。使過去出海捕魚轉變成載客釣魚,減少捕撈,生態得以生息,漁民也有生計,還帶動釣具產業的發展。

其實智慧交通早已悄悄融入在日常生活,我們對數位票證的依賴度不斷增加,新零售時代的物流配送越來越快速。然而各種進步將可能衝擊原有的就業市場,該如何引導人才轉型也是重要的社會課題。

且讓我們試著想像,在交通的流動中,有出門運動、買菜的銀髮族,有通勤的白領上班族,有趕著上學的學生與接送孩子的父母,每個人的移動需求都能被滿足。經濟部技術處期望從技術專業角度,協助打造更人性化、友善的交通環境;同時,企業也能從競爭轉為合作,共同為產業創新轉型與減少污染的社會企業責任努力,創造更多就業機會;政府也能減少治理、管理的成本,持續優化交通運輸系統,形成社會美好的循環。