SlideShare una empresa de Scribd logo
1 de 28
大資料分析技術的濫觴
Hadoop MapReduce
莊家雋
1
接著,讓我們關注存、取、算
2
傳統計算機科學思維
• 有一個問題,找出一個答案
• 傳統的資料處理模式:集中式
• 讓電腦快一千倍,這個問題就解的出來
3
CPU
Mem
disk
CPU
Memory
disk
CPU
Memory
disk
磁碟陣列
新式計算機科學思維
• 有一堆資料,找出有用的情報
• 給我的資料多一千倍,這個問題才解得出來
• 以電腦翻譯為例:
– 傳統方法:字典 + 文法 + 例外
• 干货 vs. 乾貨 or 幹貨…
– 統計翻譯:比對同一文章之不同語語版本,建立統計
模式
• 以拼字校正為例:
– 傳統方法:建立字典
– Google法:看大家都怎麼打
4
大資料面臨的三個挑戰
5
大資料
的3V
Volume:
資料量非常龐大,
單獨的表格、電腦主機
、資料庫無法存放
Velocity:
資料產生的速度太快
,以致於系統無法即時
提供反應。
Variety:
不同的來源、格式、
類型,資料內容又
包含了不需要的成份。
解決Variety
6
大資料
的3V
Volume:
資料量非常龐大,
單獨的表格、電腦主機
、資料庫無法存放
Velocity:
資料產生的速度太快
,以致於系統無法即時
提供反應。
Variety:
不同的來源、格式、
類型,資料內容又
包含了不需要的成份。
資料來源不夠〝乾淨〞
• 讀取資料、清洗資料
– 非常無趣,且通常要花掉專案80%的時間,但又會影
響到分析的成果
7
無法預期的資料格式與內容
• 使用需事先定義好資料格式的方式不再適合
– 資料庫表格
• 自我描述的資料格式
– Key/value 型式的資料格式
– XML檔案, JSON檔案
– NoSQL HBase資料庫
8
如何透過分散式系統解決Volume
9
大資料
的3V
Volume:
資料量非常龐大,
單獨的表格、電腦主機
、資料庫無法存放
Velocity:
資料產生的速度太快
,以致於系統無法即時
提供反應。
Variety:
不同的來源、格式、
類型,資料內容又
包含了不需要的成份。
樣本 = 母體 時代來臨
• 整體的資料搜集困難,導致統計學的發展
• 抽樣的隨機性決定統計的正確性
• 當樣本 = 母體,要用來處理的資料通常都很大
10
當資料多出1000倍
• 如何儲存這麼多的資料
– 1000億個網頁
– 每個網頁大小20KB
– 1000億個網頁 * 20KB = 2000TB
• 讀個檔案都要讀到天荒地老
– 硬碟讀取速度:50MB/sec
– 讀完全部的網頁:40000000 秒 = 460天
• 更不用想要去處理它
11
一個便當吃不飽,可以吃二個
• 一台機器無法處理,就用多台機器同時處理
– 分散式系統
– 易於橫向擴充,scale-out
CPU
Memory
disk
CPU
Memory
disk
CPU
Memory
disk
CPU
Memory
disk
CPU
Memory
disk
CPU
Memory
disk
分散式系統的挑戰
• CAP定理
– 資料一致性:[C]onsistency
– 系統可用系:[A]vailability
– 分區容忍性:[P]artition Tolerance
• 全世界最大的廣告公司Google
– 提出GFS、MapReduce、BigTable等針對大資料應用
的分散式技術
13
自己打造一個分散式系統?
• 開發一個分散式系統很難
– 主機間如何溝通
– 系統的可靠性設計
– …
– 用人家寫好的很簡單
• Hadoop 生態系
– HDFS
– MapReduce
– HBase
– Hive…
14
分散式檔案系統:HDFS
• 在分散式的儲存環境裏,提供單一的目錄系統
• 每個檔案被分割成許多區塊並進行異地備份
15
HDFS檔案1 檔案2
分散式檔案系統:HDFS
• 移動運算到資料端比移動資料到運算端來的成本低
– 減少資料搬運
16
CPU
Memory
disk
磁碟陣
列
分散式運算系統:MapReduce
• 一個問題被分割之後而成的小問題。解決一個問題,
其實就是要解決其所有子問題。
• 分而治之,各個擊破
– 傳統方法
• 分而治之,”同時”各個擊破
– MapReduce
• Map:解決每個子問題
• Reduce:將子問題的解答做匯總
• 針對key/value的資料類型做分析
17
台灣最熱衷的全民運動
18
•台北市10個選區,共100萬票,要算出每個候選人的得票數
Id:A151
選2號 Id:B257
選5號
號次 票數
1 1
1 1
3 1
… …
號次 票數
2 1
1 1
… …
號次 票數
3 1
2 1
1 1
號次 票數
1 1
3 1
3 …
號次 票數
3 1
2 1
3 1
監票人1
[負責1區]
監票人2
[負責2區]
監票人3
[負責3區]
監票人4
[負責4區]
監票人5
[負責5區]
號次 票數
1 1
1 1
1 1
1 1
1 …
中選會
[負責 全部的候選人]
號次 票數
5 1
1 1
7 1
… …
號次 票數
2 1
1 1
… …
號次 票數
5 1
2 1
1 1
號次 票數
1 1
5 1
3 …
號次 票數
4 1
2 1
6 1
由各投開票所送到中選會
號次 票數
2 1
2 1
2 1
2 1
2 …
號次 票數
3 1
3 1
3 1
3 1
3 …
19
號次 總票數
1 187532
號次 總票數
2 574821
號次 總票數
3 237647
日誌分析 - Mapper
20
•(k1, v1)  list(k2, v2)
日誌分析 - Reducer
21
•(k2, list(v2))  (k3,v3)
凡事都有一個BUT
• 對已經存在的一大堆資料,提供一個有效的平行運算
機制
– 得到結果所需的時間不夠快
– 通常用在歷史資料分析
– 批次性處理
• 對於快速產生的資料無法立即回應
– 即時性處理
22
如何透過分散式系統解決Velocity
23
大資料
的3V
Volume:
資料量非常龐大,
單獨的表格、電腦主機
、資料庫無法存放
Velocity:
資料產生的速度太快
,以致於系統無法即時
提供反應。
Variety:
不同的來源、格式、
類型,資料內容又
包含了不需要的成份。
即時性資料處理
• 對於即時資訊、訊號需要立馬提供反應
24
步驟1 步驟2 步驟3 步驟4
主機1 主機2 主機3
主機4 主機5
即時處理遇上批次處理
• 由批次處理分析歷史資料
• 由即時處理做出快速回應
25
Yahoo!的PinBall系統
• 結合批次處理與即時處理的優點
– 批次推荐:找出消費者有興趣的產品
– 即時推荐:找出潛在的購買者
26
國網中心提供的服務
• 實體機器Hadoop平台
– HDFS、MapReduce、Hive、HBase
• 虛擬機器Hadoop平台:EasyCloud
• 建置與開發教育訓練
27
結語
• 大資料應用的重點在資料分析
• 不論是MapRedcue還是Excel,能找出潛在資訊的工
具就是好工具
• 當單一機器無法處理時,可以使用分散式系統的技術
幫助我們
• 國網中心提供Hadoop平台與教育訓練,提供國內學
研界與政府機構使用
28

Más contenido relacionado

La actualidad más candente

Hadoop Deployment Model @ OSDC.TW
Hadoop Deployment Model @ OSDC.TWHadoop Deployment Model @ OSDC.TW
Hadoop Deployment Model @ OSDC.TWJazz Yao-Tsung Wang
 
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法Jazz Yao-Tsung Wang
 
Hadoop 與 SQL 的甜蜜連結
Hadoop 與 SQL 的甜蜜連結Hadoop 與 SQL 的甜蜜連結
Hadoop 與 SQL 的甜蜜連結James Chen
 
Big data, big challenge- splunk 幫你解決 big data 議題帶來的挑戰
Big data, big challenge- splunk 幫你解決 big data 議題帶來的挑戰Big data, big challenge- splunk 幫你解決 big data 議題帶來的挑戰
Big data, big challenge- splunk 幫你解決 big data 議題帶來的挑戰Ching-Lin Tao
 
Hdfs introduction
Hdfs introductionHdfs introduction
Hdfs introductionbaggioss
 
Distributed Data Analytics at Taobao
Distributed Data Analytics at TaobaoDistributed Data Analytics at Taobao
Distributed Data Analytics at TaobaoMin Zhou
 
Hadoop与数据分析
Hadoop与数据分析Hadoop与数据分析
Hadoop与数据分析George Ang
 
Bigdata 大資料分析實務 (進階上機課程)
Bigdata 大資料分析實務 (進階上機課程)Bigdata 大資料分析實務 (進階上機課程)
Bigdata 大資料分析實務 (進階上機課程)家雋 莊
 
淘宝Hadoop数据分析实践
淘宝Hadoop数据分析实践淘宝Hadoop数据分析实践
淘宝Hadoop数据分析实践Min Zhou
 
Hadoop大数据实践经验
Hadoop大数据实践经验Hadoop大数据实践经验
Hadoop大数据实践经验Hanborq Inc.
 
准实时海量数据分析系统架构探究
准实时海量数据分析系统架构探究准实时海量数据分析系统架构探究
准实时海量数据分析系统架构探究Min Zhou
 
MapReduce 簡單介紹與練習
MapReduce 簡單介紹與練習MapReduce 簡單介紹與練習
MapReduce 簡單介紹與練習孜羲 顏
 
淺談台灣巨量資料產業發展現況
淺談台灣巨量資料產業發展現況淺談台灣巨量資料產業發展現況
淺談台灣巨量資料產業發展現況Jazz Yao-Tsung Wang
 
2014-10-17 探析台灣巨量資料產業供應鏈串聯現況
2014-10-17 探析台灣巨量資料產業供應鏈串聯現況2014-10-17 探析台灣巨量資料產業供應鏈串聯現況
2014-10-17 探析台灣巨量資料產業供應鏈串聯現況Jazz Yao-Tsung Wang
 
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 HadooperFred Chiang
 

La actualidad más candente (20)

Hadoop Deployment Model @ OSDC.TW
Hadoop Deployment Model @ OSDC.TWHadoop Deployment Model @ OSDC.TW
Hadoop Deployment Model @ OSDC.TW
 
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
 
Hadoop 與 SQL 的甜蜜連結
Hadoop 與 SQL 的甜蜜連結Hadoop 與 SQL 的甜蜜連結
Hadoop 與 SQL 的甜蜜連結
 
Big data, big challenge- splunk 幫你解決 big data 議題帶來的挑戰
Big data, big challenge- splunk 幫你解決 big data 議題帶來的挑戰Big data, big challenge- splunk 幫你解決 big data 議題帶來的挑戰
Big data, big challenge- splunk 幫你解決 big data 議題帶來的挑戰
 
Hdfs introduction
Hdfs introductionHdfs introduction
Hdfs introduction
 
Distributed Data Analytics at Taobao
Distributed Data Analytics at TaobaoDistributed Data Analytics at Taobao
Distributed Data Analytics at Taobao
 
Hadoop与数据分析
Hadoop与数据分析Hadoop与数据分析
Hadoop与数据分析
 
Bigdata 大資料分析實務 (進階上機課程)
Bigdata 大資料分析實務 (進階上機課程)Bigdata 大資料分析實務 (進階上機課程)
Bigdata 大資料分析實務 (進階上機課程)
 
Life of Big Data Technologies
Life of Big Data TechnologiesLife of Big Data Technologies
Life of Big Data Technologies
 
When R meet Hadoop
When R meet HadoopWhen R meet Hadoop
When R meet Hadoop
 
淘宝Hadoop数据分析实践
淘宝Hadoop数据分析实践淘宝Hadoop数据分析实践
淘宝Hadoop数据分析实践
 
Hadoop大数据实践经验
Hadoop大数据实践经验Hadoop大数据实践经验
Hadoop大数据实践经验
 
准实时海量数据分析系统架构探究
准实时海量数据分析系统架构探究准实时海量数据分析系统架构探究
准实时海量数据分析系统架构探究
 
Enterprise Data Lake in Action
Enterprise Data Lake in ActionEnterprise Data Lake in Action
Enterprise Data Lake in Action
 
Hdfs
HdfsHdfs
Hdfs
 
Hdfs
HdfsHdfs
Hdfs
 
MapReduce 簡單介紹與練習
MapReduce 簡單介紹與練習MapReduce 簡單介紹與練習
MapReduce 簡單介紹與練習
 
淺談台灣巨量資料產業發展現況
淺談台灣巨量資料產業發展現況淺談台灣巨量資料產業發展現況
淺談台灣巨量資料產業發展現況
 
2014-10-17 探析台灣巨量資料產業供應鏈串聯現況
2014-10-17 探析台灣巨量資料產業供應鏈串聯現況2014-10-17 探析台灣巨量資料產業供應鏈串聯現況
2014-10-17 探析台灣巨量資料產業供應鏈串聯現況
 
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
 

Destacado

Mes 實作 第一週
Mes 實作 第一週Mes 實作 第一週
Mes 實作 第一週信宏 陳
 
Mes 概論 第七週
Mes 概論 第七週Mes 概論 第七週
Mes 概論 第七週信宏 陳
 
Mes 概論 第九週
Mes 概論 第九週Mes 概論 第九週
Mes 概論 第九週信宏 陳
 
Mes 概論 第六周
Mes 概論 第六周Mes 概論 第六周
Mes 概論 第六周信宏 陳
 
Mes 概論 第八週
Mes 概論 第八週Mes 概論 第八週
Mes 概論 第八週信宏 陳
 
Mes 概論 第三週
Mes 概論   第三週Mes 概論   第三週
Mes 概論 第三週信宏 陳
 
Mes 分析 第二週
Mes 分析 第二週Mes 分析 第二週
Mes 分析 第二週信宏 陳
 
Mes 分析 第四週
Mes 分析 第四週Mes 分析 第四週
Mes 分析 第四週信宏 陳
 
Mes 概論 第四週
Mes 概論 第四週Mes 概論 第四週
Mes 概論 第四週信宏 陳
 
就職 創業 即戰力_20161214
就職 創業 即戰力_20161214就職 創業 即戰力_20161214
就職 創業 即戰力_20161214信宏 陳
 

Destacado (11)

Mes 實作 第一週
Mes 實作 第一週Mes 實作 第一週
Mes 實作 第一週
 
Mes 概論 第七週
Mes 概論 第七週Mes 概論 第七週
Mes 概論 第七週
 
Mes 概論 第九週
Mes 概論 第九週Mes 概論 第九週
Mes 概論 第九週
 
Mes 概論 第六周
Mes 概論 第六周Mes 概論 第六周
Mes 概論 第六周
 
Mes 概論 第八週
Mes 概論 第八週Mes 概論 第八週
Mes 概論 第八週
 
Mes 概論 第三週
Mes 概論   第三週Mes 概論   第三週
Mes 概論 第三週
 
Mes 分析 第二週
Mes 分析 第二週Mes 分析 第二週
Mes 分析 第二週
 
Mes 分析 第四週
Mes 分析 第四週Mes 分析 第四週
Mes 分析 第四週
 
Mes 概論 第四週
Mes 概論 第四週Mes 概論 第四週
Mes 概論 第四週
 
就職 創業 即戰力_20161214
就職 創業 即戰力_20161214就職 創業 即戰力_20161214
就職 創業 即戰力_20161214
 
Introducing MDSD
Introducing MDSDIntroducing MDSD
Introducing MDSD
 

Similar a 大資料分析技術的濫觴

系統資源使用思維
系統資源使用思維系統資源使用思維
系統資源使用思維YC Liang
 
一淘广告机器学习
一淘广告机器学习一淘广告机器学习
一淘广告机器学习Shaoning Pan
 
[科科營]資訊專題
[科科營]資訊專題[科科營]資訊專題
[科科營]資訊專題nctutlc2013
 
網路2.0時代情報蒐集術
網路2.0時代情報蒐集術網路2.0時代情報蒐集術
網路2.0時代情報蒐集術基欽 劉
 
Hadoop con 2015 hadoop enables enterprise data lake
Hadoop con 2015   hadoop enables enterprise data lakeHadoop con 2015   hadoop enables enterprise data lake
Hadoop con 2015 hadoop enables enterprise data lakeJames Chen
 
Introduction to big data
Introduction to big dataIntroduction to big data
Introduction to big dataYuHsuan Chen
 
Big Data Taiwan 2014 Track1-3: Big Data, Big Challenge — Splunk 幫你解決 Big Data...
Big Data Taiwan 2014 Track1-3: Big Data, Big Challenge — Splunk 幫你解決 Big Data...Big Data Taiwan 2014 Track1-3: Big Data, Big Challenge — Splunk 幫你解決 Big Data...
Big Data Taiwan 2014 Track1-3: Big Data, Big Challenge — Splunk 幫你解決 Big Data...Etu Solution
 
Introduction to big data
Introduction to big dataIntroduction to big data
Introduction to big data邦宇 叶
 
分布式缓存与队列
分布式缓存与队列分布式缓存与队列
分布式缓存与队列XiaoJun Hong
 

Similar a 大資料分析技術的濫觴 (10)

系統資源使用思維
系統資源使用思維系統資源使用思維
系統資源使用思維
 
一淘广告机器学习
一淘广告机器学习一淘广告机器学习
一淘广告机器学习
 
[科科營]資訊專題
[科科營]資訊專題[科科營]資訊專題
[科科營]資訊專題
 
網路2.0時代情報蒐集術
網路2.0時代情報蒐集術網路2.0時代情報蒐集術
網路2.0時代情報蒐集術
 
Hadoop con 2015 hadoop enables enterprise data lake
Hadoop con 2015   hadoop enables enterprise data lakeHadoop con 2015   hadoop enables enterprise data lake
Hadoop con 2015 hadoop enables enterprise data lake
 
毕业设计
毕业设计毕业设计
毕业设计
 
Introduction to big data
Introduction to big dataIntroduction to big data
Introduction to big data
 
Big Data Taiwan 2014 Track1-3: Big Data, Big Challenge — Splunk 幫你解決 Big Data...
Big Data Taiwan 2014 Track1-3: Big Data, Big Challenge — Splunk 幫你解決 Big Data...Big Data Taiwan 2014 Track1-3: Big Data, Big Challenge — Splunk 幫你解決 Big Data...
Big Data Taiwan 2014 Track1-3: Big Data, Big Challenge — Splunk 幫你解決 Big Data...
 
Introduction to big data
Introduction to big dataIntroduction to big data
Introduction to big data
 
分布式缓存与队列
分布式缓存与队列分布式缓存与队列
分布式缓存与队列
 

大資料分析技術的濫觴