wiki:NCHCCloudCourse110721

Version 4 (modified by waue, 13 years ago) (diff)

--

Hadoop 進階程式設計與 HBase 資料庫整合實作

課程資訊

教材更新

課程大綱

第一天

時間 時數 課程內容 投影片
實作
補充
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 ...
10: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 Maryland
11:30~12:00 0.5h 實作一:Hadoop Streaming 範例操作 Lab-1 1. 實作1.a:Hadoop Streaming 範例操作
13:00~13:30 0.5h MapReduce 與 HDFS 觀念介紹 part-3 1. 補充:不同語言的 MapReduce 實作實做1.b 安裝與設定參考
13:30~14:20 50m 開發輔助工具 Eclipse | Netbeans part-4
實做2.a
1. 實作2.b :編譯環境設定- 安裝 Eclipse 3.3.2 與 Hadoop 外掛程式
2. 補充2.c:安裝 Netbean 6.9.1 中文版與 KamaSphere Studio 外掛程式
14:30~15:00 30m Map Reduce 程式架構 part-5 1. 實作3 : HDFS IO Code
15:00~16:50 2h 超過 程式設計:範例程式解說與實作 part-5 1. 實作4 : MapReduce 範例程式

課程實做

第二天

時間 時數 課程內容 投影片/實作 補充
09:30~10:20 50m 開發環境確認
範例程式補完
Hadoop應用範例分享
part-5 1. 實作四:MapReduce 範例程式
10:20~10:30 10m 休息
10:30~11:30 60m HBase 簡介與架構 part-6 1. 實作5:安裝與設定參考
2. Jazz's NoSQL 筆記
3. 關於 Large Scale Website
4. 心得分享:NoSQL 必須視應用特性再決定是否採用
5. Twitter 比較 HBase 與 Cassandra (原文|中文
6. cassandra 安裝使用簡介
11:30~12:00 30m HBase 安裝操作說明 part-7 1. 實作6:HBase 使用方法
12:00~13:00 60m - 午餐
13:00~14:00 60m HBase 程式架構與範例 part-8 1. 實作7 :HBase程式設計
2. HBase 範例:台中餐城(TCRC)銷售金額統計
14:00~14:20 20m 實作練習 + 休息 + 發課程收據/修課證明
14:20~16:00 100m Hadoop + HBase + PHP 案例實務 part-8 1. 實作8 :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) - slides
16:10~16:30 20m Hadoop 與 HBase 應用案例分享 part-10
Crawlzilla簡報檔
1. Crawlzilla專案網址

課程實做

課後練習

公用環境 Public Cluster

HBase Local Mode

  • 修改 /etc/hosts
    echo "127.0.0.1 localhost $(hostname)" > hosts
    sudo mv hosts /etc/hosts
    
  • 產生 /opt/hbase/conf/hbase-site.xml
    cat > /opt/hbase/conf/hbase-site.xml << EOF
    <?xml version="1.0"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration>
    <property>
    <name>hbase.rootdir</name>
    <value>hdfs://localhost:9000/hbase</value>
    </property>
    </configuration>
    EOF
    
  • 啟動 Hadoop 與 HBase
    /opt/hadoop/bin/start-all.sh
    /opt/hbase/bin/start-hbase.sh
    
  • 檢查 jps 是否有 NameNode 等 java process,以及 HMaster 與 HQuorumPeer,正常應該要有以下的 java process (PID 可能不同)
    13019 HMaster
    10513 NameNode
    10838 SecondaryNameNode
    12952 HQuorumPeer
    10916 JobTracker
    13312 Jps
    11068 TaskTracker
    10676 DataNode