Changes between Initial Version and Version 1 of III140118


Ignore:
Timestamp:
Jan 18, 2014, 12:10:48 AM (10 years ago)
Author:
jazz
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • III140118

    v1 v1  
     1{{{
     2#!html
     3<div style="text-align: center;"><big
     4 style="font-weight: bold;"><big><big>雲端 Big Data 之處理、分析與應用(進階班)</big></big></big></div>
     5}}}
     6[[PageOutline]]
     7
     8= 報名資訊 =
     9
     10 * 詳[http://www.iiiedu.org.tw/ites/CBDA.htm 資策會網站公告]
     11
     12= 課程源起 =
     13{{{
     14#!text
     15  雲端運算掀起了新一代的資訊革命,也帶來了資訊爆炸式的成長,市調單位IDC的研究報告指出:
     16自2010年全球資料量已進入ZB(zettabytes,1 ZB 為1兆GB)時代,並且每年以60%的速度攀升,
     17這意味著每18個月全球的資料量將翻倍。面對不斷擴張的驚人資料量,大量資料 (Big Data) 的
     18儲存、管理、處理、搜尋、分析與智能應用等處理資料的能力也將面臨新的挑戰,而處理資料的技術
     19將迫切需要可動態與彈性等特點,以支援大量資料處理的計算模式。
     20
     21工欲善其事,必先利其器,根據市場調查機構IDC的研究顯示,Hadoop 軟體市場的復合年增長率
     22超過了60%,並預測到了2016年,市場總值將由2011年的7700萬美元增長至8.128億美元,可見得
     23Hadoop火熱的程度。巨量資料寶庫蘊藏豐沛的珍寶,除了幾乎成為巨量資料代名詞的Hadoop外,
     24相同框架裡頭的 MapReduce、HDFS等技術,皆為意欲挖掘出這些寶藏之企業所需準備的工具,意欲
     25開啟巨量資料希望之門,幾乎可以肯定,絕對少不掉Hadoop這把鑰匙!
     26
     27為了解決巨量資料的問題,Hadoop 周遭已經發展出相當完整的生態系,其中有兩個最為核心的項目,
     28一是MapReduce這個執行分散式處理的程式模型,另一則是HDFS這個虛擬的分散式檔案系統,透過
     29專司運算、儲存的兩根大支柱,牢牢地撐起Hadoop架構。且基於map/reduce的演算,Hadoop可以
     30利用分散式節點的增加,來持續提供更多的計算能力,因此具備了很好的規模可擴充性。
     31
     32為了滿足業界需求,資策會 特規劃「雲端Big Data之處理與分析進階班」課程,本課程學員將學習
     33到雲端運算之三大關鍵技術,利用Hadoop之分散式檔案系統(HDFS)與MapReduce,快速建構出雲端
     34運算的執行環境和服務,並以Hadoop FileSystem API 實作、MapReduce API 實作、
     35MapReduce 與資料庫結合與MapReduce 與 Hadoop 生態系整合等實作方式讓學員更加了解如何
     36透過Hadoop架構以進行雲端資料的大量資料處理、分析與應用。
     37}}}
     38
     39= 課程目標 =
     40
     41 * 學習 Hadoop File System 之 API 實作
     42 * 學習 Hadoop MapReduce 開發輔助工具 Eclipse 與 Netbeans
     43 * 學習 MapReduce 之 API 實作
     44 * 瞭解 MapReduce 與資料庫結合的方式
     45 * 學習 MapReduce 與 Hadoop 生態系之整合方式
     46
     47= 課程特色 =
     48
     49{{{
     50#!text
     51本課課程重點在於透過採體驗式教學方式的實作,經由多樣性的實際指令操作進行整合實作,
     52讓參訓學員瞭解正確的觀念與方法,以體驗實際的操作方式驗證課程所學 ,期能讓學員學會
     53如何將 Hadoop 這項技術與現存資訊架構進行整合。
     54}}}
     55
     56= 適合對象 =
     57
     58 * IT經理或系統網路部門主管
     59 * 專案經理、系統架構師或系統網路管理人員
     60 * 企業或技術決策人員
     61 * 對於雲端運算之大量資料(Big Data)處理、分析、應用有興趣者
     62
     63[[PageOutline]]
     64
     65= 預備知識 =
     66
     67 * 具 Linux 操作實務與 Java 程式語言基礎者尤佳。
     68 * 具雲端運算之大量資料處理、分析與應用實務之基礎課程知識者尤佳。
     69
     70= 課程日期 =
     71
     72 * 103年01月18~19日 (週六/週日 白天9:30 ~16:30 ),共2天、計12小時 。
     73
     74= 上課地點 =
     75
     76 * 資策會數位教育研究所,台北市信義路三段 153 號 10 樓 1001 教室。
     77 * 位於捷運木柵線大安站斜對面(復興南路與信義路交叉口),燦坤樓上。
     78 * 上課地點與教室之確認,以上課通知函為主。
     79
     80= 課程內容 =
     81
     82 * [raw-attachment:wiki:III140118:14-01-18_Hadoop_Advanced.pdf 完整版投影片]
     83
     84== '''2014-01-18(六)''' ==
     85
     86 || 時段 || 課程內容 || 投影片[[BR]]實作步驟 || 補充資料 ||
     87 || 09:30-11:00 || Big Data 處理技術與 Hadoop 簡介 || [raw-attachment:wiki:III140118:part-1.pdf 投影片] || * 重點一:減少資料搬運的頻寬成本跟時間成本 [[BR]] * 重點二:在地運算(Data Locality) ||
     88 || 11:00-11:20 || Hadoop 的三種模式與三種安裝方法 || || * http://hadoop.apache.org - Hadoop 專案官方首頁 [[BR]] * http://www.cloudera.com - RPM/DEB 套件庫 : [http://www.etusolution.com/index.php/tw/ 精誠知意圖(Etu)] [[BR]] * http://hortonworks.com - HDP for Windows : [http://www.tcloudcomputing.com.tw 趨勢騰雲(TCloud)] [[BR]] * http://www.mapr.com - MapR : [http://www.is-land.com.tw 亦思科技] ||
     89 || 11:20-12:00 || 單機模式(Local Mode)操作觀察  || [wiki:III140118/Lab1 實作一] || * [http://hadoop.apache.org/docs/stable/single_node_setup.html 阿帕契基金會官網單機安裝流程] [[BR]] * [http://hadoop.nchc.org.tw/~jazz/temp Ubuntu 安裝 Hadoop / HBase 單機安裝腳本] ||
     90 || 12:00-12:25 || 偽分散式模式(Pseudo-Distributed Mode)操作觀察  || [wiki:III140118/Lab2 實作二] || * [http://trac.nchc.org.tw/cloud/wiki/NTU131002/Lab2 官方 Hadoop 2.0 版的自動化安裝] ||
     91 || 12:25-13:30 || 午餐時間 || || ||
     92 || 13:30-13:45 || 全分散式模式(Full Distributed Mode)操作觀察  || [wiki:III140118/Lab3 實作三] || ||
     93 || 13:45-14:00 || HDFS 基本指令操作 || [wiki:III140118/Lab4 實作四] || ||
     94 || 14:00-14:20 || 基本除錯技能(一) Bash 除錯 || [wiki:III140118/Lab5 實作五] || ||
     95 || 14:20-14:30 || 基本除錯技能(二) Log4J || [wiki:III140118/Lab6 實作六] || ||
     96 || 14:20-14:40 || 基本除錯技能(三) 切換 Hadoop 設定檔 || [wiki:III140118/Lab7 實作七] || ||
     97 || 14:40-15:00 || 中場休息 ||
     98 || 略過 || MapReduce 基本指令操作 || [wiki:III140118/Lab8 實作八] || ||
     99 || 15:00-15:20 || Hadoop !FileSystem API 原始碼觀察 || [wiki:III140118/Lab9 實作九] || ||
     100 || 15:20-15:40 || Hadoop !FileSystem API 實作(一) [[BR]] Local 檔案上傳到 HDFS || [wiki:III140118/Lab10 實作十] || ||
     101 || 15:40-15:50 || Hadoop !FileSystem API 實作(二) [[BR]] HDFS 下載檔案到 Local || [wiki:III140118/Lab11 實作十一] || ||
     102 || 15:50-16:00 || Hadoop !FileSystem API 實作(三) [[BR]] 判斷檔案是否存在、屬性為何 || [wiki:III140118/Lab12 實作十二] || ||
     103 || 略過 || Windows 版 Hadoop 安裝 (1) Hadoop4Win || [wiki:III140118/Lab13 實作十三] || * http://www.hadoop4win.org ||
     104 || 16:00-16:10 || Windows 版 Hadoop 安裝 (2) Windoop || [wiki:III140118/Lab14 實作十四] || * http://code.google.com/p/windoop ||
     105 || 16:10-16:30 || Hadoop Eclipse Plugin 功能展示 || '''操作展示''' || ||
     106
     107== '''2014-01-19(日)''' ==
     108
     109 || 時段 || 課程內容 || 實作 || 補充資料 ||
     110 || 09:30-10:10 || 課後練習補充資料 || || * 如何自己建立練習環境 [[BR]] * [http://forum.hadoop.tw/viewtopic.php?f=7&t=36011 CCDH / CCAH 考試認證指南] [[BR]] * [http://forum.hadoop.tw Hadoop.TW 技術討論區] [[BR]] * [https://www.facebook.com/groups/hadoop.tw/ 臉書 Hadoop.TW 社團] [[BR]] * [http://classcloud.org/media 歷史課程錄影] ||
     111 || 10:10-10:40 || [wiki:WordCountNewVerstion 新版 Hadoop MapReduce 語法 (0.19以後)] [[BR]] 使用 !WordCount 範例解說 || [wiki:III140118/Lab15 實作十五] || ||
     112 || 10:40-11:00 || 中場休息 || || ||
     113 || 11:00-12:05 || MapReduce 『邏輯流』解說 || [wiki:III140118/MapReduce_Logic_Flow 圖解說明] || ||
     114 || 12:05-13:05 || 午餐時間 || || ||
     115 || 13:05-13:25 || [wiki:WordCount 舊版 Hadoop MapReduce 語法 (0.19以前)] [[BR]] 使用 !WordCount 範例解說 || [wiki:III140118/Lab16 實作十六] || ||
     116 || 13:25-13:45 || Inner Class v.s. Public Classes || [wiki:III140118/Lab17 實作十七] || ||
     117 || 13:45-14:00 || 增加 Reducer 個數:Job.setNumReduceTasks(N) || [wiki:III140118/Lab18 實作十八] || ||
     118 || 14:00-14:15 || 觀察 Mapper 中間產物:Job.setNumReduceTasks(0) || [wiki:III140118/Lab19 實作十九] || ||
     119 || 14:15-14:30 || 中場休息 ||
     120 || 14:40-15:00 || 預設的輸入格式:!TextInputFormat || [wiki:III140118/Lab20 實作二十] || ||
     121 || 15:00-15:20 || 修改檔案輸入格式:!KeyValueTextInputFormat || [wiki:III140118/Lab21 實作二十一] || ||
     122 || 15:20-16:00 || MapReduce 『資料流』解說 || [wiki:III140118/MapReduce_Data_Flow 圖解說明] || ||
     123 || 16:00-16:20 || 關於 MapReduce 的設定檔 Configuration || [wiki:III140118/Lab22 實作二十二] || ||
     124 || 16:20-16:30 || 如果我需要兩個輸入檔呢? [[BR]] Distribtued Cache || [wiki:III140118/Lab23 實作二十三] || ||
     125
     126= 補充設定 =
     127
     128 * screenrc 範例
     129{{{
     130$ cat > ~/.screenrc <<EOF
     131caption always "%{= wk} %{= KY} [%n]%t @ %H %{-} %= %{= KR} %l %{-} | %{= KG} %Y-%m-%d %{-} "
     132hardstatus alwayslastline " %-Lw%{= Bw}%n%f %t%{-}%+Lw %=|"
     133vbell off
     134EOF
     135}}}
     136
     137 * 檢查 Java 記憶體使用量
     138{{{
     139top -p `pidof java | sed 's# #,#g'`
     140}}}
     141
     142 * hadoop_labs for hadoop4win - 未經完整測試
     143  * https://github.com/jazzwang/hadoop_labs/archive/hadoop4win.zip
     144
     145= 公用環境 =
     146
     147 * 課後問題討論,建議優先至台灣 Hadoop 使用者討論區 http://forum.hadoop.tw 或臉書粉絲團 https://www.facebook.com/groups/hadoop.tw/ 進行討論。
     148 * 需要 Hadoop 叢集環境,可至 http://hadoop.nchc.org.tw 申請帳號。
     149   * 申請步驟,請參閱[wiki:YMU110509/Lab1 截圖說明]
     150 * 關於公用叢集的幾個重要入口:
     151 * http://hadoop.nchc.org.tw - 實驗叢集入口網站
     152 * http://hadoop.nchc.org.tw/ganglia - 實驗叢集負載狀態
     153 * http://hadoop.nchc.org.tw:50030 - 實驗叢集正在執行與執行完畢的任務
     154 * http://hadoop.nchc.org.tw:50070 - 實驗叢集的硬碟空間狀態
     155 * http://hadoop.nchc.org.tw/hadoop-doc - Hadoop 相關說明文件
     156 * http://hadoop.nchc.org.tw/hadoop-doc/api/index.html - Hadoop 0.20.2 javadoc 文件