Hadoop 進階程式設計與 HBase 資料庫整合實作
課程資訊
- 上課時間: 2010/09/28 (二) ~ 2010/09/29 (三) 09:30 ~ 16:30 2 天,共計 12 個小時
- 上課地點: 國家高速網路與計算中心 台中 電腦教室 A
- 報名網頁課程資訊
課程大綱
2010-09-28 (二)
- 第一天講義投影片完整版 (PDF)
時間 時數 課程內容 投影片
實作補充 09:30~10:40 50m 介紹課程與 Hadoop 簡介 part-1 1. 補充一:Hadoop 單機安裝與設定
2. Ubuntu 10.04 安裝 JDK, Hadoop 0.20.2 的 Bash Script
3. 影像處理參考:吳冠龍先生,台大資工系通訊與多媒體實驗室
Image Selection for Large-Scale Flickr Photos using Hadoop
4. ACM 論文:Canonical image selection ...
5. Customizing InputFileFormats for Image Processing in Hadoop
,Jeff Conner, Arizona State University10:43~10:53 10m 休息 10:53~11:30 40m Hadoop生態系簡介 part-2 1. <學習資源> Hadoop 目前三本書籍
2. Data-Intensive Text Processing with MapReduce (PDF),
Jimmy Lin, University of Maryland11:30~12:00 0.5h 實作一:Hadoop Streaming 範例操作 Lab-1 1. 實作一:Hadoop Streaming 範例操作 13:00~13:30 0.5h MapReduce 與 HDFS 觀念介紹 part-3 1. 不同語言的 MapReduce 實作 13:30~14:20 50m 開發輔助工具 Eclipse | Netbeans part-4
Lab-21. 實作二 :編譯環境設定- 安裝 Eclipse 3.3.2 與 Hadoop 外掛程式
2. 補充二:安裝 Netbean 6.9.1 中文版與 KamaSphere Studio 外掛程式14:30~15:00 30m Map Reduce 程式架構 part-5 1. 實作三 : HDFS IO Code 15:00~16:50 2h 超過 程式設計:範例程式解說與實作 part-5 1. 實作四 : MapReduce 範例程式
- 課後練習方式:
- 使用Cloudera 提供的 VMWare Image (CDH2, 0.20.x)
- 使用Yahoo! Hadoop Tutorial 的 VMWare Image (0.20.S)
- 使用Google 提供的 Hadoop VMWare Image (0.13,很舊了)
2010-09-29 (三)
- 第二天講義投影片完整版 (PDF)
時間 時數 課程內容 投影片/實作 補充 09:30~10:20 50m 開發環境確認
範例程式補完
Hadoop應用範例分享part-5 1. 心得分享:NoSQL 必須視應用特性再決定是否採用
2. 實作四:MapReduce 範例程式10:20~10:30 10m 休息 10:30~11:30 60m HBase 簡介與架構 part-6 1. 實作五:安裝與設定參考 11:30~12:00 30m HBase 安裝操作說明 part-7 1. 實作六:HBase 使用方法 12:00~13:00 60m - 午餐 13:00~14:00 60m HBase 程式架構與範例 part-8 1. 實作七 :HBase程式設計
2. HBase 範例:台中餐城(TCRC)銷售金額統計14:00~14:20 20m 實作練習 + 休息 + 發課程收據/修課證明 14:20~16:00 100m Hadoop + HBase + PHP 案例實務 part-8 1. 實作八 :Hbase + Thrift + PHP 16:00~16:10 10m 補充教材: hadoop + 關聯式資料庫 part-9 1. Hadoop 透過 JDBC 連結 MySQL 範例程式碼
2. JDBC Driver for MySQL (Connector/J)
3. 關於 DBInputFormat (from Cloudera) - slides16:10~16:30 20m Hadoop 與 HBase 應用案例分享 part-10 1. ICAS
2. Crawlzilla
- 課後問題討論,建議優先至 http://forum.hadoop.tw 進行討論。
- 需要 Hadoop 叢集環境,可至 http://hadoop.nchc.org.tw 申請帳號。
課程實做
第一天
- 實做一 : 安裝與設定參考
- 實做二 : 編譯環境設定
- 實做三 : 程式設計I- HDFS IO Code
- 實做四 : 程式設計II- MapReduce 範例程式
第二天
- 實做一 : 安裝與設定參考
- 實做二 : HBase 使用方法
- 實做三 : Hbase + Thrift + PHP
- 實做四 : HBase程式設計 , 範例
補充資料
- [benchmark] Yahoo! Cloud Serving Benchmark (YCSB) - 論文: Benchmarking Cloud Serving Systems with YCSB
- Yahoo 寫的效能測試軟體,YCSB 1.2 版支援 HBase, Cassandra, MongoDB
- 從論文簡報投影片得到的結論注意到幾件事情:
- 若資料庫特性是一半讀一半寫,MySQL 大約在 7500 operations/sec 時會到達效能極限。若資料庫特性是 95% 讀 5% 寫,就沒看到明顯效能極限。
- HBase 寫入飛快,但讀取會稍微慢一點,而且讀取的效率不太線性。(寫入記憶體所以超快,但成本也比較高,查詢時重建紀錄) 加機器時,不會有明顯的效能差異 (跟 HDFS 一樣,要跑 balancer 才會搬資料)。 - Low Update Latency, Higher Read Latency
- Cassandra 寫入稍微慢一點,讀取則比 HBase 快,特別是資料庫特性是 95% 讀取時比 HBase 快。加機器的時候,會需要一段時間才能讓效能穩定下來(這部分我覺得是副本架構造成的)。
Last modified 13 years ago
Last modified on Jul 18, 2011, 9:26:52 AM