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

Más contenido relacionado

La actualidad más candente

Hadoop与数据分析
Hadoop与数据分析Hadoop与数据分析
Hadoop与数据分析George Ang
 
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法Jazz Yao-Tsung Wang
 
Hadoop Deployment Model @ OSDC.TW
Hadoop Deployment Model @ OSDC.TWHadoop Deployment Model @ OSDC.TW
Hadoop Deployment Model @ OSDC.TWJazz Yao-Tsung Wang
 
Hdfs introduction
Hdfs introductionHdfs introduction
Hdfs introductionbaggioss
 
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 HadooperFred Chiang
 
淺談台灣巨量資料產業發展現況
淺談台灣巨量資料產業發展現況淺談台灣巨量資料產業發展現況
淺談台灣巨量資料產業發展現況Jazz Yao-Tsung Wang
 
參考講義展示版-丘祐瑋-20170617-機器學習python入門者課程
參考講義展示版-丘祐瑋-20170617-機器學習python入門者課程參考講義展示版-丘祐瑋-20170617-機器學習python入門者課程
參考講義展示版-丘祐瑋-20170617-機器學習python入門者課程Beckett Hsieh
 
Google BigQuery introduction
Google BigQuery introductionGoogle BigQuery introduction
Google BigQuery introductionSimon Su
 
聚类 (Clustering)
聚类 (Clustering)聚类 (Clustering)
聚类 (Clustering)Yueshen Xu
 
2014-10-17 探析台灣巨量資料產業供應鏈串聯現況
2014-10-17 探析台灣巨量資料產業供應鏈串聯現況2014-10-17 探析台灣巨量資料產業供應鏈串聯現況
2014-10-17 探析台灣巨量資料產業供應鏈串聯現況Jazz Yao-Tsung Wang
 
Hadoop 與 SQL 的甜蜜連結
Hadoop 與 SQL 的甜蜜連結Hadoop 與 SQL 的甜蜜連結
Hadoop 與 SQL 的甜蜜連結James Chen
 
Spark Introduction
Spark IntroductionSpark Introduction
Spark IntroductionKevin Zhang
 
資料分析的前奏曲 談資料收集的挑戰
資料分析的前奏曲   談資料收集的挑戰資料分析的前奏曲   談資料收集的挑戰
資料分析的前奏曲 談資料收集的挑戰Shih-En Chou
 

La actualidad más candente (20)

Hadoop与数据分析
Hadoop与数据分析Hadoop与数据分析
Hadoop与数据分析
 
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
 
Hadoop Deployment Model @ OSDC.TW
Hadoop Deployment Model @ OSDC.TWHadoop Deployment Model @ OSDC.TW
Hadoop Deployment Model @ OSDC.TW
 
Hdfs introduction
Hdfs introductionHdfs introduction
Hdfs introduction
 
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
 
Hdfs
HdfsHdfs
Hdfs
 
Hdfs
HdfsHdfs
Hdfs
 
Life of Big Data Technologies
Life of Big Data TechnologiesLife of Big Data Technologies
Life of Big Data Technologies
 
淺談台灣巨量資料產業發展現況
淺談台灣巨量資料產業發展現況淺談台灣巨量資料產業發展現況
淺談台灣巨量資料產業發展現況
 
Hadoop hive
Hadoop hiveHadoop hive
Hadoop hive
 
Enterprise Data Lake in Action
Enterprise Data Lake in ActionEnterprise Data Lake in Action
Enterprise Data Lake in Action
 
參考講義展示版-丘祐瑋-20170617-機器學習python入門者課程
參考講義展示版-丘祐瑋-20170617-機器學習python入門者課程參考講義展示版-丘祐瑋-20170617-機器學習python入門者課程
參考講義展示版-丘祐瑋-20170617-機器學習python入門者課程
 
Google BigQuery introduction
Google BigQuery introductionGoogle BigQuery introduction
Google BigQuery introduction
 
聚类 (Clustering)
聚类 (Clustering)聚类 (Clustering)
聚类 (Clustering)
 
2014-10-17 探析台灣巨量資料產業供應鏈串聯現況
2014-10-17 探析台灣巨量資料產業供應鏈串聯現況2014-10-17 探析台灣巨量資料產業供應鏈串聯現況
2014-10-17 探析台灣巨量資料產業供應鏈串聯現況
 
When R meet Hadoop
When R meet HadoopWhen R meet Hadoop
When R meet Hadoop
 
Hadoop 與 SQL 的甜蜜連結
Hadoop 與 SQL 的甜蜜連結Hadoop 與 SQL 的甜蜜連結
Hadoop 與 SQL 的甜蜜連結
 
Spark Introduction
Spark IntroductionSpark Introduction
Spark Introduction
 
Hash算法
Hash算法Hash算法
Hash算法
 
資料分析的前奏曲 談資料收集的挑戰
資料分析的前奏曲   談資料收集的挑戰資料分析的前奏曲   談資料收集的挑戰
資料分析的前奏曲 談資料收集的挑戰
 

Último

1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...
1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...
1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...黑客 接单【TG/微信qoqoqdqd】
 
EDUC6506(001)_ClassPresentation_2_TC330277 (1).pptx
EDUC6506(001)_ClassPresentation_2_TC330277 (1).pptxEDUC6506(001)_ClassPresentation_2_TC330277 (1).pptx
EDUC6506(001)_ClassPresentation_2_TC330277 (1).pptxmekosin001123
 
哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制
哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制
哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制jakepaige317
 
EDUC6506_ClassPresentation_TC330277 (1).pptx
EDUC6506_ClassPresentation_TC330277 (1).pptxEDUC6506_ClassPresentation_TC330277 (1).pptx
EDUC6506_ClassPresentation_TC330277 (1).pptxmekosin001123
 
educ6506presentationtc3302771-240427173057-06a46de5.pptx
educ6506presentationtc3302771-240427173057-06a46de5.pptxeduc6506presentationtc3302771-240427173057-06a46de5.pptx
educ6506presentationtc3302771-240427173057-06a46de5.pptxmekosin001123
 
泽兰应用科学大学毕业证制作/定制国外大学录取通知书/购买一个假的建国科技大学硕士学位证书
泽兰应用科学大学毕业证制作/定制国外大学录取通知书/购买一个假的建国科技大学硕士学位证书泽兰应用科学大学毕业证制作/定制国外大学录取通知书/购买一个假的建国科技大学硕士学位证书
泽兰应用科学大学毕业证制作/定制国外大学录取通知书/购买一个假的建国科技大学硕士学位证书jakepaige317
 

Último (6)

1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...
1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...
1.🎉“入侵大学入学考试中心修改成绩”来袭!ALEVEL替考大揭秘,轻松搞定考试成绩! 💥你还在为无法进入大学招生系统而烦恼吗?想知道如何通过技术手段更改...
 
EDUC6506(001)_ClassPresentation_2_TC330277 (1).pptx
EDUC6506(001)_ClassPresentation_2_TC330277 (1).pptxEDUC6506(001)_ClassPresentation_2_TC330277 (1).pptx
EDUC6506(001)_ClassPresentation_2_TC330277 (1).pptx
 
哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制
哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制
哪里可以购买日本筑波学院大学学位记/做个假的文凭可认证吗/仿制日本大学毕业证/意大利语CELI证书定制
 
EDUC6506_ClassPresentation_TC330277 (1).pptx
EDUC6506_ClassPresentation_TC330277 (1).pptxEDUC6506_ClassPresentation_TC330277 (1).pptx
EDUC6506_ClassPresentation_TC330277 (1).pptx
 
educ6506presentationtc3302771-240427173057-06a46de5.pptx
educ6506presentationtc3302771-240427173057-06a46de5.pptxeduc6506presentationtc3302771-240427173057-06a46de5.pptx
educ6506presentationtc3302771-240427173057-06a46de5.pptx
 
泽兰应用科学大学毕业证制作/定制国外大学录取通知书/购买一个假的建国科技大学硕士学位证书
泽兰应用科学大学毕业证制作/定制国外大学录取通知书/购买一个假的建国科技大学硕士学位证书泽兰应用科学大学毕业证制作/定制国外大学录取通知书/购买一个假的建国科技大学硕士学位证书
泽兰应用科学大学毕业证制作/定制国外大学录取通知书/购买一个假的建国科技大学硕士学位证书
 

大資料分析技術的濫觴 0727