zkl_1987 发表于 2013-1-28 18:21:50

编写Hadoop应用程序

写个简单的例子,帮助学习分布式Hadoop框架。

在Eclipse里新建一个工程,名字随便取个好了,TestHadoop

新建一个类,类名也随便取好了,TestHadoop

类的代码如下:

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataOutputStream;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;

public class TestHadoop{

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Configuration conf = new Configuration();
try {
   FileSystem fs = FileSystem.get(conf);
   Path f = new Path("hdfs:///test.txt");
   FSDataOutputStream os = fs.create(f, true);
   int i = 0;
   for (i = 0; i < 100; ++i) {
    os.writeChars("test");
   }
   os.close();
} catch (Exception e) {
   // TODO: handle exception
   e.printStackTrace();
}
}
}

(先把hadoop的架包添加进去)

代码的意思是在 hdfs 的根目录下新建一个文件 test.txt
Path f = new Path("hdfs:///test.txt");
   FSDataOutputStream os = fs.create(f, true);

然后在文件里循环写100个test字符串


接下来是打包成 TestHadoop.jar (在Eclipse里打包很简单。不说了)

然后把TestHadoop.jar放在hadoop/bin 目录下

然后进入Hadoop 的bin目录,然后依次完成如下的五步操作:
(1)查看当前目录,检查TestHadoop.jar 是否存在:ls
(2)查看Hadoop根目录下是否存在 test.txt文件:./hadoopfs-ls /
(3)运行TestHadoop.jar ,以生成test.txt文件:
./hadoopjar./TestHadoop.jarTestHadoop
(4)再查看Hadoop 根目录下是否存在test.txt文件:./hadoopfs-ls /
(5)检查test.txt文件的内容:./hadoopfs-cat /test.txt


OK了
页: [1]
查看完整版本: 编写Hadoop应用程序