• 暑假周进度报告(三)-------版本过高后续问题处理,eclipse编译运行MapReduce以及Hadoop学习


      问题一:Hadoop版本太高

    卸载Hadoop3.2.0 我改安装了Hadoop 2.7.7

    如果没有权限下载。可以采用如下方式:

    卸载完成以后返回原目录即可

    后面的jdk卸载也可以采用这种方式。

    按照教程重新安装http://dblab.xmu.edu.cn/blog/install-hadoop/

    由于后期需要安装HBASE 所以Hadoop安装版本选择问题参考如下:

     

     然后

    执行这一步时或者某些会出现各种警告,这个是由于之前安装的jdk版本过高造成的 卸载jdk 改安装jdk1.8.0

      问题二:jdk版本过高

    按照上述方式,卸载jdk

    然后配置环境变量

    然后可能会出现JAVA_HOME is not set and could not be found 类似于这种java_home找不到这种错误,或者找不到default-java等修改一下hadoop-env.sh文件改一下jdk路径即可,参考:https://blog.csdn.net/dianzishijian/article/details/52094569

    运行MapReduce 项目实例的时候 可能会出现 

    Unable to load native-hadoop library for your platform

    解决参考教程:https://blog.csdn.net/jack85986370/article/details/51902871

    启动Hadoop:./sbin/start-dfs.sh

    关闭Hadoop:./sbin/stop-dfs.sh

    运行 Hadoop 程序时,为了防止覆盖结果,程序指定的输出目录(如 output)不能存在,否则会提示错误,因此运行前需要先删除输出目录。

    ./bin/hdfs dfs -rm -r output # 删除 output 文件夹

    或者添加如下代码 在程序中(能在每次运行时自动删除输出目录,避免繁琐的命令行操作)

    1. Configuration conf = new Configuration();
    2. Job job = new Job(conf);
    3.  
    4. /* 删除输出目录 */
    5. Path outputPath = new Path(args[1]);
    6. outputPath.getFileSystem(conf).delete(outputPath, true);

     

    1. // String[] otherArgs = new GenericOptionsParser(conf, args).getRemainingArgs();
    2. String[] otherArgs=new String[]{"input","output"}; /* 直接设置输入参数 */

       分布式文件系统HDFS:

    1.为了解决海量数据的分布式存储的问题

    2.满足大规模数据的批量处理需求,不会去访问一块一块儿的数据

    3.实时性不高

    4.不支持多用户写入及任意修改文件,只允许追加数据,不允许修改

      HDFS相关概念

    1.块:HDFS的一个快要比普通的一个快大很多(支持面向大规模数据存储,降低分布式节点的寻址开销)-------->支持大规模文件存储,简化系统设计,适合数据备份

    2.名称节点(主节点,记录数据库存储位置信息,数据目录),数据节点(存储实际数据,每个数据节点上的数据是被保存到数据节点本地的Linux文件系统中去)----->两大组件

     注意,在FsImage文件中是没有具体记录块在哪个数据节点存储的

     HDFS启动:先从底层读出FsImage,再读出EditLog,然后它们在内存中进行合并操作,合并后得到一个新的FsImage,删掉旧的FsImage,再生成一个新的EditLog,系统开始运行

    第二名称节点:1.名称节点的冷备份,2.对EditLog的处理(帮助解决EditLog不断增大的问题)

  • 相关阅读:
    面向对象之property
    mysql数据库基本操作
    mysql数据库操作
    初识多线程__上
    npm 安装express npm ERR! code UNABLE_TO_VERIFY_LEAF_SIGNATURE
    markdown快捷键
    try_except__异常处理
    妹子图爬取__RE__BS4
    进程中的锁以及进程池
    pip升级到18.0版本过程中报错解决方法
  • 原文地址:https://www.cnblogs.com/zzstdruan1707-4/p/11426442.html
Copyright © 2020-2023  润新知