栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

idea开发工具有哪些(idea开发工具debug模式下进入函数内部的快捷键)

idea开发工具有哪些(idea开发工具debug模式下进入函数内部的快捷键)

IDEA开发hadoop

新建一个项目文件编写pom.xml文件编写主函数启动集群新建日志配置文件上传文件

新建一个项目文件

File- -> new- -> project
注意:java的jdk版本要大于等于1.8
jdk1.8 下载地址: https://www.jb51.net/softs/325375.html


选择Maven–> next

name名字取为testHDFS
Location:选择文件保存的位置
Artifactid:组织名字为com.qf


编写pom.xml文件

写pom.xml一定要连接网络! 写完后点击文件的右上角按钮更新下文件



    4.0.0

    com.qf
    testHDFS
    1.0-SNAPSHOT


    
        
            org.apache.hadoop
            hadoop-client
            2.6.1
        


        
            junit
            junit
            4.12

        
		
            commons-httpclient
            commons-httpclient
            3.1
        
    


        1.8
        1.8
    



编写主函数

在scr下面的main文件夹里新建一个OperateHDFS.java

文件内容:

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

import java.io.IOException;

public class OperateHDFS {

    @Test
    
    public void writeToHDFS() throws IOException, IOException {
        Configuration conf = new Configuration();
        //这条命令是书上没有的,所以要添加这条命令才能运行
        System.setProperty("HADOOP_USER_NAME", "root");
        conf.set("fs.defaultFS", "hdfs://192.168.154.10:9000");
        FileSystem fs = FileSystem.get(conf);
        Path p = new Path("/1.txt");
        FSDataOutputStream fos = fs.create(p, true, 1024);
        fos.write("hollowed".getBytes());
        fos.close();
    }

    @Test
    
    public void readHDFSFile() throws IOException {
        Configuration conf = new Configuration();
        conf.set("fs.defaultFS", "hdfs://192.168.154.10:9000");
        FileSystem fs = FileSystem.get(conf);
        Path p = new Path("/2.txt");
        FSDataInputStream fis = fs.open(p);
        byte[] buf = new byte[1024];
        int len = 0;
        while ((len = fis.read(buf)) != -1) {

            System.out.println(new String(buf, 0, len));
        }
    }

    @Test
    
    public void putFile() throws IOException {
        Configuration conf = new Configuration();
        System.setProperty("HADOOP_USER_NAME", "root");
        conf.set("fs.defaultFS", "hdfs://192.168.154.10:9000");
        FileSystem fs = FileSystem.get(conf);
        Path p = new Path("/");
        Path p2 = new Path("file:///D:/2.txt");
        fs.copyFromLocalFile(p2, p);
        fs.close();
    }
}

上面的地址需要改成自己虚拟机的IP地址


启动集群

启动Hadoop,使用命令start-all.sh
查看集群里有没有/1.txt和/2.txt,如果有的话,查看里面有没有信息

hdfs dfs -cat /1.txt

有内容就要把他删了给他一个空值, 在添加一个文件在根目录

hdfs dfs -rm -r /1.txt

如果没得,添加一个文件进去,如果在Hadoop中有/2.txt文件,要删除.
前面一定要把数据全部清除,特别是/1.txt里面的数据为空

新建日志配置文件

在resources文件夹里新建一个log4j.properties文件

### 设置日志级别及日志存储器 ###
#log4j.rootLogger=DEBUG, Console
### 设置日志级别及日志存储器 ###
log4j.rootLogger=info,consolePrint,errorFile,logFile
#log4j.rootLogger=DEBUG,consolePrint,errorFile,logFile,Console
###  输出到控制台 ###
log4j.appender.consolePrint.Encoding=UTF-8
log4j.appender.consolePrint=org.apache.log4j.ConsoleAppender
log4j.appender.consolePrint.layout=org.apache.log4j.PatternLayout
log4j.appender.consolePrint.layout.ConversionPattern=%d %p [%c] - %m%n
### 输出到日志文件 ###
log4j.appender.logFile.Encoding=UTF-8
log4j.appender.logFile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.logFile.File=D:/RUN_Data/log/journal_ok.log
log4j.appender.logFile.Append=true
log4j.appender.logFile.Threshold=info
log4j.appender.logFile.layout=org.apache.log4j.PatternLayout
log4j.appender.logFile.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n
### 保存异常信息到单独文件 ###
log4j.appender.errorFile.Encoding=UTF-8
log4j.appender.errorFile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.errorFile.File=D:/RUN_Data/log/journal_error.log
log4j.appender.errorFile.Append=true
log4j.appender.errorFile.Threshold=ERROR
log4j.appender.errorFile.layout=org.apache.log4j.PatternLayout
log4j.appender.errorFile.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss}  [ %t:%r ] - [ %p ]  %m%n
#Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
log4j.logger.java.sql.ResultSet=INFO
log4j.logger.org.apache=INFO
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
#log4j.logger.com.journal.dao=DEBUG,TRACE
log4j.logger.com.journal.dao.IFollowDao=DEBUG

上传文件

在自己的电脑D盘创建一个文本文档2.txt,在里面添加你想写的内容然后执行(点击旁边的绿色运行按钮)

在执行 OperateHDFS


当出现文件的内容时就成功了

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/771512.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号