hadoop第二部分

2022-12-11 12:48:03 字數 3938 閱讀 2088

hadoop第二部分課程筆記

1. hadoop提供的配置檔案

a) 提供hadoop的預設配置引數,在使用者不改變的情況下,hadoop按照上述的配置資訊執行系統

b) 放置在$hadoop_home/etc/hadoop位置

需要hadoop程式設計師根據所處理的需求進行修改,修改的就是中預設內容.

c) hadoop的配置資訊的執行順序

1. 命令列–d

2. 編碼過程中 configuration#set()

3. 當前專案中設定的 ….

4. hadoop按照目錄下的 etc/hadoop/*

5. 預設 *

1. mapreduce執行的思想

a) 傳統開發中,把所處理的資料全部載入到記憶體中進行處理,不適合大資料的開發方式.(記憶體不夠用 outofmemory)

b) **移動

必須掌握 yarn排程mapreduce執行過程

2. mapreduce使用的步驟

a) hdfs集群的基礎之上構建yarn

sl**es 配置

datanode

nodemanager

scp 配置檔案的同步

啟動yarn sbin/ resourcemanager所在的機器上啟動

b) mr程式設計模型

c) word count

d) mrv1(windows 本地開發)最簡單測試(自己玩)

1. 本地解壓縮hadoop-2.6.0包

2. 配置hadoop_home環境變數

3. 把hadoop window的庫拷貝到

4. 改原始碼 access return true

job_local75748178_0001本地作業本作業系統的jvm提供資源

job_75748178_0001 yarn作業 yarn框架進行提供資源

e) mrv2 (實戰開發)

1. mr處理的資料放置在hdfs

2. 把程式設計師寫好的mr程式打成jar 並指定main函式在那個類中,上傳到yarn的resourcemanager中

例如 $hadoop_home/jars

3. 執行mapreduce命令

bin/yarn jar jars/

4. 檢視yarn管理資訊

f) myeclipse 如果便捷開發的話

1. 打jar 指定 jar中main函式

2. 簡化jar上傳到遠端伺服器方式

3. clean package wagon:upload-single

g) myeclipse直接連線遠端yarn集群

1.2. 設定**

3. 設定mr的訪問許可權

4. 效果圖

a) 3. mapreduce中資料型別

a) writable

|-b) 為什麼hadoop 進行基本型別的封裝?

writable 網路傳輸序列化

writable compareble shuffle 排序

c) hadoop體系如何自定義型別充當(mapreduce key value)

自定義型別中

1. 自定義物件的開發步驟

a) 類 implements writablecompareble

b) 實現4個基礎方法 equals hastcode tostring() compareto

c) 實現writable介面定義 write() readfield()

2. 需求:

4. mapreduce5個步驟中的第一步(fileinputformat)

a) 為什麼fileinputformat可以把datanode中的資料變成 kv對.

1. map 讀出資料是通過 split 切片獲得

2. split 與 block 關係預設是一一對應的: *:1 1:1

乙個split不能對應多個塊的原因:跨網路傳輸資料效率

3. split是邏輯的概念不包含資料只包含資料的位置 block 主機等資訊

4. 原始碼

5. recodereader

具體把 split資料封裝 key value

textinputformat

new linerecordreadernextkeyvalue()

6. 其他常見的inputformat

a) keyvalueinputformat

key value 通過 /t 區分

b) nlineinputformat (longwritable text)

c) dbinputformat key行序號實體 implement dbwritable

1. 自定義實體 implmenet dbwritable

2. map reduce<>

3. 執行job

匯入mysql的驅動jar包

mapreduce中如何設定第三方依賴jar

bin/yarn jar -libjars=/opt/jar/ jars/

warn 2016-12-30 15:42:27,272 hadoop command-line option parsing not performed.

implement the tool inte***ce and execute your application with toolrunner to remedy this.

編碼的過程中指定:

mysql使用的過程中預設外部計算機沒有許可權直接訪問本計算mysql服務

use mysql

grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

flush privileges;

7. 計數器

統計工作:便於程式設計師進行mr作業的監控

自定義計數器的工作 : 監控我們想要監控的資料.

8. map中的細節分析

9. shuffle階段中的排序方式

按照都是key的形式進行排序

a) map輸出之後排序

b) 彙總多個map之後分組之前的排序

分組之前的排序可以手工干預

演算法 (二次排序)

10. shuffle 分割槽 partition

a) reduce數量預設 1

增加reduce數量編碼完成

為什麼要做reduce劃分呢?

提供程式的吞吐量,變相的負載均衡

多個資料在reduce中的分配演算法

有parition分割槽決定

預設:自定義分割槽

1. 自定義分割槽這個類

2. job shuffle設定進去

reduce是0 不影響mapreduce的執行,最後輸出的內容 map輸出的結果,reduce為0情況有需求

思考題:

11. shuffle階段的combiner[可選]

map端的reduce

12. shuffle 壓縮

snappy壓縮演算法:預設 hadoop不支援

演算法g13. outputformat

14. 案例 (topkey)

15. 原理分析

a) job作業的提交

提交任務核心:

1. 構架cluster(代表yarn集群) --構架實際互動者yarnrunner

2. 提交任務

底層上一步構建yarnrunner

檢查輸入目錄

生成作業的id

相關作業的資訊(配置資訊第三方jar) 上傳hdfs系統中

計算分片底層inputformat ----recordreader—splits ---maps

提交作業 yarnclientimpl完成.

b) yarn如何在作業提交後與 job配合

上一步原始碼分析完成的是本張圖 1 操作

c) shuffle原理

ps第二部分

第二部分 操作題 共80分 一 文字的製作 放射字 火焰字 泡泡字 木紋字 立體字 霓虹燈字就是大概平時學的那些文字製作了,有可能的話,都學會。有下劃線的是最重要的,下面都是一樣 二 效果製作 無中生有的作圖 閃電效果 下雨效果 星空效果 環環相扣效果 我同學有個就要求做乙個 奧運五環 的標誌 三 ...

第二部分 制度規範

一 導購員行為規範 銷售員工作定義 引導顧客消費,宣傳產品和提公升品牌 維護店面形象,管理協助 活動 收集市場資訊,匯報日常銷量情況 管理售點物流,保障店面貨物安全 維護客戶關係,溝通廠家和商家 處理顧客投訴,溝通顧客和廠家 店長 負責特許加盟店的日常事務 人員及營業等各項管理工作 努力完成特許加盟...

第二部分人基本

姓名 尹杰 性別 男 年齡 20 籍貫 浙江台州 學校 中國計量學院 學院 光電學院 班級及專業 13光電1班 聯絡 159 e mail 社會工作情況 大一第一學期本人任班級中心理委員兼任生活委員加入了學院黨員之家的實踐部及心理社,是志願者大隊組織部的幹事,並參加了思威跆拳道 獲獎情況 第三部分目...