加入 Systematic Facebook 擁躉群  

這個頁面上的內容需要較新版本的 Adobe Flash Player。

取得 Adobe Flash Player


想定期知道最新課程及優惠嗎?
免費訂閱本中心的課程通訊!
觀看課程通訊
Reasonable Spread:
Permission email marketing

課堂錄影隨時睇 10 大優點之低至 8 折:回饋社會及協助全港市民進修增值,本中心現正推出低至 8 折優惠!

Hadoop 大數據技術基礎課程 (Big Data)

  • 課程時間
  • 課程簡介
  • 課程內容

推介服務:課堂錄影隨時睇
編號 地點 可預約星期及時間 學費低至 8 折  
JT1706MV 旺角 一至五:11:30 - 22:30   六及日:10:30 - 21:30   (公眾假期休息) 95 折後只需 $1,881 按此報名
JT1706OV 觀塘 一至五:13:30 - 22:00   六及日:12:30 - 21:00   (星期三及公眾假期休息) 9 折後只需 $1,782 按此報名
JT1706PV 北角 一至五:13:30 - 22:00   六及日:12:30 - 21:00   (星期三及公眾假期休息) 9 折後只需 $1,782 按此報名
JT1706SV 沙田 一至五:13:30 - 22:00   六及日:12:30 - 21:00   (星期三及公眾假期休息) 9 折後只需 $1,782 按此報名
JT1706YV 屯門 一至五:13:30 - 22:00   六及日:12:30 - 21:00   (星期三及公眾假期休息) 8 折後只需 $1,584 按此報名
* 各政府部門可使用 P Card 付款  
免費試睇: 首 1 小時,請致電與本中心職員預約。 查看各地點電話
旺角 2332-6544
觀塘 3563-8425
北角 3580-1893
沙田 2151-9360
屯門 3523-1560
免費重睇: 學員可於享用時期內於報讀地點不限次數地重看課堂錄影,從而可反覆重溫整個課程!
導師解答: 學員可於觀看某一課堂錄影後提出課堂直接相關的問題,課程導師會樂意為學員以單對單的形式解答!
課時: 12 小時
享用時期: 報讀日至 4 星期內,進度由您控制,可快可慢。
課堂錄影導師: Franco (任教課程清單)
課堂錄影隨時睇: 詳情及示範片段


大數據 (Big data) 是一個近年相當流行的概念。由於大數據所描述的數據規模巨大,在處理和分析大數據中會有機會遭遇限制和阻礙,限制和阻礙主要是由於一般的資料庫管理系統難以 “有效” 處理和分析大數據。處理和分析大數據需要使用數十、數百、數千甚至數萬台伺服器同時進行平行運算才能 “有效” 處理和分析大數據。

Google 分別在 2003 年及 2004 年發表了兩篇的論文 “The Google File System” 和 “MapReduce: Simplified Data Processing on Large Clusters”。隨後 Apache 開源基金會作出 DFS (Distributed File System) 以及 MapReduce 的開源解決方案,也就是今天的 Hadoop 平台的雛型。

Hadoop 是由 Java 編寫的開源軟體框架 (Open-source Software Framework),Hadoop 提供分散式檔案系統 (Distributed File System) 及以 MapReduce 框架進行分散式運算 (Distributed computing)。Hadoop 被視為其中一個處理和分析大數據的熱門方案。

由於處理和分析大數據的技術相當獨特,所謂萬事起頭難,在初次學習大數據技術難免遇到不同程度的障礙。本基礎課程旨在有系統地,透過具針對性的實戰例子教授學員處理和分析大數據的必要概念及技術,當中包括安裝 Hadoop、操作HDFS (Hadoop Distributed File System) 和使用 MapReduce 進行大數據分析等。了解相關大數據技術後就會探討 Hadoop 在商業環境中的應用情況等。

由於操作 HDFS (Hadoop Distributed File System) 和使用 MapReduce 進行大數據分析均會使用 Java 程式語言,故此建議學員在報讀本課程前需要具備 “Java EE 程式編寫基礎課程 (主要教授 JSP, Servlet, JSTL 和 EL)” 中第 4 課 [Java 語言 (基礎語法)]、第 5 課 [Java 語言 (物件導向概念)] 及第 6 課 [Java 語言 (常用類別)] 的知識。亦由於導師會將 Hadoop 安裝在 Linux 上進行示範,故此建議學員在報讀本課程前需要具備基本的 Linux 操作知識。

課程時數: 12 小時 (共 4 堂)
適合人士: 建議學員在報讀本課程前需要具備 “Java EE 程式編寫基礎課程 (主要教授 JSP, Servlet, JSTL 和 EL)” 中第 4 課 [Java 語言 (基礎語法)]、第 5 課 [Java 語言 (物件導向概念)] 及第 6 課 [Java 語言 (常用類別)] 的知識。亦由於導師會將 Hadoop 安裝在 Linux 上進行示範,故此建議學員在報讀本課程前需要具備基本的 Linux 操作知識,例如具備 “Shell Script Linux 自動化課程” 中的第 2 課 [Linux 的指令介面] 的知識。
授課語言: 以廣東話為主,輔以英語
課程筆記: 本中心導師親自編寫中文為主筆記,而部份中文字附有英文對照。


1 大數據 (Big Data)
1.1 引言
1.2 3Vs / 4Vs / 5Vs
1.3 Structured Data, Semi-Structured Data 與 Unstructured Data
1.3.1 Structured Data
1.3.2 Semi-Structured Data
1.3.3 Unstructured Data
1.4 挑戰

2 Hadoop 與大數據 (Big Data)
2.1 Hadoop 概觀
2.2 Hadoop 如何應對大數據挑戰
2.3 Hadoop 的商業論証 / Business Case of Hadoop
2.4 學習 Hadoop 所需的技術知識
2.5 Hadoop 結構
2.5.1 HDFS (Hadoop Distributed File System)
2.5.1.1 宏觀概念
2.5.1.2 NameNodes and DataNodes
2.5.1.3 Blocks 與 Replication (複製)
2.5.1.4 Balancer
2.5.1.5 Rack Awareness
2.5.1.6 HDFS 的合適應用情景
2.5.2 MapReduce (映射 / 歸納)
2.5.2.1 Map
2.5.2.2 Reduce

3 安裝 Hadoop
3.1 伺服器及相關設定
3.2 設定 JDK
3.3 安裝 Hadoop
3.3.1 解開 tar 檔
3.3.2 hadoop-env.sh
3.3.3 core-site.xml
3.3.4 hdfs-site.xml
3.3.5 格式化
3.3.6 啟動 HDFS
3.3.7 建立資料夾以執行測試用的 MapReduce
3.3.8 測試 MapReduce
3.4 YARN (Yet Another Resource Negotiator) / MRv2
3.4.1 YARN 概念
3.4.1.1 ResourceManager, ApplicationsManager, NodeManager 及 per-application ApplicationMaster
3.4.1.2 更全面的構圖
3.4.2 設定 YARN
3.4.2.1 mapred-site.xml
3.4.2.2 yarn-site.xml
3.5 Job history 伺服器

4 HDFS:File System (FS) shell
4.1 ls
4.2 cat
4.3 get
4.4 copyToLocal
4.5 put 和 rm (資料夾)
4.6 copyFromLocal
4.7 du
4.8 checksum
4.9 count
4.10 mkdir
4.11 rmdir
4.12 touchz
4.13 appendToFile
4.14 cp
4.15 mv
4.16 rm (檔案)
4.17 find
4.18 Snapshot
4.18.1 啟動 Snapshot
4.18.2 製作 Snapshot
4.18.3 檢視 Snapshot
4.18.4 Snapshot 改名
4.18.5 檢視 Snapshot 內容
4.18.6 刪除檔案並以 Snapshot 復原
4.18.7 移除 Snapshot
4.18.8 關閉 Snapshot
4.19 chmod
4.20 Quota
4.21 SpaceQuota
4.22 檢視 block 資料

5 準備編程環境
5.1 安裝 JDK (Java Platform, Standard Edition Development Kit)
5.2 設定 Eclipse 和 Hadoop 環境

6 HDFS:Java
6.1 編寫 Hadoop 程式的準備工夫
6.2 顯示 HDFS 的系統性設定
6.3 建立資料夾
6.4 刪除資料夾
6.5 列出資料夾及檔案
6.6 建立檔案
6.7 為檔案新增內容
6.8 讀取文字檔內容
6.9 刪除檔案
6.10 檢視檔案的屬性
6.11 壓縮檔

7 Hadoop I/O
7.1 序列化 (Serialization) 與反序列化 (Deserialization)
7.1.1 序列化 (Serialization)
7.1.2 反序列化 (Deserialization)
7.2 Hadoop 的物件類別
7.2.1 Writable (org.apache.hadoop.io.Writable) wrappers for Java primitives
7.2.2 Text (org.apache.hadoop.io.Text)
7.3 體驗 Hadoop 的序列化 (Serialization) 與反序列化 (Deserialization)
7.4 比較
7.5 Text (org.apache.hadoop.io.Text) 與 String (java.lang.String) 的互動
7.6 Custom Writable
7.6.1 Custom Writable:建立相關類別
7.6.2 Custom Writable:運用相關類別
7.7 SequenceFile
7.7.1 SequenceFile 特點及應用情景
7.7.2 實踐 SequenceFile:建立及寫入 SequenceFile
7.7.3 實踐 SequenceFile:讀取 SequenceFile 的內容

8 MapReduce:基本
8.1 MapReduce 概念, <k1, v1>, <k2, v2>, <k3, v3>
8.2 第 1 個 MapReduce 程式 (Mapper, Reducer, Job, JAR)
8.2.1 程式目標
8.2.2 準備工夫
8.2.3 Mapper (org.apache.hadoop.mapreduce.Mapper)
8.2.4 Reducer (org.apache.hadoop.mapreduce.Reducer)
8.2.5 Job (org.apache.hadoop.mapreduce.Job)
8.2.6 JAR (Java Archive)
8.2.7 在 Hadoop 上執行
8.3 Combiner
8.3.1 Combiner 概念
8.3.2 Combiner 操作
8.4 沒有 Mapper class 與 Reducer class 的 Job
8.4.1 Mapper class 與 Reducer class 的操作

9 MapReduce:進階
9.1 Custom FileInputFormat 與 Custom FileRecordReader
9.1.1 程式目標
9.1.2 準備工夫
9.1.3 Custom FileRecordReader
9.1.4 Custom FileInputFormat
9.1.5 Mapper (optional)
9.1.6 Reducer (optional)
9.1.7 Job with custom FileInputFormat 與 custom FileRecordReader
9.1.8 在 Hadoop 上執行
9.2 建立多個具自定名稱的結果檔案
9.2.1 MultiOutputs 概念
9.2.2 MultiOutputs 操作
9.2.2.1 程式目標
9.2.2.2 準備工夫
9.2.2.3 Reducer (org.apache.hadoop.mapreduce.Reducer)
9.2.2.4 Job (org.apache.hadoop.mapreduce.Job)
9.2.2.5 在 Hadoop 上執行
9.3 Partitioner與多個 Reducers
9.3.1 Partitioner與多個 Reducers 的概念
9.3.2 Partitioner與多個 Reducers 的操作
9.3.2.1 程式目標
9.3.2.2 準備工夫
9.3.2.3 Mapper (org.apache.hadoop.mapreduce.Mapper)
9.3.2.4 Partitioner (org.apache.hadoop.mapreduce.Partitioner)
9.3.2.5 Reducer (org.apache.hadoop.mapreduce.Reducer)
9.3.2.6 Job (org.apache.hadoop.mapreduce.Job)
9.3.2.7 在 Hadoop 上執行
9.3.2.8 有趣情景 1:太少 Reduce tasks
9.3.2.9 有趣情景 2:太多 Reduce tasks
9.3.2.10 有趣情景 3:getPartition 回傳隨意的 int
9.4 Custom Counters
9.4.1 預設的 counters
9.4.2 Custom counters
9.4.2.1 程式目標
9.4.2.2 準備工夫
9.4.2.3 Enum
9.4.2.4 Mapper (org.apache.hadoop.mapreduce.Mapper)
9.4.2.5 Reducer (org.apache.hadoop.mapreduce.Reducer)
9.4.2.6 Job (org.apache.hadoop.mapreduce.Job)
9.4.2.7 在 Hadoop 上執行
9.5 WritableComparator 與排序
9.5.1 WritableComparator 與排序概念
9.5.2 WritableComparator 與排序操作
9.5.2.1 程式目標
9.5.2.2 準備工夫
9.5.2.3 Mapper (org.apache.hadoop.mapreduce.Mapper)
9.5.2.4 Reducer (org.apache.hadoop.mapreduce.Reducer)
9.5.2.5 WritableComparator (org.apache.hadoop.io.WritableComparator)
9.5.2.6 Job (org.apache.hadoop.mapreduce.Job)
9.5.2.7 在 Hadoop 上執行
9.6 二次排序 (Secondary Sort)
9.6.1 二次排序概念
9.6.2 二次排序操作
9.6.2.1 程式目標
9.6.2.2 準備工夫
9.6.2.3 二次排序的核心部份
9.6.2.4 Mapper (org.apache.hadoop.mapreduce.Mapper)
9.6.2.5 Reducer (org.apache.hadoop.mapreduce.Reducer)
9.6.2.6 Job (org.apache.hadoop.mapreduce.Job)
9.6.2.7 在 Hadoop 上執行
9.7 處理多個輸入檔案
9.7.1 處理多個輸入檔案的背景
9.7.2 處理多個輸入檔案的操作
9.7.2.1 程式目標
9.7.2.2 準備工夫
9.7.2.3 Mapper (org.apache.hadoop.mapreduce.Mapper)
9.7.2.4 Reducer (org.apache.hadoop.mapreduce.Reducer)
9.7.2.5 Job (org.apache.hadoop.mapreduce.Job)
9.7.2.6 在 Hadoop 上執行
9.8 Grouping Comparator
9.8.1 Grouping Comparator 概念
9.8.2 Grouping Comparator 操作
9.8.2.1 程式目標
9.8.2.2 準備工夫
9.8.2.3 Mapper (org.apache.hadoop.mapreduce.Mapper)
9.8.2.4 Reducer (org.apache.hadoop.mapreduce.Reducer)
9.8.2.5 Grouping Comparator (org.apache.hadoop.io.WritableComparator)
9.8.2.6 Job (org.apache.hadoop.mapreduce.Job)
9.8.2.7 在 Hadoop 上執行
9.9 SequenceFile 的 MapReduce
9.9.1 MapReduce 與 SequenceFile
9.9.2 MapReduce 內使用SequenceFile 的操作
9.9.2.1 程式目標
9.9.2.2 準備工夫
9.9.2.3 Mapper (org.apache.hadoop.mapreduce.Mapper)
9.9.2.4 Reducer (org.apache.hadoop.mapreduce.Reducer)
9.9.2.5 Job (org.apache.hadoop.mapreduce.Job)
9.9.2.6 在 Hadoop 上執行
9.10 Shuffling

10 商業應用
10.1 例子
10.1.1.1 例子1
10.1.1.2 例子2
10.1.1.3 例子3
10.1.1.4 例子4
10.1.1.5 例子5
10.1.1.6 例子6
10.2 應用情景

 

更多綜合課程
  法律課程
  • 代理人的法律責任
  • 公司董事和合夥人的法律責任
  • 婚姻的法律責任
  • 遺產繼承的合法權益
  英文課程
  • IPA 拼音:級別 1 2 3 4
  普通話課程
  • 基礎普通話拼音課程 (免費)
  • 進階普通話拼音課程
  • 普通話會話:級別 1 2 3
  西班牙語文課程
  • 級別 1 2 3
  中醫課程
  • 濕疹與皮膚敏感病
  • 暗瘡與色斑 | 鼻敏感與感冒
  • 脫髮與白髮 | 從五官看健康
  攝影課程
  • 攝影初級
  • 攝影中級 (風景專題)
  • 戶外實景攝影實習
  風水命理課程
  • 紫微斗數:級別 1 2 3
  • 子平八字:級別 1 2 3
  • 八字風水:級別 1 2 3
  • 奇門遁甲:級別 1 2 3

這個頁面上的內容需要較新版本的 Adobe Flash Player。

取得 Adobe Flash Player