| 1 | {{{ |
| 2 | #!html |
| 3 | <div style="text-align: center;"><big |
| 4 | style="font-weight: bold;"><big><big>大數據與 Hadoop 開源系統軟體</big></big></big></div> |
| 5 | }}} |
| 6 | [[PageOutline]] |
| 7 | |
| 8 | = 上課地點 = |
| 9 | |
| 10 | * 資 104 |
| 11 | |
| 12 | = 課程內容 = |
| 13 | |
| 14 | * [raw-attachment:wiki:III140705:part-1.pdf 完整版投影片] |
| 15 | |
| 16 | == '''2014-07-05(六)''' == |
| 17 | |
| 18 | || 時段 || 課程內容 || 投影片[[BR]]實作步驟 || 補充資料 || |
| 19 | || 09:30-11:00 || Big Data 處理技術與 Hadoop 簡介 || [raw-attachment:wiki:III140705:part-1.pdf 投影片] || * 重點一:減少資料搬運的頻寬成本跟時間成本 [[BR]] * 重點二:在地運算(Data Locality) || |
| 20 | || 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 亦思科技] || |
| 21 | || 11:20-12:00 || 單機模式(Local Mode)操作觀察 || [wiki:III140705/Lab1 實作一] || * [http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/SingleCluster.html 阿帕契基金會官網單機安裝流程] || |
| 22 | || 12:00-12:25 || 偽分散式模式(Pseudo-Distributed Mode)操作觀察 || [wiki:III140705/Lab2 實作二] || * [http://trac.3du.me/cloud/wiki/NTU131002/Lab2 官方 Hadoop 2.0 版的自動化安裝] || |
| 23 | || 12:25-13:30 || 午餐時間 || || || |
| 24 | || 13:30-13:45 || 全分散式模式(Full Distributed Mode)操作觀察 || [wiki:III140705/Lab3 實作三] || || |
| 25 | || 13:45-14:00 || HDFS 基本指令操作 || [wiki:III140705/Lab4 實作四] || || |
| 26 | || 14:00-14:20 || 基本除錯技能(一) Bash 除錯 || [wiki:III140705/Lab5 實作五] || || |
| 27 | || 14:20-14:30 || 基本除錯技能(二) Log4J || [wiki:III140705/Lab6 實作六] || || |
| 28 | || 14:20-14:40 || 基本除錯技能(三) 切換 Hadoop 設定檔 || [wiki:III140705/Lab7 實作七] || || |
| 29 | || 略過 || MapReduce 基本指令操作 || [wiki:III140705/Lab8 實作八] || || |
| 30 | || 15:00-15:20 || Hadoop !FileSystem API 原始碼觀察 || [wiki:III140705/Lab9 實作九] || || |
| 31 | || 15:20-15:40 || Hadoop !FileSystem API 實作(一) [[BR]] Local 檔案上傳到 HDFS || [wiki:III140705/Lab10 實作十] || || |
| 32 | || 15:40-15:50 || Hadoop !FileSystem API 實作(二) [[BR]] HDFS 下載檔案到 Local || [wiki:III140705/Lab11 實作十一] || || |
| 33 | || 15:50-16:00 || Hadoop !FileSystem API 實作(三) [[BR]] 判斷檔案是否存在、屬性為何 || [wiki:III140705/Lab12 實作十二] || || |
| 34 | |
| 35 | == '''2014-07-06(日)''' == |
| 36 | |
| 37 | || 時段 || 課程內容 || 實作 || 補充資料 || |
| 38 | || 略過 || Windows 版 Hadoop 安裝 (1) Hadoop4Win || [wiki:III140705/Lab13 實作十三] || * http://www.hadoop4win.org || |
| 39 | || 09:30-10:00 || Windows 版 Hadoop 安裝 (2) Windoop || [wiki:III140705/Lab14 實作十四] || * http://code.google.com/p/windoop || |
| 40 | || 10:00-10:30 || Hadoop Eclipse Plugin 功能展示 || '''操作展示''' || || |
| 41 | || 略過 || 課後練習補充資料 || || * 如何自己建立練習環境 - [http://www.cloudera.com/content/support/en/downloads/quickstart_vms/cdh-5-0-x.html CDH] / [http://hortonworks.com/products/hortonworks-sandbox/#install HDP] [[BR]] * [http://go.cloudera.com/cloudera-live.html Cloudera Live - Hue 介面練習][[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://www.youtube.com/playlist?list=PL_CuZWRrYyz0ObsY409EVh66vkdtFpIWN 歷史課程錄影] || |
| 42 | || 10:30-10:40 || 中場休息 || || || |
| 43 | || 10:40-11:00 || [wiki:WordCountNewVerstion 新版 Hadoop MapReduce 語法 (0.19以後)] [[BR]] 使用 !WordCount 範例解說 || [wiki:III140705/Lab15 實作十五] || || |
| 44 | || 11:00-12:00 || MapReduce 『邏輯流』解說 || [wiki:III140705/MapReduce_Logic_Flow 圖解說明] || || |
| 45 | || 12:00-12:20 || [wiki:WordCount 舊版 Hadoop MapReduce 語法 (0.19以前)] [[BR]] 使用 !WordCount 範例解說 || [wiki:III140705/Lab16 實作十六] || || |
| 46 | || 12:20-13:20 || 午餐時間 || || || |
| 47 | || 13:20-13:45 || Inner Class v.s. Public Classes || [wiki:III140705/Lab17 實作十七] || || |
| 48 | || 13:45-14:00 || 增加 Reducer 個數:Job.setNumReduceTasks(N) || [wiki:III140705/Lab18 實作十八] || || |
| 49 | || 14:00-14:15 || 觀察 Mapper 中間產物:Job.setNumReduceTasks(0) || [wiki:III140705/Lab19 實作十九] || || |
| 50 | || 14:15-14:30 || 中場休息 || |
| 51 | || 14:40-15:00 || 預設的輸入格式:!TextInputFormat || [wiki:III140705/Lab20 實作二十] || || |
| 52 | || 15:00-15:20 || 修改檔案輸入格式:!KeyValueTextInputFormat || [wiki:III140705/Lab21 實作二十一] || || |
| 53 | || 15:20-16:00 || MapReduce 『資料流』解說 || [wiki:III140705/MapReduce_Data_Flow 圖解說明] || || |
| 54 | || 16:00-16:20 || 關於 MapReduce 的設定檔 Configuration || [wiki:III140705/Lab22 實作二十二] || || |
| 55 | || 16:20-16:30 || 如果我需要兩個輸入檔呢? [[BR]] Distribtued Cache || [wiki:III140705/Lab23 實作二十三] || || |
| 56 | |
| 57 | = 補充設定 = |
| 58 | |
| 59 | * screenrc 範例 |
| 60 | {{{ |
| 61 | $ cat > ~/.screenrc <<EOF |
| 62 | caption always "%{= wk} %{= KY} [%n]%t @ %H %{-} %= %{= KR} %l %{-} | %{= KG} %Y-%m-%d %{-} " |
| 63 | hardstatus alwayslastline " %-Lw%{= Bw}%n%f %t%{-}%+Lw %=|" |
| 64 | vbell off |
| 65 | EOF |
| 66 | }}} |
| 67 | |
| 68 | * 檢查 Java 記憶體使用量 |
| 69 | {{{ |
| 70 | top -p `pidof java | sed 's# #,#g'` |
| 71 | }}} |
| 72 | |
| 73 | = 補充 = |
| 74 | |
| 75 | * HDFS Explore |
| 76 | * 安裝 .Net Framework 4.5 - [http://download.microsoft.com/download/B/A/4/BA4A7E71-2906-4B2D-A0E1-80CF16844F5F/dotNetFx45_Full_setup.exe 安裝檔] |
| 77 | * 安裝 HDFS Explorer - [http://bigdatainstallers.azurewebsites.net/files/HDFS%20Explorer/beta/1/HDFS%20Explorer%20Installer.msi 安裝檔] |
| 78 | * 開發環境 IDE 與 Hadoop Plugin - 目前只剩下 Eclipse Plugin, '''Netbean 與 KamaSphere Studio 的外掛已經無法下載''' |
| 79 | * [http://trac.3du.me/cloud/wiki/NCHCCloudCourse100928_2_IDE 編譯環境設定- 安裝 Eclipse 3.3.2 與 Hadoop 外掛程式] |
| 80 | * [http://trac.3du.me/cloud/wiki/NCHCCloudCourse100928/Netbeans 安裝 Netbean 6.9.1 中文版與 KamaSphere Studio 外掛程式] |
| 81 | * 修改 mapred-site.xml 的參數,增加 mapper 與 reducer 的 slot 個數 |
| 82 | {{{ |
| 83 | <property> |
| 84 | <name>mapred.tasktracker.map.tasks.maximum</name> |
| 85 | <value>4</value> |
| 86 | <property> |
| 87 | <property> |
| 88 | <name>mapred.tasktracker.reduce.tasks.maximum</name> |
| 89 | <value>4</value> |
| 90 | <property> |
| 91 | }}} |
| 92 | |
| 93 | * https://developer.yahoo.com/hadoop/tutorial/module7.html |
| 94 | - 其他參數設定的參考 |
| 95 | * 安裝 Ganglia |
| 96 | {{{ |
| 97 | sudo apt-get -y install ganglia-webfrontend gmetad ganglia-monitor |
| 98 | }}} |
| 99 | |
| 100 | = 公用環境 = |
| 101 | |
| 102 | * 課後問題討論,建議優先至台灣 Hadoop 使用者討論區 http://forum.hadoop.tw 或臉書粉絲團 https://www.facebook.com/groups/hadoop.tw/ 進行討論。 |