SlideShare a Scribd company logo
1 of 13
加速開發!
在windows開發hadoop程式
直接運行 map/reduce
陳威宇
狀況!!
• 一般而言,常在windows 上開發hadoop 的程式,會用的方法都是,先開發
程式,打包成jar,丟到 linux 平台 run ,有錯再回來修改,打包,run ,無限
循環
• 以下的方法可以讓你直接在 eclipse 上直接run ,並立馬看結果與錯誤訊息等,
都可以在 eclipse 上直接看,並且可使用 debug 模式了解每一行程式運作的
過程
開發/修正
hadoop map-
reduce 程式
Export/Build
package 成 jar
上傳 hadoop 平
台
執行 hadoop jar
等待運作結果
找log 察錯誤
驗證結果
正
確
(15s) (5s) (1min~) (1min~)
(1min~)
開發/修正
hadoop map-
reduce 程式
執行 hadoop jar
等待運作結果
找log 察錯誤
驗證結果
正
確
(2s)
(10s) (10s)
eclipse eclipse linux linux linux
linux
eclipse eclipse eclipse
eclipse
Windows 上開發 map reduce 程式 => 需跨兩個平台,run一次至少 3分鐘以上
直接運行 => 直接在編輯器上,run 一次 22 秒 左右完成
節省 87%以上
的執行時間
四步驟,即可在windows 上編譯運作hadoop
mapreduce 程式
此方法可以提升在
windows 上開發
mapreduce 程式的
productivity
Ps : Linux 上用
eclipse 開發,用原
生的hadoop source
即可配置,直接運
行
• 下載 http://crawlzilla.nchc.org.tw/hadoop/hadoop_lib_workspace.zip
• 到指定的目錄下,如 D:waue
• 解壓縮後,D:wauehadoop_lib_workspace 多了兩個資料夾 bin , lib
1. 設定 hadoop windows library
╚ 1.1下載 hadoop windows lib 編譯檔
注意!! 在此提供的是 windows 7 / 64 bit 編譯後的 hadoop.dll 與 winutils.exe ,win 7 /
32bit 應該無法使用,請自行在網路上找別人編譯過檔案來放
• 將剛剛下載的 D:wauehadoop_lib_workspacebin 加入到 user path 中
1. 設定 hadoop windows library
╚ 1.2 設定 user path
此步驟可以解決 Error
Message : .NativeIO$Windows.access0(Ljava/lang/String;I)Z
• 建立 java專案 ( Source code 可參考以下,則一即可)
– https://dzone.com/articles/hadoop-basics-creating
– https://hadoop.apache.org/docs/current/hadoop-
mapreduce-client/hadoop-mapreduce-client-
core/MapReduceTutorial.html
2. 建立 eclipse hadoop project
╚ Build project
• Add external jars => D:wauehadoop_lib_workspacelib
2. 建立 eclipse hadoop project
╚ Add external jars (1)
• Add external jars => D:wauehadoop_lib_workspacelib
2. 建立 eclipse hadoop project
╚ Add external jars (2)
• Add external class => D:wauehadoop_lib_workspacebin
2. 建立 eclipse hadoop project
╚ Add external class (1)
• Add external class => D:wauehadoop_lib_workspacebin
2. 建立 eclipse hadoop project
╚ Add external class (2)
• HADOOP_HOME => D:wauehadoop_lib_workspace
3. run config 中 設定
╚ 設定 hadoop_home
4. run java application
結果
可以達到跟編寫一般java 程式般,簡單開發map
reduce 程式

More Related Content

What's hot

Bigdata 大資料分析實務 (進階上機課程)
Bigdata 大資料分析實務 (進階上機課程)Bigdata 大資料分析實務 (進階上機課程)
Bigdata 大資料分析實務 (進階上機課程)家雋 莊
 
Deployment with Capistrano
Deployment with CapistranoDeployment with Capistrano
Deployment with Capistrano旭 張
 
线上问题排查交流
线上问题排查交流线上问题排查交流
线上问题排查交流Edward Lee
 
使用Ubuntu架設hadoop
使用Ubuntu架設hadoop使用Ubuntu架設hadoop
使用Ubuntu架設hadooptaishanla
 
Mahout資料分析基礎入門
Mahout資料分析基礎入門Mahout資料分析基礎入門
Mahout資料分析基礎入門Jhang Raymond
 
Hadoop ecosystem - hadoop 生態系
Hadoop ecosystem - hadoop 生態系Hadoop ecosystem - hadoop 生態系
Hadoop ecosystem - hadoop 生態系Wei-Yu Chen
 
DAE 新变化介绍
DAE 新变化介绍DAE 新变化介绍
DAE 新变化介绍Tianwei Liu
 
Hadoop基线选定
Hadoop基线选定Hadoop基线选定
Hadoop基线选定baggioss
 
系统性能分析和优化.ppt
系统性能分析和优化.ppt系统性能分析和优化.ppt
系统性能分析和优化.pptFrank Cai
 
Bigdata 大資料分析實務 (進階上機課程)
Bigdata 大資料分析實務 (進階上機課程)Bigdata 大資料分析實務 (進階上機課程)
Bigdata 大資料分析實務 (進階上機課程)家雋 莊
 
Hbase运维碎碎念
Hbase运维碎碎念Hbase运维碎碎念
Hbase运维碎碎念haiyuan ning
 
Mysql企业备份发展及实践
Mysql企业备份发展及实践Mysql企业备份发展及实践
Mysql企业备份发展及实践maclean liu
 
Puppet安装总结
Puppet安装总结Puppet安装总结
Puppet安装总结Yiwei Ma
 
Altibase管理培训 安装篇
Altibase管理培训 安装篇Altibase管理培训 安装篇
Altibase管理培训 安装篇小新 制造
 
TomCat迁移步骤简述以及案例
TomCat迁移步骤简述以及案例TomCat迁移步骤简述以及案例
TomCat迁移步骤简述以及案例maclean liu
 
How to plan a hadoop cluster for testing and production environment
How to plan a hadoop cluster for testing and production environmentHow to plan a hadoop cluster for testing and production environment
How to plan a hadoop cluster for testing and production environmentAnna Yen
 
Big Java, Big Data
Big Java, Big DataBig Java, Big Data
Big Java, Big DataKuo-Chun Su
 

What's hot (20)

Bigdata 大資料分析實務 (進階上機課程)
Bigdata 大資料分析實務 (進階上機課程)Bigdata 大資料分析實務 (進階上機課程)
Bigdata 大資料分析實務 (進階上機課程)
 
Deployment with Capistrano
Deployment with CapistranoDeployment with Capistrano
Deployment with Capistrano
 
Hadoop hive
Hadoop hiveHadoop hive
Hadoop hive
 
线上问题排查交流
线上问题排查交流线上问题排查交流
线上问题排查交流
 
使用Ubuntu架設hadoop
使用Ubuntu架設hadoop使用Ubuntu架設hadoop
使用Ubuntu架設hadoop
 
Mahout資料分析基礎入門
Mahout資料分析基礎入門Mahout資料分析基礎入門
Mahout資料分析基礎入門
 
Hadoop ecosystem - hadoop 生態系
Hadoop ecosystem - hadoop 生態系Hadoop ecosystem - hadoop 生態系
Hadoop ecosystem - hadoop 生態系
 
DAE 新变化介绍
DAE 新变化介绍DAE 新变化介绍
DAE 新变化介绍
 
Something about Kafka - Why Kafka is so fast
Something about Kafka - Why Kafka is so fastSomething about Kafka - Why Kafka is so fast
Something about Kafka - Why Kafka is so fast
 
Hadoop基线选定
Hadoop基线选定Hadoop基线选定
Hadoop基线选定
 
系统性能分析和优化.ppt
系统性能分析和优化.ppt系统性能分析和优化.ppt
系统性能分析和优化.ppt
 
Bigdata 大資料分析實務 (進階上機課程)
Bigdata 大資料分析實務 (進階上機課程)Bigdata 大資料分析實務 (進階上機課程)
Bigdata 大資料分析實務 (進階上機課程)
 
Hbase运维碎碎念
Hbase运维碎碎念Hbase运维碎碎念
Hbase运维碎碎念
 
Docker
DockerDocker
Docker
 
Mysql企业备份发展及实践
Mysql企业备份发展及实践Mysql企业备份发展及实践
Mysql企业备份发展及实践
 
Puppet安装总结
Puppet安装总结Puppet安装总结
Puppet安装总结
 
Altibase管理培训 安装篇
Altibase管理培训 安装篇Altibase管理培训 安装篇
Altibase管理培训 安装篇
 
TomCat迁移步骤简述以及案例
TomCat迁移步骤简述以及案例TomCat迁移步骤简述以及案例
TomCat迁移步骤简述以及案例
 
How to plan a hadoop cluster for testing and production environment
How to plan a hadoop cluster for testing and production environmentHow to plan a hadoop cluster for testing and production environment
How to plan a hadoop cluster for testing and production environment
 
Big Java, Big Data
Big Java, Big DataBig Java, Big Data
Big Java, Big Data
 

Viewers also liked

大資料趨勢介紹與相關使用技術
大資料趨勢介紹與相關使用技術大資料趨勢介紹與相關使用技術
大資料趨勢介紹與相關使用技術Wei-Yu Chen
 
Hadoop 2.0 之古往今來
Hadoop 2.0 之古往今來Hadoop 2.0 之古往今來
Hadoop 2.0 之古往今來Wei-Yu Chen
 
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 HadooperFred Chiang
 
1 to 1 Presentation 2015
1 to 1 Presentation 20151 to 1 Presentation 2015
1 to 1 Presentation 2015James Puliatte
 
Big data connection overview by aibdp.org
Big data connection overview by aibdp.orgBig data connection overview by aibdp.org
Big data connection overview by aibdp.orgAIBDP
 
Hadoop 0.20 程式設計
Hadoop 0.20 程式設計Hadoop 0.20 程式設計
Hadoop 0.20 程式設計Wei-Yu Chen
 
Hadoop Powers Modern Enterprise Data Architectures
Hadoop Powers Modern Enterprise Data ArchitecturesHadoop Powers Modern Enterprise Data Architectures
Hadoop Powers Modern Enterprise Data ArchitecturesDataWorks Summit
 
MapReduce 簡單介紹與練習
MapReduce 簡單介紹與練習MapReduce 簡單介紹與練習
MapReduce 簡單介紹與練習孜羲 顏
 
Storm特性
Storm特性Storm特性
Storm特性zyh
 
啟程:Data Technology 的待客之道
啟程:Data Technology 的待客之道啟程:Data Technology 的待客之道
啟程:Data Technology 的待客之道Etu Solution
 
台灣 Hadoop Big Data 2014 趨勢預測與企業策略藍圖
台灣 Hadoop Big Data 2014 趨勢預測與企業策略藍圖台灣 Hadoop Big Data 2014 趨勢預測與企業策略藍圖
台灣 Hadoop Big Data 2014 趨勢預測與企業策略藍圖Etu Solution
 
Data Leaders in Action - 資料價值領袖風範與關鍵行動
Data Leaders in Action - 資料價值領袖風範與關鍵行動Data Leaders in Action - 資料價值領袖風範與關鍵行動
Data Leaders in Action - 資料價值領袖風範與關鍵行動Etu Solution
 
那些你知道的,但還沒看過的 Big Data 風景
那些你知道的,但還沒看過的 Big Data 風景那些你知道的,但還沒看過的 Big Data 風景
那些你知道的,但還沒看過的 Big Data 風景Etu Solution
 
工程師必備第一工具 - Git
工程師必備第一工具 - Git工程師必備第一工具 - Git
工程師必備第一工具 - GitAlan Tsai
 
資料科學團隊人才培育分享 ─ 以 DSP 為例
資料科學團隊人才培育分享 ─ 以 DSP 為例資料科學團隊人才培育分享 ─ 以 DSP 為例
資料科學團隊人才培育分享 ─ 以 DSP 為例Fred Chiang
 
Summary of Insights Learned from the Data Science Program Team Training
Summary of Insights Learned from the Data Science Program Team TrainingSummary of Insights Learned from the Data Science Program Team Training
Summary of Insights Learned from the Data Science Program Team TrainingFred Chiang
 
轉兌數據的價值 — 從導購到策購
轉兌數據的價值 — 從導購到策購轉兌數據的價值 — 從導購到策購
轉兌數據的價值 — 從導購到策購Fred Chiang
 
資料價值 — 一位資料產品經理的視野
資料價值 — 一位資料產品經理的視野資料價值 — 一位資料產品經理的視野
資料價值 — 一位資料產品經理的視野Fred Chiang
 

Viewers also liked (20)

大資料趨勢介紹與相關使用技術
大資料趨勢介紹與相關使用技術大資料趨勢介紹與相關使用技術
大資料趨勢介紹與相關使用技術
 
Hadoop pig
Hadoop pigHadoop pig
Hadoop pig
 
Hadoop 2.0 之古往今來
Hadoop 2.0 之古往今來Hadoop 2.0 之古往今來
Hadoop 2.0 之古往今來
 
Hadoop sqoop
Hadoop sqoop Hadoop sqoop
Hadoop sqoop
 
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
那些你知道的,但還沒看過的 Big Data 風景 ─ 致 Hadooper
 
1 to 1 Presentation 2015
1 to 1 Presentation 20151 to 1 Presentation 2015
1 to 1 Presentation 2015
 
Big data connection overview by aibdp.org
Big data connection overview by aibdp.orgBig data connection overview by aibdp.org
Big data connection overview by aibdp.org
 
Hadoop 0.20 程式設計
Hadoop 0.20 程式設計Hadoop 0.20 程式設計
Hadoop 0.20 程式設計
 
Hadoop Powers Modern Enterprise Data Architectures
Hadoop Powers Modern Enterprise Data ArchitecturesHadoop Powers Modern Enterprise Data Architectures
Hadoop Powers Modern Enterprise Data Architectures
 
MapReduce 簡單介紹與練習
MapReduce 簡單介紹與練習MapReduce 簡單介紹與練習
MapReduce 簡單介紹與練習
 
Storm特性
Storm特性Storm特性
Storm特性
 
啟程:Data Technology 的待客之道
啟程:Data Technology 的待客之道啟程:Data Technology 的待客之道
啟程:Data Technology 的待客之道
 
台灣 Hadoop Big Data 2014 趨勢預測與企業策略藍圖
台灣 Hadoop Big Data 2014 趨勢預測與企業策略藍圖台灣 Hadoop Big Data 2014 趨勢預測與企業策略藍圖
台灣 Hadoop Big Data 2014 趨勢預測與企業策略藍圖
 
Data Leaders in Action - 資料價值領袖風範與關鍵行動
Data Leaders in Action - 資料價值領袖風範與關鍵行動Data Leaders in Action - 資料價值領袖風範與關鍵行動
Data Leaders in Action - 資料價值領袖風範與關鍵行動
 
那些你知道的,但還沒看過的 Big Data 風景
那些你知道的,但還沒看過的 Big Data 風景那些你知道的,但還沒看過的 Big Data 風景
那些你知道的,但還沒看過的 Big Data 風景
 
工程師必備第一工具 - Git
工程師必備第一工具 - Git工程師必備第一工具 - Git
工程師必備第一工具 - Git
 
資料科學團隊人才培育分享 ─ 以 DSP 為例
資料科學團隊人才培育分享 ─ 以 DSP 為例資料科學團隊人才培育分享 ─ 以 DSP 為例
資料科學團隊人才培育分享 ─ 以 DSP 為例
 
Summary of Insights Learned from the Data Science Program Team Training
Summary of Insights Learned from the Data Science Program Team TrainingSummary of Insights Learned from the Data Science Program Team Training
Summary of Insights Learned from the Data Science Program Team Training
 
轉兌數據的價值 — 從導購到策購
轉兌數據的價值 — 從導購到策購轉兌數據的價值 — 從導購到策購
轉兌數據的價值 — 從導購到策購
 
資料價值 — 一位資料產品經理的視野
資料價值 — 一位資料產品經理的視野資料價值 — 一位資料產品經理的視野
資料價值 — 一位資料產品經理的視野
 

Similar to 加速開發! 在Windows開發hadoop程式,直接運行 map/reduce

使用 wagon + VS Code 輕鬆打造 Windows 平台 PHP/Laravel 開發環境
使用 wagon + VS Code 輕鬆打造 Windows 平台 PHP/Laravel 開發環境使用 wagon + VS Code 輕鬆打造 Windows 平台 PHP/Laravel 開發環境
使用 wagon + VS Code 輕鬆打造 Windows 平台 PHP/Laravel 開發環境Shengyou Fan
 
Effective linux.1.(commandline)
Effective linux.1.(commandline)Effective linux.1.(commandline)
Effective linux.1.(commandline)wang hongjiang
 
Introduction to Golang final
Introduction to Golang final Introduction to Golang final
Introduction to Golang final Paul Chao
 
[Modern Web Conf 2015] 給 PHP 開發者的 Composer 錦囊
[Modern Web Conf 2015] 給 PHP 開發者的 Composer 錦囊[Modern Web Conf 2015] 給 PHP 開發者的 Composer 錦囊
[Modern Web Conf 2015] 給 PHP 開發者的 Composer 錦囊Shengyou Fan
 
2012 java two-desktop-appliction-using-j-ruby-with-swt
2012 java two-desktop-appliction-using-j-ruby-with-swt2012 java two-desktop-appliction-using-j-ruby-with-swt
2012 java two-desktop-appliction-using-j-ruby-with-swttka
 
凌波微步:wagon + VS Code 的輕功哲學
凌波微步:wagon + VS Code 的輕功哲學凌波微步:wagon + VS Code 的輕功哲學
凌波微步:wagon + VS Code 的輕功哲學Shengyou Fan
 
運用 Docker 整合 Laravel 提升團隊開發效率
運用 Docker 整合 Laravel 提升團隊開發效率運用 Docker 整合 Laravel 提升團隊開發效率
運用 Docker 整合 Laravel 提升團隊開發效率Bo-Yi Wu
 
Monster Processing Workshop (dayOne)
Monster Processing Workshop (dayOne)Monster Processing Workshop (dayOne)
Monster Processing Workshop (dayOne)Akinori Kinoshita
 
專案啟動與設定
專案啟動與設定專案啟動與設定
專案啟動與設定Shengyou Fan
 

Similar to 加速開發! 在Windows開發hadoop程式,直接運行 map/reduce (10)

使用 wagon + VS Code 輕鬆打造 Windows 平台 PHP/Laravel 開發環境
使用 wagon + VS Code 輕鬆打造 Windows 平台 PHP/Laravel 開發環境使用 wagon + VS Code 輕鬆打造 Windows 平台 PHP/Laravel 開發環境
使用 wagon + VS Code 輕鬆打造 Windows 平台 PHP/Laravel 開發環境
 
Effective linux.1.(commandline)
Effective linux.1.(commandline)Effective linux.1.(commandline)
Effective linux.1.(commandline)
 
Introduction to Golang final
Introduction to Golang final Introduction to Golang final
Introduction to Golang final
 
[Modern Web Conf 2015] 給 PHP 開發者的 Composer 錦囊
[Modern Web Conf 2015] 給 PHP 開發者的 Composer 錦囊[Modern Web Conf 2015] 給 PHP 開發者的 Composer 錦囊
[Modern Web Conf 2015] 給 PHP 開發者的 Composer 錦囊
 
2012 java two-desktop-appliction-using-j-ruby-with-swt
2012 java two-desktop-appliction-using-j-ruby-with-swt2012 java two-desktop-appliction-using-j-ruby-with-swt
2012 java two-desktop-appliction-using-j-ruby-with-swt
 
凌波微步:wagon + VS Code 的輕功哲學
凌波微步:wagon + VS Code 的輕功哲學凌波微步:wagon + VS Code 的輕功哲學
凌波微步:wagon + VS Code 的輕功哲學
 
運用 Docker 整合 Laravel 提升團隊開發效率
運用 Docker 整合 Laravel 提升團隊開發效率運用 Docker 整合 Laravel 提升團隊開發效率
運用 Docker 整合 Laravel 提升團隊開發效率
 
Monster Processing Workshop (dayOne)
Monster Processing Workshop (dayOne)Monster Processing Workshop (dayOne)
Monster Processing Workshop (dayOne)
 
專案啟動與設定
專案啟動與設定專案啟動與設定
專案啟動與設定
 
Gulp
GulpGulp
Gulp
 

加速開發! 在Windows開發hadoop程式,直接運行 map/reduce

  • 2. 狀況!! • 一般而言,常在windows 上開發hadoop 的程式,會用的方法都是,先開發 程式,打包成jar,丟到 linux 平台 run ,有錯再回來修改,打包,run ,無限 循環 • 以下的方法可以讓你直接在 eclipse 上直接run ,並立馬看結果與錯誤訊息等, 都可以在 eclipse 上直接看,並且可使用 debug 模式了解每一行程式運作的 過程 開發/修正 hadoop map- reduce 程式 Export/Build package 成 jar 上傳 hadoop 平 台 執行 hadoop jar 等待運作結果 找log 察錯誤 驗證結果 正 確 (15s) (5s) (1min~) (1min~) (1min~) 開發/修正 hadoop map- reduce 程式 執行 hadoop jar 等待運作結果 找log 察錯誤 驗證結果 正 確 (2s) (10s) (10s) eclipse eclipse linux linux linux linux eclipse eclipse eclipse eclipse Windows 上開發 map reduce 程式 => 需跨兩個平台,run一次至少 3分鐘以上 直接運行 => 直接在編輯器上,run 一次 22 秒 左右完成 節省 87%以上 的執行時間
  • 3. 四步驟,即可在windows 上編譯運作hadoop mapreduce 程式 此方法可以提升在 windows 上開發 mapreduce 程式的 productivity Ps : Linux 上用 eclipse 開發,用原 生的hadoop source 即可配置,直接運 行
  • 4. • 下載 http://crawlzilla.nchc.org.tw/hadoop/hadoop_lib_workspace.zip • 到指定的目錄下,如 D:waue • 解壓縮後,D:wauehadoop_lib_workspace 多了兩個資料夾 bin , lib 1. 設定 hadoop windows library ╚ 1.1下載 hadoop windows lib 編譯檔 注意!! 在此提供的是 windows 7 / 64 bit 編譯後的 hadoop.dll 與 winutils.exe ,win 7 / 32bit 應該無法使用,請自行在網路上找別人編譯過檔案來放
  • 5. • 將剛剛下載的 D:wauehadoop_lib_workspacebin 加入到 user path 中 1. 設定 hadoop windows library ╚ 1.2 設定 user path 此步驟可以解決 Error Message : .NativeIO$Windows.access0(Ljava/lang/String;I)Z
  • 6. • 建立 java專案 ( Source code 可參考以下,則一即可) – https://dzone.com/articles/hadoop-basics-creating – https://hadoop.apache.org/docs/current/hadoop- mapreduce-client/hadoop-mapreduce-client- core/MapReduceTutorial.html 2. 建立 eclipse hadoop project ╚ Build project
  • 7. • Add external jars => D:wauehadoop_lib_workspacelib 2. 建立 eclipse hadoop project ╚ Add external jars (1)
  • 8. • Add external jars => D:wauehadoop_lib_workspacelib 2. 建立 eclipse hadoop project ╚ Add external jars (2)
  • 9. • Add external class => D:wauehadoop_lib_workspacebin 2. 建立 eclipse hadoop project ╚ Add external class (1)
  • 10. • Add external class => D:wauehadoop_lib_workspacebin 2. 建立 eclipse hadoop project ╚ Add external class (2)
  • 11. • HADOOP_HOME => D:wauehadoop_lib_workspace 3. run config 中 設定 ╚ 設定 hadoop_home
  • 12. 4. run java application