Transcript Document
指導教授:陳弘明、陳世穎
報告者:謝翔倫
System Software and Network Multimedia Lab
目錄
前言
相關研究
Hadoop
HDFS
MapReduce
HBase
研究方法
系統架構
系統環境
子系統介紹
實驗結果
結論
未來展望
System Software and Network Multimedia Lab
2
前言(1/2)
大台灣旅遊網具備完整、豐富且具深度之台灣觀光旅
遊資訊
10年多下來累積超過20萬筆觀光旅遊資訊
缺乏統計分析數據,讓管理者進行決策參考
傳統的資料處理方式無法負荷如此巨量的資料處理
System Software and Network Multimedia Lab
3
前言(2/2)
因上述需求和問題,透過本研究
利用巨量儲存技術,解決傳統資料庫無法處理的企業問
題
使用資料平行化處理技術,使其在執行相關分析、統計
與資料挖掘等技術時,能加速處理
System Software and Network Multimedia Lab
4
相關研究(1/5)- Hadoop
雲端運算平台
Apache 開放原始碼專案
整合相關子架構
HDFS、MapReduce、HBase等
使用JAVA開發
可執行在由一般PC所架設的叢集環境
System Software and Network Multimedia Lab
5
相關研究(2/5)- HDFS
Hadoop 分散式檔案系統
Hadoop Distributed File System(HDFS)
為主從式架構
一個目錄節點(Name Node)與數個資料節點(Data Nodes)
Name Node
存放文件的訊息(如檔名、路徑、副本數量)
Data Nodes
存放文件本身的資料(被分割成多個區塊)
資料存取特性
Write-once-read-many 存取模式
System Software and Network Multimedia Lab
6
相關技術(3/5)-HDFS
NameNode
File: /Tranews/tnews_all.csv ─ copies:1, blocks:{1,3,4,6,7}
File :/users/input/myFile ─ copies:3, blocks:{2,5}
DataNode
1
3
2
DataNode
5
6
7
5
DataNode
2
4
System Software and Network Multimedia Lab
2
5
7
相關研究(4/5)-MapReduce
MapReduce 是由 Google 所引進的軟體框架
使用者僅需專注於定義Map與Reduce函數
Map 階段
Reduce 階段
Sort / copy
Input
Split 0
Map
function
Merge
Reduce
function
Output 0
Split 1
Map
function
Merge
Reduce
function
Output 1
System Software and Network Multimedia Lab
8
相關研究(5/5)-HBase
NoSQL的儲存系統
類似表格的資料結構
分散式資料庫
儲存結構上每個紀錄單元可分為
RowKey(類似主鍵)
ColumnFamily:Qualifier(表格群組與單一欄位)
Value
TimeStamp(時間戳記)
以HDFS為基礎
可提供Hadoop MapReduc程式設計
System Software and Network Multimedia Lab
9
研究方法-系統架構
雲端巨量資料處理系統
巨量資料儲存子系統
資
料
擷
取
模
組
資
料
轉
換
模
組
資
料
傳
輸
模
組
巨量資料分析子系統
巨
量
資
料
平
行
處
理
模
組
資
料
傳
輸
模
組
巨量資料原型子系統
資
料
儲
存
模
組
System Software and Network Multimedia Lab
資
料
處
理
分
析
模
組
資
料
傳
輸
模
組
10
研究方法-系統環境
1個Master與3個Slaves
硬體:Intel X86 Compatible Server Platform.
OS:Linux Ubuntu-12.04版以上(含)
Web Server:Apache Server 1.3.x版以上(含)
網頁應用程式:PHP開發
Database:Hbase-0.94.0
Hadoop版本1.0.3
Mapper數量:6
Reducer數量:6
區塊大小:64 MB
最低複本數量:3
System Software and Network Multimedia Lab
11
研究方法-子系統介紹
巨量資料原型子系統
透過本子系統建置各原
型模組
Hadoop各項參數為上
述之規格
Company01
巨量文件
傳送
傳送
傳送
Company02
Company03
Company04
儲存
儲存
儲存
HBase
網路
網路
網路
使用者
使用者
使用者
System Software and Network Multimedia Lab
12
研究方法-子系統介紹
巨量資料儲存子系統
使用HBase 作為儲存系統
其模組流程圖為
Raw Data
資料擷取
模組
資料轉換
模組
HBase
儲存系統
資料傳輸
模組
前端網頁
瀏覽
主要儲存三項HBase表格
原始資料表
分析結果資料表
提供查詢資料表
System Software and Network Multimedia Lab
13
研究方法-子系統介紹
巨量資料分析子系統
使用MapReduce作為分析巨量資料之主要技術
其模組流程圖為
HBase
原始表格
巨量資料平行
處理模組
HBase
分析結果表格
資料傳輸
模組
前端網頁
瀏覽
主要功能
使用WiKi之台灣各地旅遊景點為關鍵字
對旅遊文章進行全文檢索以及關鍵字標記
對旅遊文章進行關鍵字統計
System Software and Network Multimedia Lab
14
實驗結果
全文檢索及關鍵字標記
System Software and Network Multimedia Lab
15
實驗結果
關鍵字統計
System Software and Network Multimedia Lab
16
實驗結果
原文比較
System Software and Network Multimedia Lab
17
實驗結果
文章關鍵字排名
System Software and Network Multimedia Lab
18
結論
本研究透過開放式原始碼Hadoop平台建構以
MapReduce軟體架構處理巨量資料分析之系統
提供使用者針對熱門關鍵字進行文章推薦之加值服務
提供使用者針對文章內的關鍵字進行相關文章之推薦
服務
根據統計出來的熱門景點變化做出景點分析提供更精
確的旅遊分析資訊
System Software and Network Multimedia Lab
19
未來展望
透過旅遊網站後台連線紀錄掌握使用者的需求
瀏覽行為
喜好關聯性分析
了解使用者主要瀏覽的類型、主題
未來本系統不只應用在旅遊市場上面,有可能會結合
其他不同種類型的巨量資料,去開闢及尋找不同的新
市場和新方向。
System Software and Network Multimedia Lab
20
System Software and Network Multimedia Lab
21
Write-once-read-many
避免因資料改寫而造成大量的更改時間
更改該文件分散在檔案系統中的所有Block
System Software and Network Multimedia Lab
22