1.首先要下载相应的hadoop版本的插件,我这里就给2个例子:

hadoop-1.2.1插件:http://download.csdn.net/download/hanyongan300/6238153

hadoop2.2.0插件:http://blog.csdn.net/twlkyao/article/details/17334693

上一章我也讲了怎么制作相应版本的插件,这些插件可以在网上搜到

2.把插件拷贝到myeclipse根目录下/dropins目录下。

3、 启动myeclipse,打开Perspective:

【Window】->【Open Perspective】->【Other...】->【Map/Reduce】->【OK】

3、 打开一个View:

【Window】->【Show View】->【Other...】->【MapReduce Tools】->【Map/Reduce Locations】->【OK】

4、 添加Hadoop location:

location name: 我填写的是:hadoop,这个可以任意填写

Map/Reduce Master 这个框里:

这两个参数就是mapred-site.xml里面mapred.job.tracker里面的ip和port

Host:就是jobtracker 所在的集群机器,这里写192.168.0.155,我这个myeclipse是在windows下的,所以去连接liunx下的hadoop要写地址
Hort:就是jobtracker 的port,这里写的是9001

DFS Master 这个框里

这两个参数就是core-site.xml里面fs.default.name里面的ip和port
Host:就是namenode所在的集群机器,这里写192.168.0.155
Port:就是namenode的port,这里写9000

(Use M/R master host,这个复选框如果选上,就默认和Map/Reduce Master这个框里的host一样,如果不选择,就可以自己定义输入,这里jobtracker 和namenode在一个机器上,所以是一样的,就勾选上)

user name:这个是连接hadoop的用户名,我创建的用户就是hadoop。

然后继续填写advanced parameters

在这里只需要填写  hadoop.tmp.dir这一栏,跟在core-site.xml里面配置写的一样

然后关闭myeclipse重启,就可以看到连接成功了。。。

连接DFS,是为了帮助你查看hdfs目录的,在这里,你可以直接操作hdfs.点击右键:

create new directory:创建文件

Refresh:刷新

upload files to DFS:上传文本

upload directory to DFS:上传文件夹

如果要是创建hadoop项目,先配置下:Window------preferences----Hadoop Map/Reduce,指定本地的hadoop

然后在本地配置远程hadoop的IP,打开C:\Windows\System32\drivers\etc\hosts文件,添加hadoop所安装的服务器IP和主机名

下面就可以在myeclipse创建mapreduce项目了,file----new Prokect-----

下面就正常写代码:下面是操作hase的代码

package hbase;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List; import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.HColumnDescriptor;
import org.apache.hadoop.hbase.HTableDescriptor;
import org.apache.hadoop.hbase.KeyValue;
import org.apache.hadoop.hbase.client.Delete;
import org.apache.hadoop.hbase.client.Get;
import org.apache.hadoop.hbase.client.HBaseAdmin;
import org.apache.hadoop.hbase.client.HTable;
import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.client.Result;
import org.apache.hadoop.hbase.client.ResultScanner;
import org.apache.hadoop.hbase.client.Scan;
import org.apache.hadoop.hbase.filter.CompareFilter.CompareOp;
import org.apache.hadoop.hbase.filter.SingleColumnValueFilter;
import org.apache.hadoop.hbase.util.Bytes; /**
* 对hbase进行增删改查
* @author Administrator
*
*/
public class HbaseTest {
private static Configuration conf=null;
static{
conf=HBaseConfiguration.create();
conf.set("hbase.zookeeper.property.clientPort", "2181");
conf.set("hbase.zookeeper.quorum", "192.168.0.26");
//configuration.set("hbase.master", "192.168.1.25:6000");
File workaround = new File(".");
System.getProperties().put("hadoop.home.dir",
workaround.getAbsolutePath());
new File("./bin").mkdirs();
try {
new File("./bin/winutils.exe").createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* 创建一张表
* @param tablename
* @param cfg
* @throws IOException
*/ public static void createTable(String tablename,String[] cfg)
throws IOException{
HBaseAdmin admin=new HBaseAdmin(conf);
if(admin.tableExists(tablename)){
System.out.println("表已经存在!");
}else{
HTableDescriptor tableDesc=new HTableDescriptor(tablename);
for(int i=0;i<cfg.length;i++){
tableDesc.addFamily(new HColumnDescriptor(cfg[i]));
}
admin.createTable(tableDesc);
System.out.println("表创建成功!");
}
}
/**
* 删除表
* @param tablename
* @throws IOException */
public static void deleteTable(String tablename)
throws IOException{
HBaseAdmin admin=new HBaseAdmin(conf);
admin.disableTable(tablename);
admin.deleteTable(tablename);
System.out.println("表删除成功");
}
/**
* 插入一行记录
* @param tablename
* @param rowkey
* @param family
* @param qualifier
* @param value
*/
public static void writeRow(String tablename,String rowkey,String family,String qualifier,String value) {
try {
HTable table=new HTable(conf,tablename);
Put put =new Put(Bytes.toBytes(rowkey));
put.add(Bytes.toBytes(family),Bytes.toBytes(qualifier),Bytes.toBytes(value));
table.put(put);
System.out.println("插入数据成功");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
/**
* 查找开始与结束之间的数据
* @param tableName
*/
public static void getAll(String tableName) {
try{
HTable table = new HTable(conf, tableName);
Scan scan = new Scan(Bytes.toBytes("a"), Bytes.toBytes("z"));
// scan.addColumn(Bytes.toBytes("a"), Bytes.toBytes("z"));
// SingleColumnValueFilter filter = new SingleColumnValueFilter(Bytes.toBytes("a"),
// Bytes.toBytes("z"),
// CompareOp.NOT_EQUAL, Bytes.toBytes("0"));
// filter.setFilterIfMissing(true);
// scan.setFilter(filter); ResultScanner ss = table.getScanner(scan);
for(Result r:ss){
for(KeyValue kv : r.raw()){
System.out.print("rowid为:"+new String(kv.getRow()) + " ");
System.out.print("列族为:"+new String(kv.getFamily()) + " ");
System.out.print("列限定符为:"+new String(kv.getQualifier()) + " ");
System.out.print("时间戳"+kv.getTimestamp() + " ");
System.out.println("值为"+new String(kv.getValue()));
}
}
} catch (IOException e){
e.printStackTrace(); }
}
/**
* 查找一行记录
* @param tablename
* @param rowKey
* @throws IOException
*/
@SuppressWarnings("deprecation")
public static void getOne(String tablename,String rowKey) throws IOException{
HTable table = new HTable(conf, tablename);
Get get = new Get(rowKey.getBytes());
Result rs = table.get(get);
for(KeyValue kv : rs.raw()){
System.out.print(new String(kv.getRow()) + " " );
System.out.print(new String(kv.getFamily()) + ":" );
System.out.print(new String(kv.getQualifier()) + " " );
System.out.print(kv.getTimestamp() + " " );
System.out.println(new String(kv.getValue()));
} }
/**
* 显示所有数据
*/
public static void getAllRecord (String tableName) {
try{
HTable table = new HTable(conf, tableName);
Scan s = new Scan();
ResultScanner ss = table.getScanner(s);
for(Result r:ss){
for(KeyValue kv : r.raw()){
System.out.print("rowid为:"+new String(kv.getRow()) + " ");
System.out.print("列族为:"+new String(kv.getFamily()) + " ");
System.out.print("列限定符为:"+new String(kv.getQualifier()) + " ");
System.out.print("时间戳"+kv.getTimestamp() + " ");
System.out.println("值为"+new String(kv.getValue()));
}
}
} catch (IOException e){
e.printStackTrace(); }
}
/**
* 删除一行记录
*/
public static void delRecord (String tableName, String rowKey) throws IOException{
HTable table = new HTable(conf, tableName);
List list = new ArrayList();
Delete del = new Delete(rowKey.getBytes());
list.add(del);
table.delete(list);
System.out.println("del recored " + rowKey + " ok.");
} public static void main(String[] agrs){
String tablename="score";
String[] familys={"grade","course"};
try {
HbaseTest.createTable(tablename, familys);
//HbaseTest.delvalue(tablename, "zkb","course" , "click", "90");
// HbaseTest.delRecord(tablename, "zkb"); } catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} // HbaseTest.writeRow(tablename, "zkb", "grade", "title", "5");
// HbaseTest.writeRow(tablename, "zkb", "course", "click", "90");
// HbaseTest.writeRow(tablename, "zkb", "course", "url", "97");
// HbaseTest.writeRow(tablename, "zkb", "course", "author", "87");
//
// HbaseTest.writeRow(tablename, "baoniu", "grade", "reply", "4");
// HbaseTest.writeRow(tablename, "baoniu", "course", "siteName", "89");
// HbaseTest.writeRow(tablename, "1", "grade", "title", "5");
// HbaseTest.writeRow(tablename, "1", "course", "click", "90");
// HbaseTest.writeRow(tablename, "2", "course", "url", "97");
// HbaseTest.writeRow(tablename, "2", "course", "author", "87");
//
// HbaseTest.writeRow(tablename, "3", "grade", "reply", "4");
// HbaseTest.writeRow(tablename, "3", "course", "siteName", "89");
// HbaseTest.getOne(tablename, "zkb");
// HbaseTest.getAllRecord(tablename); // HbaseTest.getAllRecord(tablename);
HbaseTest.getAll(tablename); } }

第五章 MyEclipse配置hadoop开发环境的更多相关文章

  1. myeclipse配置hadoop开发环境

    1.安装Hadoop开发插件 hadoop安装包contrib/目录下有个插件hadoop-0.20.2-eclipse-plugin.jar,拷贝到myeclipse根目录下/dropins目录下. ...

  2. 搭建基于MyEclipse的Hadoop开发环境

    不多说,直接上干货! 前面我们已经搭建了一个伪分布模式的Hadoop运行环境.请移步, hadoop-2.2.0.tar.gz的伪分布集群环境搭建(单节点) 我们绝大多数都习惯在Eclipse或MyE ...

  3. Hadoop_配置Hadoop开发环境(Eclipse)

    通常我们可以用Eclipse作为Hadoop程序的开发平台. 1)  下载Eclipse 下载地址:http://www.eclipse.org/downloads/ 根据操作系统类型,选择合适的版本 ...

  4. Eclipse配置Hadoop开发环境

    Step 1:选择Hadoop版本对应的Eclipse插件jar包(可自行编译),我的Hadoop版本是hadoop-0.20.2,对应的插件应该是:hadoop-0.20.2-eclipse-plu ...

  5. mac攻略(五) -- 使用brew配置php7开发环境(mac+php+apache+mysql+redis)

    前面介绍过基本的配置,后来我又从网上查找了很多资料,经过不断的摸索,下面做了一个总结,希望能对大家提供些许帮助(Mac版本是sierra)   一.mac系统会自带git,而我们要做的是自己安装git ...

  6. 配置Hadoop开发环境(Eclipse)

    参考博文: http://blog.csdn.net/zythy/article/details/17397153 http://www.tuicool.com/articles/AjUZrq 注意事 ...

  7. IDEA配置Hadoop开发环境&编译运行WordCount程序

    有关hadoop及java安装配置请见:https://www.cnblogs.com/lxc1910/p/11734477.html 1.新建Java project: 选择合适的jdk,如图所示: ...

  8. Eclipse安装Hadoop插件配置Hadoop开发环境

    一.编译Hadoop插件 首先需要编译Hadoop 插件:hadoop-eclipse-plugin-2.6.0.jar,然后才可以安装使用. 第三方的编译教程:https://github.com/ ...

  9. 在Fedora18上配置个人的Hadoop开发环境

    在Fedora18上配置个人的Hadoop开发环境 1.    背景 文章中讲述了类似于"personalcondor"的一种"personal hadoop" ...

随机推荐

  1. 2018.11.12 RF debug

    1 SG setting 2 Date 3  0-1 4 ASK 5 Power supply 6  SG - filter 7 NRF905-  demodulation 8  RX test 9 ...

  2. New Concept English there (9)

    31 65% Cats never fail to fascinate human beings. They can be friendly and affectionate towards huma ...

  3. Linux之LVM设备的管理

    LVM可以理解为可扩展的设备:在设备空间不足的时候,保证其在原始数据不变的情况下增大设备的存储大小.那么,要达到这种效果,我们得把可用设备先比变为物理卷,再把物理卷处理为物理卷组,最后成为LVM逻辑卷 ...

  4. GPU编程自学2 —— CUDA环境配置

    深度学习的兴起,使得多线程以及GPU编程逐渐成为算法工程师无法规避的问题.这里主要记录自己的GPU自学历程. 目录 <GPU编程自学1 -- 引言> <GPU编程自学2 -- CUD ...

  5. 高并发异步uwsgi+web.py+gevent

    为什么用web.py? python的web框架有很多,比如webpy.flask.bottle等,但是为什么我们选了webpy呢?想了好久,未果,硬要给解释,我想可能原因有两个:第一个是兄弟项目组用 ...

  6. discuz数据库迁移,改密码后,相关配置文件修改

    网上看到这篇文章,觉得有用就收藏下 网站系统需要修改的位置有两处 Discuz 和 UC-center ①路径:/wwwroot/config/config_global.php 这个根据你网站安装的 ...

  7. Ubuntu12.04中安装Oracle JDK和NetBeans的方法

    1.到官网下载jdk-7u51-linux-i586.tar.gz安装包 2.创建jvm文件夹 $sudo mkdir /usr/lib/jvm 3.将安装包解压到上述文件夹下 $-linux-i58 ...

  8. IE中拖放问题

    1.所有的元素上都能绑定放置目标的事件,但并不保证此元素是有效的放置对象. 默认情况下,IE中只有文本框(<input/>或<textarea/>)是网页上唯一有效的放置目标. ...

  9. maven搭建ssm框架问题总结

    1. Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.6.0:compile (default-comp ...

  10. BZOJ1853 Scoi2010 幸运数字 【枚举+容斥】

    BZOJ1853 Scoi2010 幸运数字 Description 在中国,很多人都把6和8视为是幸运数字!lxhgww也这样认为,于是他定义自己的“幸运号码”是十进制表示中只包含数字6和8的那些号 ...