- 浏览: 139120 次
- 性别:
- 来自: 上海
最新评论
-
xueyinv86:
你这个增强版的wordcount是在哪个版本的hadoop上跑 ...
MapReduce入门程序WordCount增强版 -
chenjianjx:
很不错的收集!
几篇关于Hadoop+Hive数据仓库的入门文章 -
canedy:
import org.apache.hadoop.hbase. ...
使用HBase的一个典型例子,涉及了HBase中很多概念 -
天籁の圁:
你的图全部挂了啊
基于Eclipse的Hadoop应用开发环境的配置 -
landyer:
happinesss 写道你是做java开发的吗我是杂货铺,什 ...
MongoDB1.8安装、分布式自动分片(Auto-Sharding)配置备忘
最新版本的 Eclipse 3.5 搭配 Ubuntu 9.04 + hadoop-eclipse-plugin 0.20.1 ,初步測試功能皆可正常運作 但 Ubuntu 9.10 的 各版本 Eclipse , 似乎會有 gtk 圖形介面的bug ,有此一說增加 GDK_NATIVE_WINDOWS=1 就可以解決問題,但經過初步測試似乎無用 安裝的部份沒必要都一模一樣,僅提供參考,反正只要安裝好java , hadoop , eclipse,並清楚自己的路徑就可以了 首先安裝java 基本套件 1 將javadoc (jdk-6u10-docs.zip) 下載下來 下載點 2 下載完後將檔案放在 /tmp/ 下 3 執行 執行ssh localhost 沒有出現詢問密碼的訊息則無誤 安裝hadoop0.20到/opt/並取目錄名為hadoop 一開始會出現問你要將工作目錄放在哪裡:在這我們用預設值 PS: 之後的說明則是在eclipse 上的介面操作 建立mapreduce專案(1) 建立mapreduce專案的(2) 由於剛剛建立了icas這個專案,因此eclipse已經建立了新的專案,出現在左邊視窗,右鍵點選該資料夾,並選properties Step1. 右鍵點選project的properties做細部設定 Step2. 進入專案的細部設定頁 Step3. hadoop的javadoc的設定完後(2) Step4. java本身的javadoc的設定(3) 設定完後回到eclipse 主視窗 Step1. 視窗右下角黃色大象圖示"Map/Reduce Locations tag" -> 點選齒輪右邊的藍色大象圖示: Step2. 進行eclipse 與 hadoop 間的設定(2) 設定完後,可以看到下方多了一隻藍色大象,左方展開資料夾也可以秀出在hdfs內的檔案結構 建立WordCount.java,此檔用來驅動mapper 與 reducer,因此選擇 Map/Reduce Driver 有一熱心的hadoop使用者提供一個能讓 run-on-hadoop 這個功能恢復的方法。 原因是hadoop 的 eclipse-plugin 也許是用eclipse europa 這個版本開發的,而eclipse 的各版本 3.2 , 3.3, 3.4 間也都有或多或少的差異性存在。 因此如果先用eclipse europa 來建立一個新專案,之後把europa的eclipse這個版本關掉,換用eclipse 3.4開啟,之後這個專案就能用run-on-mapreduce 這個功能囉! 有興趣的話可以試試!(感謝逢甲資工所謝同學) 零. 前言 ¶
單位
作者
Mail
國家高速網路中心-格網技術組
Wei-Yu Chen
waue @ nchc.org.tw
0.0 Info Update ¶
0.1 環境說明 ¶
0.2 目錄說明 ¶
一、安裝 ¶
1.1. 安裝java ¶
$ sudo apt-get install java-common sun-java6-bin sun-java6-jdk sun-java6-jre
1.1.1. 安裝sun-java6-doc ¶
$ sudo apt-get install sun-java6-doc
1.2. ssh 安裝設定 ¶
$ apt-get install ssh $ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys $ ssh localhost
1.3. 安裝hadoop ¶
$ cd ~ $ wget http://apache.ntu.edu.tw/hadoop/core/hadoop-0.20.0/hadoop-0.20.0.tar.gz $ tar zxvf hadoop-0.20.0.tar.gz $ sudo mv hadoop-0.20.0 /opt/ $ sudo chown -R waue:waue /opt/hadoop-0.20.0 $ sudo ln -sf /opt/hadoop-0.20.0 /opt/hadoop
export JAVA_HOME=/usr/lib/jvm/java-6-sun export HADOOP_HOME=/opt/hadoop exportPATH=$PATH:/opt/hadoop/bin
<configuration> <property> <name>fs.default.name</name> <value>hdfs://localhost:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/tmp/hadoop/hadoop-${user.name}</value> </property> </configuration>
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>
<configuration> <property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> </configuration>
$ cd /opt/hadoop $ source /opt/hadoop/conf/hadoop-env.sh $ hadoop namenode -format $ start-all.sh $ hadoop fs -put conf input $ hadoop fs -ls
1.4. 安裝eclipse ¶
$ cd ~ $ wget http://ftp.cs.pu.edu.tw/pub/eclipse/eclipse/downloads/drops/R-3.4.2-200902111700/eclipse-SDK-3.4.2-linux-gtk.tar.gz
$ cd ~ $ tar -zxvf eclipse-SDK-3.4.2-linux-gtk.tar.gz $ sudo mv eclipse /opt $ sudo ln -sf /opt/eclipse/eclipse /usr/local/bin/
二、 建立專案 ¶
2.1 安裝hadoop 的 eclipse plugin ¶
$ cd /opt/hadoop $ sudo cp /opt/hadoop/contrib/eclipse-plugin/hadoop-0.20.0-eclipse-plugin.jar /opt/eclipse/plugins
$ sudo vim /opt/eclipse/eclipse.ini
-startup plugins/org.eclipse.equinox.launcher_1.0.101.R34x_v20081125.jar --launcher.library plugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.0.101.R34x_v20080805 -showsplash org.eclipse.platform --launcher.XXMaxPermSize 512m -vmargs -Xms40m -Xmx512m
2.2 開啟eclipse ¶
$ eclipse &
2.3 選擇視野 ¶
window ->
open pers.. ->
other.. ->
map/reduce
2.4 建立專案 ¶
file ->
new ->
project ->
Map/Reduce ->
Map/Reduce Project ->
next
project name-> 輸入 : icas (隨意) use default hadoop -> Configur Hadoop install... -> 輸入:"/opt/hadoop" -> ok Finish
2.5 設定專案 ¶
source ...-> 輸入:/opt/opt/hadoop-0.20.0/src javadoc ...-> 輸入:file:/opt/hadoop/docs/api/
2.6 連接hadoop server ¶
Location Name -> 輸入:hadoop (隨意) Map/Reduce Master -> Host-> 輸入:localhost Map/Reduce Master -> Port-> 輸入:9001 DFS Master -> Host-> 輸入:9000 Finish
三、 撰寫範例程式 ¶
3.1 mapper.java ¶
File ->
new ->
mapper
source folder-> 輸入: icas/src Package : Sample Name -> : mapper
package Sample; import java.io.IOException; import java.util.StringTokenizer; importorg.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.Text; importorg.apache.hadoop.mapreduce.Mapper; public class mapper extends Mapper<Object, Text, Text,IntWritable> { private final static IntWritable one = new IntWritable(1); private Text word = newText(); public void map(Object key, Text value, Context context) throws IOException,InterruptedException { StringTokenizer itr = new StringTokenizer(value.toString()); while(itr.hasMoreTokens()) { word.set(itr.nextToken()); context.write(word, one); } } }
3.2 reducer.java ¶
source folder-> 輸入: icas/src Package : Sample Name -> : reducer
package Sample; import java.io.IOException; import org.apache.hadoop.io.IntWritable; importorg.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Reducer; public class reducerextends Reducer<Text, IntWritable, Text, IntWritable> { private IntWritable result = newIntWritable(); public void reduce(Text key, Iterable<IntWritable> values, Context context) throwsIOException, InterruptedException { int sum = 0; for (IntWritable val : values) { sum +=val.get(); } result.set(sum); context.write(key, result); } }
3.3 WordCount.java (main function) ¶
source folder-> 輸入: icas/src Package : Sample Name -> : WordCount.java
package Sample; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.Text; importorg.apache.hadoop.mapreduce.Job; import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat; importorg.apache.hadoop.util.GenericOptionsParser; public class WordCount { public static voidmain(String[] args) throws Exception { Configuration conf = new Configuration(); String[]otherArgs = new GenericOptionsParser(conf, args) .getRemainingArgs(); if (otherArgs.length != 2) {System.err.println("Usage: wordcount <in> <out>"); System.exit(2); } Job job = new Job(conf, "word count"); job.setJarByClass(WordCount.class); job.setMapperClass(mapper.class);job.setCombinerClass(reducer.class); job.setReducerClass(reducer.class);job.setOutputKeyClass(Text.class); job.setOutputValueClass(IntWritable.class);FileInputFormat.addInputPath(job, new Path(otherArgs[0])); FileOutputFormat.setOutputPath(job, newPath(otherArgs[1])); System.exit(job.waitForCompletion(true) ? 0 : 1); } }
$ cd workspace/icas $ ls src/Sample/ mapper.java reducer.java WordCount.java $ ls bin/Sample/ mapper.class reducer.class WordCount.class
四、測試範例程式 ¶
4.1 解除run-on-hadoop封印 ¶
4.2 運用終端指令 ¶
4.2.1 產生Makefile 檔 ¶
$ cd /home/waue/workspace/icas/ $ gedit Makefile
JarFile="sample-0.1.jar" MainFunc="Sample.WordCount" LocalOutDir="/tmp/output" all:help jar: jar -cvf ${JarFile} -C bin/ . run: hadoop jar ${JarFile} ${MainFunc} input output clean: hadoop fs -rmr output output: rm -rf ${LocalOutDir} hadoop fs -get output ${LocalOutDir} gedit${LocalOutDir}/part-r-00000 & help: @echo "Usage:" @echo " make jar - Build Jar File." @echo " make clean - Clean up Output directory on HDFS." @echo " make run - Run your MapReduce code on Hadoop." @echo " make output - Download and show output file" @echo " make help - Show Makefile options." @echo " " @echo "Example:" @echo " make jar; make run; make output; make clean"
4.2.2 執行 ¶
$ cd /home/waue/workspace/icas/ $ make Usage: make jar - Build Jar File. make clean - Clean up Output directory on HDFS. make run - Run your MapReduce code on Hadoop. make output - Download and show output file make help - Show Makefile options. Example: make jar; make run; make output; make clean
make jar ¶
$ make jar
make run ¶
$ make run
make output ¶
$ make output
make clean ¶
$ make clean
五、結論 ¶
<ul style=
发表评论
-
thrift安装资料集合
2011-06-22 14:19 1100http://www.buywine168.com/index ... -
在Ubuntu下编译安装Thrift(支持php和c++)
2011-06-22 14:16 1602原文地址:http://www.coder4.com/arch ... -
HBase Thrift 0.5.0 + PHP 5 安裝設定
2011-06-22 14:13 1828原文地址: http://blog.kfchph.com ... -
Hadoop+hbase+thrift H.H.T环境部署
2011-06-21 12:58 1065原文地址:http://blog.sina.com.cn/s/ ... -
php操作hbase例子
2011-06-21 10:59 22981 $GLOBALS['THRIFT_ROOT'] = '/h ... -
HBase技术介绍
2011-06-21 10:54 1053原文地址:http://www.searc ... -
详细讲解Hadoop中的一个简单数据库HBase
2011-06-08 17:29 917原文地址:http://databas ... -
hive sql语法解读
2011-06-08 16:52 1318版权声明:转载时请以超链接形式标明文章原始出处和作者信息及 ... -
Hive 的启动方式
2011-06-08 16:49 2459Hive 的启动方式 hive 命令行 ... -
Hive环境搭建与入门
2011-06-08 16:47 1485原文地址:http://www.jiacheo.org ... -
Hbase入门6 -白话MySQL(RDBMS)与HBase之间
2011-06-08 15:38 1537作者: H.E. | 您可以转载, ... -
Apache Hive入门3–Hive与HBase的整合
2011-06-08 10:03 1534作者: H.E. | 您可以转载, ... -
Apache Hive入门2
2011-06-08 10:00 1297我的偏见: 对于互联 ... -
Apache Hive入门1
2011-06-08 09:59 2502作者: H.E. | 您可以转载, ... -
hbase分布安装部署
2011-06-07 22:37 17751、 hbase安装部署#cd /hadoop# ... -
使用HBase的一个典型例子,涉及了HBase中很多概念
2011-06-07 15:38 1542一个使用HBase的例子,如下。 import java ... -
HBase入门篇4–存储
2011-06-06 21:22 1571作者: H.E. | 您可以转载, 但必须以超链接形式标明文章 ... -
HBase入门篇3
2011-06-06 21:21 1818作者: H.E. | 您可以转载, 但必须以超链接形式标明文章 ... -
HBase入门篇2-Java操作HBase例子
2011-06-06 21:18 2374作者: H.E. | 您可以转载, 但必须以超链接形式标明文章 ... -
HBase入门篇
2011-06-06 21:17 2350作者: H.E. | 您可以转载, ...
相关推荐
window 下eclipse远程访问伪分布式hadoop 运行wordcount
由于资源有限,只能在本机windows环境下搭建vmware虚拟操作系统fedora上运行hadoop+hbase。 主要分为以下几个部分进行介绍: 一、环境版本要求和准备 二、Fedora服务器hadoop安装过程 三、Fedora服务器Hbase配置...
1、hadoop单机模式和伪分布式 2、hadoop集群 3、hadoop运行WordCount程序 4、编码实践并在Hadoop上运行 题目:输入两个文件,一个代表工厂表,包含工厂名列和地址编号列;另一个代表地址表,包含地址名列和地址编号...
Hadoop的单机伪分布式搭建和运行第一个WordCount程序 • 环境: macOs下 Eclipse(Neon)+Hadoop-2.5.2(64位) 注:已经安装的java环境,我的事jdk1.8的
文章目录1 本地运行模式1.1 官方Grep案例1.2 官方WordCount案例2 伪分布式模式2.1 启动HDFS并运行MapReduce程序2.1.1 分析2.1.2 执行步骤2.2 启动YARN并运行MapReduce程序2.2.1 分析2.2.1 执行步骤2.3 配置文件说明 ...
1. 资源包括了eclipse Oxygen版本的hadoop插件,包括winutils 2. 文档详细介绍了windows 下的hadoop版本的配置 3. 实例程序可以跑通,有详细截图
1.本机已安装好 VMware Workstation Pro 虚拟机,及 Ubuntu 版本的 Linux 系统。 2.进行 Hadoop 伪分布式安装。 3.运行 Hadoop 自带的 WordCount 实例检测是否运行正常。
本文从零起步构建Hadoop单机版本和伪分布式的开发环境,涉及: 1, 开发Hadoop需要的基本软件; 2, 安装每个软件; 3, 配置Hadoop单机模式并运行Wordcount示例;...4, 配置Hadoop伪分布式模式并运行Wordcount示例;
3.1 下载并解压 3.2 配置环境变量 3.4 关闭防火墙 3.5 初始化 3.7 验证是否启动成功 3.8 单机伪分布式官方wordcount案例测试 3.
Hadoop安装有三种模式:单机、伪分布式、完全分布式,本文档为完全分布式安装,过程很详细,设计内容包括:在win7上安装虚拟化工具VMware(用于支撑Linux系统),在VMware上安装Ubuntu系统,安装Hadoop前的准备工作...
4 分别在自编 MapReduce 程序 WordCount 运行过程中和运行结束后查看 MapReduce Web 界面。 5. 分别在自编 MapReduce 程序 WordCount 运行过程中和运行结束后练习 MapReduce Shell 常用命令。 。。
包含配置hadoop过程中遇到的一些问题的解决办法和成功运行wordcount实例的步骤
一套eclipse中的hadoop开发环境搭建教程,附带了eclipse中的hadoop的两个demo,一个是wordcount、一个是sort,大家一起学习进步!
#资源达人分享计划#
在linux环境下部署的Hadoop集群-WordCount运行详解。
1.每个实验单元在 50 页的篇幅内完成一份报告 3.实验报告要求:书写工整规范,语言表达清楚,数据和程序真 4.参加实验的每位同学应独立完成实验报告的撰写,其
wordcount程序运行过程分析与应用。工作流程。。。。。。
linux环境下,创建eclipse的快捷方式,并且在eclipse中运行示例,查看hdfs中的文件目录
windows eclipse 运行wordcount连接linux hadoop NativeIO YARNRunner 完项目 源码
Hadoop环境搭建及wordcount实例运行.pdf