- 浏览: 1048821 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (538)
- 奇文共赏 (36)
- spring (13)
- hibernate (10)
- AOP/Aspectj (9)
- spring security (7)
- lucence (5)
- compass (3)
- jbmp (2)
- jboss rule(drools) (0)
- birt (1)
- jasper (1)
- cxf (3)
- flex (98)
- webgis (6)
- 设计模式 (1)
- 代码重构 (2)
- log4j (1)
- tomcat (9)
- 神品音乐 (1)
- 工作计划 (2)
- appfuse (1)
- svn (4)
- 寻章摘句 (3)
- eclipse (10)
- arcgis api for flex (1)
- 算法 (5)
- opengis-cs (1)
- bug心得 (13)
- 图标 (1)
- software&key (14)
- java (17)
- 搞笑视频 (13)
- sqlserver (9)
- postgresql (1)
- postgis (0)
- geoserver (5)
- 日子 (50)
- 水晶报表 (1)
- 绝对电影 (3)
- Alternativa3D (1)
- 酷站大全 (10)
- c++ (5)
- oracle (17)
- oracle spatial (25)
- flashbuilder4 (3)
- TweenLite (1)
- DailyBuild (6)
- 华山论贱 (5)
- 系统性能 (5)
- 经典古文 (6)
- SOA/SCA/OSGI (6)
- jira (2)
- Hadoop生态圈(hadoop/hbase/pig/hive/zookeeper) (37)
- 风水 (1)
- linux操作基础 (17)
- 经济 (4)
- 茶 (3)
- JUnit (1)
- C# dotNet (1)
- netbeans (1)
- Java2D (1)
- QT4 (1)
- google Test/Mock/AutoTest (3)
- maven (1)
- 3d/OSG (1)
- Eclipse RCP (3)
- CUDA (1)
- Access control (0)
- http://linux.chinaunix.net/techdoc/beginner/2008/01/29/977725.shtml (1)
- redis (1)
最新评论
-
dove19900520:
朋友,你确定你的标题跟文章内容对应???
tomcat控制浏览器不缓存 -
wussrc:
我只想说牛逼,就我接触过的那点云计算的东西,仔细想想还真是这么 ...
别样解释云计算,太TM天才跨界了 -
hw_imxy:
endpoint="/Hello/messagebr ...
flex+java代码分两个工程 -
gaohejie:
rsrsdgrfdh坎坎坷坷
Flex 与 Spring 集成 -
李涤尘:
谢谢。不过说得有点太罗嗦了。
Oracle数据库数据的导入及导出(转)
hadoop 0.20 程式開發 eclipse plugin
http://trac.nchc.org.tw/cloud/wiki/waue/2009/0617
hadoop 0.20 程式開發 eclipse plugin + Makefile
最新版本的 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
export PATH=$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;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Mapper;
public class mapper extends Mapper<Object, Text, Text, IntWritable> {
private final static IntWritable one = new IntWritable(1);
private Text word = new Text();
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;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Reducer;
public class reducer extends Reducer<Text, IntWritable, Text, IntWritable> {
private IntWritable result = new IntWritable();
public void reduce(Text key, Iterable<IntWritable> values, Context context)
throws IOException, 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;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
import org.apache.hadoop.util.GenericOptionsParser;
public class WordCount {
public static void main(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, new Path(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
五、結論
发表评论
-
一网打尽当下NoSQL类型、适用场景及使用公司
2014-12-28 20:56 968一网打尽当下NoSQL类型、适用场景及使用公司 http:// ... -
别样解释云计算,太TM天才跨界了
2014-02-25 09:41 2440http://mp.weixin.qq.com/s?__bi ... -
Build, Install, Configure and Run Apache Hadoop 2.2.0 in Microsoft Windows OS
2013-12-09 11:17 2539http://www.srccodes.com/p/arti ... -
hadoop的超时设置
2013-06-23 11:47 2429from http://blog.163.com/zheng ... -
hadoop与panasas
2012-12-26 09:53 882在应用的场景中,hadoop当然希望使用全部的本地硬盘,但是对 ... -
程序开过多线程,导致hadoop作业无法运行成功
2012-10-23 16:14 7066Exception in thread "Threa ... -
mount盘异常,导致hadoop作业无法发送
2012-10-23 16:12 956异常信息 2012-10-23 21:10:42,18 ... -
HDFS quota 設定
2012-08-02 16:22 5525http://fenriswolf.me/2012/04/04 ... -
hadoop常用的指令
2011-10-09 16:50 1703hadoop job -kill jobid 可以整个的杀掉 ... -
Hadoop基准测试
2011-08-08 10:04 1277http://www.michael-noll.com/ ... -
Hadoop Job Scheduler作业调度器
2011-05-21 11:02 2526http://hi.baidu.com/zhengxiang3 ... -
hadoop指定某个文件的blocksize,而不改变整个集群的blocksize
2011-03-20 17:20 2109文件上传的时候,使用下面的命令即可 hadoop f ... -
Hadoop Job Tuning
2011-02-28 15:53 820http://www.searchtb.com/2010/12 ... -
如何在不重启整个hadoop集群的情况下,增加新的节点
2011-02-25 10:12 14061.在namenode 的conf/slaves文件中增加新的 ... -
对hadoop task进行profiling的几种方法整理
2011-02-10 21:57 1655对hadoop task进行profiling的几种方法整 ... -
如何对hadoop作业的某个task进行debug单步跟踪
2011-02-10 21:56 2082http://blog.csdn.net/AE86_FC/ar ... -
hadoop-0.21.0-eclipse-plugin无法在eclipse中运行解决方案
2011-01-26 09:47 3602LINUX下将hadoop-0.21自带的hadoop ecl ... -
How to Benchmark a Hadoop Cluster
2011-01-19 22:15 2851How to Benchmark a Hadoop Clu ... -
json在线格式化
2010-12-21 16:23 2434http://jsonformatter.curiouscon ... -
Hadoop的mapred TaskTracker端源码概览
2010-11-14 11:24 1289http://jiwenke.iteye.com/blog/3 ...
相关推荐
总结来说,Hadoop2x-eclipse-plugin是Hadoop开发者不可或缺的工具,它简化了在Eclipse中的Hadoop开发流程,使得开发者能够更加专注于代码逻辑,提高开发效率。通过熟练掌握这个插件的使用,可以更好地驾驭Hadoop,...
总结来说,Hadoop2x-eclipse-plugin-master是Hadoop开发者的得力助手,它通过与Eclipse的深度集成,提供了一站式的开发解决方案,简化了Hadoop项目的开发流程,降低了入门门槛,提升了开发效率。对于想要涉足Hadoop...
Eclipse集成Hadoop2.10.0的插件,使用`ant`对hadoop的jar包进行打包并适应Eclipse加载,所以参数里有hadoop和eclipse的目录. 必须注意对于不同的hadoop版本,` HADDOP_INSTALL_PATH/share/hadoop/common/lib`下的jar包...
《Hadoop Eclipse Plugin:开发利器的进化》 在大数据领域,Hadoop作为开源分布式计算框架,扮演着核心角色。为了方便开发者在Eclipse或MyEclipse这样的集成开发环境中高效地进行Hadoop应用开发,Hadoop-Eclipse-...
hadoop-cdh-4.5.0 eclipse plugin hadoop eclipse 插件 hadoop-eclipse-plugin-2.0.0-cdh4.5.0.jar
hadoop-eclipse-plugin-1.2.1hadoop-eclipse-plugin-1.2.1hadoop-eclipse-plugin-1.2.1hadoop-eclipse-plugin-1.2.1
总结,"hadoop2x-eclipse-plugin-original"是一个针对Hadoop 2.x的Eclipse插件源代码包,旨在帮助开发者构建自定义的插件JAR文件,以在Eclipse环境中更高效地开发和测试Hadoop MapReduce应用。通过理解和配置这个源...
《Hadoop Eclipse Plugin 2.6.0:高效开发与测试工具》 Hadoop作为大数据处理的核心框架,为开发者提供了强大的分布式存储和计算能力。在实际的开发过程中,为了提高效率并减少错误,Hadoop提供了Eclipse插件,即...
hadoop-eclipse-plugin-2.7.4.jar和hadoop-eclipse-plugin-2.7.3.jar还有hadoop-eclipse-plugin-2.6.0.jar的插件都在这打包了,都可以用。
总结来说,"hadoop-0.20.2-eclipse-plugin.jar"是Hadoop与Eclipse之间的一座桥梁,它将Hadoop的强大功能与Eclipse的开发便利性相结合,为大数据开发提供了高效、直观的开发环境。通过熟练掌握这个插件的使用,开发者...
Hadoop Eclipse是Hadoop开发环境的插件,用户在创建Hadoop程序时,Eclipse插件会自动导入Hadoop编程接口的jar文件,这样用户就可以在Eclipse插件的图形界面中进行编码、调试和运行Hadop程序,也能通过Eclipse插件...
Hadoop-Eclipse-Plugin-3.1.1是一款专为Eclipse集成开发环境设计的插件,用于方便地在Hadoop分布式文件系统(HDFS)上进行开发和调试MapReduce程序。这款插件是Hadoop生态系统的组成部分,它使得Java开发者能够更加...
而为了方便开发者在Eclipse这样的集成开发环境中直接操作Hadoop集群,Hadoop Eclipse Plugin应运而生。本文将详细探讨Hadoop Eclipse Plugin 2.6.5这一版本,以及如何使用它来提升Hadoop开发效率。 Hadoop Eclipse ...
Hadoop-2.8.3-Eclipse-Plugin插件包是专为开发人员设计的一款工具,旨在简化Hadoop生态系统在Eclipse或MyEclipse集成开发环境(IDE)中的使用。这款插件允许开发者直接在IDE内创建、调试和管理Hadoop项目,极大地...
Hadoop Eclipse Plugin 2.7.4是专为Hadoop 2.7.4版本设计的一款集成开发工具,它使得开发者能够在Eclipse环境中直接编写、调试和运行MapReduce程序,极大地提升了开发效率和便利性。在Hadoop 2.7.3版本中,一些用户...