---
# System prepended metadata

title: 嘉藥_大數據分析(2021/02/01-2021/06/30)
tags: [Hadoop, 大數據分析]

---

---
title: 嘉藥_大數據分析(2021/02/01-2021/06/30)
tags: 大數據分析,Hadoop
description: 本門課的重點在輔導學生了解大數據的歷史由來及發展現狀，分享大數據零售行業、電信行業、互聯網行業相關企業的真實案例。
lang: zh
---
# 大數據分析
###### tags: 大數據分析,bigdata,opendata,hadoop


## 重要課程規定
### 評分方式
1. 期中考試：30%
2. 期末考試：30%
3. 平時成績（出席、課堂表現、作業）：40%
4. [額外全國競賽加分](https://tcat2021.twisc.ncku.edu.tw/):<font color="red">依課程說明</font>

## 課程大綱
本門課將以資安議題為出發角度，教導學生如何利用現有的網路相關log發掘出潛在的資安問題，並由淺入深教導學生如何看懂相關資料，並做出對應的分析結果。

## 相關使用軟體
1. Excel
2. Apache Hadoop Pig、Hive
3. Wireshark 封包分析

## 課程重要行程
1. 期中考:110年04月13日
2. 全國競賽初賽(課堂時間比):110年04月27日
3. <font color="RED">110年05月04日停課乙次，補課日期暫定為110年05月13日</font>
4. 期末考:110月05月25日
5. 全國競賽決賽(成大決賽):110年05月13日 下午

## 課程相關線上教材
1. 電子書:[大數據時代必學的超吸睛視覺化工具與技術:Excel+Tableau成功晉升資料分析師](https://cnu.ebook.hyread.com.tw/bookDetail.jsp?id=136443)
2. 線上影音教學: [Hadoop 線上課程](https://www.youtube.com/watch?v=I4esbC7ipbk&list=PLUuQL_ogRVuixcTdE9Q0XhvWz6l3p9xbC)

## 初探大數據課程
1. 使用資料集 ([會員註冊資料](https://drive.google.com/file/d/1OkRopnb4NPddqcYkS2dfjuGHfDMi9GG_/view?usp=sharing)、[會員點播紀錄](https://drive.google.com/file/d/1AI36xMLLhf39qYfro7Luaj-lWMtWpkSR/view?usp=sharing))

userprofile.tsv  (會員註冊資料)
|  欄位名稱 | 描述 | 型態 |
| -------- | -------- | -------- |
| userid     | 使用者 ID     | chararray     |
| gender     | 性別     | chararray     |
| age     | 年齡     | int    |
| country     | 國家     | chararray     |
| registered     | 註冊日期     | chararray     |
userdemand.tsv  (會員點播紀錄)
|  欄位名稱 | 描述 | 型態 |
| -------- | -------- | -------- |
| userid     | 使用者 ID     | chararray     |
| time     | 點聽時間     | chararray     |
| artname     | 歌手名稱     | chararray    |
| traname     | 歌曲名稱     | chararray     |

### 2021/03/02 課堂練習題目 (基礎-Excel)

#### 練習1 男性與女性的會員數分別是多少
:::spoiler 參考答案
m 182
f 137
:::

#### 練習2 來自於加拿大的男性會員人數(Canada)
::: spoiler 參考答案
    29
:::

#### 練習3 年齡介於20~30歲的會員人數
::: spoiler 參考答案
    212
:::

#### 練習4 2005年以後註冊的會員人數
::: spoiler 參考答案
    300
:::

#### 練習5 請查詢出在3~6月份註冊的會員人數
::: spoiler 參考答案
    118
:::

#### 練習6 請查詢低於平均會員年齡的會員資料有哪些
::: spoiler 參考答案
    202
:::

#### 練習7 請查詢年齡最多的前名五分別是幾歲與人數為何
::: spoiler 參考答案
21	35
22	34
24	20
23	20
19	19
20	19
:::

#### 練習8 請查詢註冊前五名的國家分別為那些，並顯示註冊人數
::: spoiler 參考答案
Canada	60
Germany	35
China	34
Taiwan	20
Poland	19
:::

#### 回家練習 請根據資料集查詢出所有會員資料表中，年輕族群(<30歲)的會員人數分別來自於那些國家(顯示前五名)
::: spoiler 參考答案
Canada	47
Germany	23
China	21
Poland	19
United States	11
:::

### 2021/03/09 課堂練習題目 (基礎-Excel)
#### 練習1 請根據資料集查詢出所有會員資料表中，年輕族群(<30歲)的會員人數分別來自於那些國家(顯示前五名)
::: spoiler 參考答案
Canada	47
Germany	23
China	21
Poland	19
United States	11
:::

#### 練習2 請根據資料集查詢出所有會員資料表中，那些國家的女性會員註冊人數是最多的，請顯示國家名稱與註冊人數
::: spoiler 參考答案
Canada	31
:::

#### 練習3 請根據資料集查詢出所有會員資料表中，年長族群(>40)的會員人數分別來自於那些國家(顯示前五名)
:::info
在使用樞紐分析表前，可以先使用函數進行資料前處理，這樣在樞紐分析表使用時會加快查詢速度
:::

:::spoiler 參考答案
    Taiwan	6
    China	3
    Germany	2
    Canada	1
    Switzerland	1
:::

#### 練習4 來自於加拿大(Canada)或男性會員人數
::: spoiler 參考答案
    213
:::

#### 練習5 請查詢每個國家的男性與女性會員人數，並顯示出女性會員人數前五名的國家
::: spoiler
    Canada	31	29	60
    China	18	16	34
    Poland	12	7	19
    Taiwan	9	11	20
    Germany	9	26	35
:::

#### 練習6 請查詢每個國家男性與女性註冊會員的比例，並查詢出男女比率，並顯示出男性/女性 介於 1 ~ 1.67 的國家。
:::info
除了資料的前處理以外，也可以利用資料的後處理來塞選資料
:::

::: spoiler 參考答案
    Taiwan
    Norway
    Brazil
    Russian Federation
    United Kingdom
    Greece
    Czech Republic
    Slovakia
:::

#### 練習7 查詢出女性占全國註冊人數超過60%的國家有哪些
::: spoiler 參考答案
    Croatia
    Trinidad and Tobago
    New Zealand
    Thailand
    Canada Minor Outlying Islands
    Armenia
    Nicaragua
    Bulgaria
    Spain
    Romania
    Poland
    Italy
    Mexico
:::

### 2021/03/16 課堂練習題目
#### 作業1 請根據資料集查詢出所有會員資料表中，年輕族群(<25歲)的會員人數分別來自於那些國家(顯示前五名)

#### 作業2 請根據資料集查詢出所有會員資料表中，那些國家的男性會員註冊人數是最多的，請顯示國家名稱與註冊人數

#### 作業3 請根據資料集查詢出所有會員資料表中，年長族群(>35)的會員人數分別來自於那些國家(顯示前五名)

#### 作業4 請根據資料集查詢出所有會員資料表中，查詢出每個國家壯年族群(30~50)歲的女性會員人數(顯示前五名)

#### 作業5 請查詢每個國家的男性與女性會員人數，並顯示出男性會員人數前五名的國家

#### 作業6 請查詢每個國家的男性與女性會員比例，並顯示出男性會員比例最高的前五名國家，如果名次相同請依照國家名稱由A-Z排序(僅顯示前五筆資料)

### 2021/03/23 課堂練習題目 (基礎-Excel)
#### 練習1 在點播紀錄中，哪一個歌手的點播次數最多
::: spoiler 參考答案
Radiohead	997
:::

#### 練習2 在點播紀錄中，哪一首歌曲的點播次數最多
::: spoiler 參考答案
Intro	169
:::

#### 練習3 哪一首歌曲擁有最多的歌手翻唱
:::spoiler 參考答案
Intro	103
:::

#### 練習4 哪一個國家的總點播次數最多
:::spoiler 參考答案
Canada	37110
:::

### 2021/03/30 課堂練習題目 (Wireshark 封包解析)
#### 課程檔案下載連結
[Wireshark 檔案下載](https://www.wireshark.org/download.html)
[分析檔案位置](https://drive.google.com/drive/folders/1PEOVCOUbPJ-m4Z6jGQ0uRJRPslet_1o1?usp=sharing)

#### 塞選器的使用
1. 擷取篩選器 (Capture filter)
2. 顯示篩選器 (Display filter)

#### 擷取篩選器常見語法
Type 識別ID名稱或代號 host, port
Dir 來源或目的地 src , dst
Proto 限定協定 ip, tcp, udp, http, ftp

#### 顯示塞選器常見語法
1. 過濾指定IP 
    ip.addr == 172.217.24.3
    ip.src == 172.217.24.3
    ip.dst == 172.217.24.3
2. 查詢指定協定
    http,http2,tls,arp,ftp,icmp ....
3. 常見運算子
    == 等於
    != 不等於
    > 大於
    < 小於
    >= 大於等於
    <= 小於等於
    Contains 包含
    Matches 正則表示查詢
    In 在某個集合中

#### 練習1: 查詢IP 來自於 192.192.45.119
:::spoiler 參考語法
ip.addr == 192.192.45.119
:::
#### 練習2: 查詢來源IP 來自於 192.192.45.119
:::spoiler 參考語法
ip.src == 192.192.45.119
:::
#### 練習3: 查詢目的IP 來自於 192.192.45.119
:::spoiler 參考語法
ip.dst == 192.192.45.119
:::
#### 練習4: 查詢IP 來自於 192.192.45.119 且 屬於ICMP的封包
:::spoiler 參考語法
ip.src == 192.192.45.119 and icmp
:::

#### 練習5: 查詢封包大小不足50的封包有哪些
:::spoiler 參考語法
frame.len < 50
:::

#### 練習6: 只顯示tcp協定且port為80的封包
:::spoiler 參考語法
tcp.port == 80
:::

#### 練習7: 查詢出使用port 80的HTTP協定的封包
:::spoiler 參考語法
tcp.port == 80 and http
:::

#### 練習8: 查詢使用tcp協定且目的地的port為80的封包有哪些
::: spoiler  參考語法
tcp.dstport == 80
:::

#### 練習9: 查詢目前gateway的mac地址為何?
:::spoiler 參考語法
先利用ipconfig查詢出gateway的地址，再利用wireshark過濾出ip.src塞選出gateway的封包並查尋出mac地址
ip.src == 192.168.159.126
:::

#### 練習10: 查詢mac地址為 cc:4e:24:8e:ef:e0 的封包有哪些
:::spoiler
eth.addr == cc:4e:24:8e:ef:e0
:::

#### 練習11: 查詢HTTP協定並使用POST的方法且封包大小超過500的封包有那些
:::spoiler
http and frame.len > 500 and http.request.method == "POST"
:::

### 2021/04/06 課堂練習題目 (Wireshark 封包解析)
#### HTTP 的風險
HTTP 是一種無加密的網路傳輸協定，請各位同學嘗試者找出一個HTTP的網站，並利用Wireshark觀察傳輸的情況吧

#### 練習1:過濾出 HTTP 的 POST 封包
:::spoiler 參考語法
http.request.method == "POST"
:::

#### 練習2:嘗試讀取 HTTPS 的封包內容
:::spoiler
礙於法規無法公開於網路上。
:::

#### 練習3:請查詢HTTP中的統計數據有關於JPEG的封包有幾個，並占了多少Byte

#### 練習4:請查詢封包紀錄中，目的地最多的IP為哪一個IP地址，並占了多少封包(Packets)

#### 練習4:HTTP請求封包中

### 2021/04/13 期中考
#### 考試題目
1.  請查詢出在9~12月份註冊的會員人數
:::spoiler
101
:::

2.  請查詢註冊人數介於20~30的國家有哪些，請顯示國家名稱與會員人數
:::spoiler
Taiwan	20
:::

3.  在點播紀錄中，點播次數排名第三名的歌手為哪位歌手，請顯示歌手名稱與點播次數
:::spoiler
Chemistry	780
:::

4.  在點播紀錄中，點播次數排名第三名的歌曲為哪首歌，請顯示歌曲名稱與點播次數
:::spoiler
Say You Will	74
:::

5.  請顯示點播次數排
:::spoiler
Canada	37110
Germany	14558
Turkey	10707
Poland	10664
United States	9255
:::

6.  請根據封包紀錄檔所錄製的封包，查詢出來源端或目的端的IP為 52.117.224.148的封包數量(Packets)有多少個
:::spoiler
54
:::

7.  請根據封包紀錄檔所錄製的封包，查詢出icmp的封包數量(Packets)有多少個，並查詢出與哪個IP進行icmp通訊
:::spoiler
192.192.45.119
:::

8.  我們側錄到使用者曾經上過eyny的論壇並搜尋一組關鍵字，請幫我根據側錄的封包找出這組關鍵字
:::spoiler
天竺鼠車車
:::

9.  我們側錄到使用者曾經上過eyny的論壇並有登入紀錄，請幫我根據側錄的封包找出該名使用者的帳號與密碼
:::spoiler
帳號:frank
密碼:15750705145A
:::

10. 請根據側錄的封包查詢出使用HTTP傳輸協定下載的圖片封包數量(Packets)與大小(Bytes)
:::spoiler
Packets:37 Bytes:508501
:::