环境 Windows10 + IDEA2020.2专业版 + JDK8 + Hadoop2.6.0
报错信息 Exception in thread "main" java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z 解决方案: 下载hadoop.dll点此去下载 以下方案依次尝试 放在hadoop根目录的bin目录下(本人实测,cmd命令行运行打包好的jar包需要这个) 放在c:/windows/System32下(IDEA需要这个) 参考:
hadoop报错 java.lang.UnsatisfiedLinkError: org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Lja
环境 Windows10 + IDEA2020.2专业版 + JDK8 + Hadoop2.6.0
报错信息 2020-12-03 14:37:52,196 WARN [org.apache.hadoop.util.NativeCodeLoader] - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 2020-12-03 14:37:52,202 ERROR [org.apache.hadoop.util.Shell] - Failed to locate the winutils binary in the hadoop binary path java.io.IOException: Could not locate executable null\bin\winutils.exe in the Hadoop binaries. at org.apache.hadoop.util.Shell.getQualifiedBinPath(Shell.java:355) at org.apache.hadoop.util.Shell.getWinUtilsPath(Shell.java:370) 解决方法 下载winutils的windows版本,并放在%HADOOP_HOME%\bin下
设置环境变量,设置%HADOOP_HOME%为你的Hadoop根目录,并且Path中加入%HADOOP_HOME%\bin,之后重启idea
手动在代码中指定Hadoop根目录的位置(IDEA貌似必须这样,不知为何,而cmd命令行启动jar包只需要前两个就行了)
System.setProperty("hadoop.home.dir", "你的Hadoop根目录,注意右斜线的转义"); 以上三个解决方案依次尝试即可。
本篇文章阅读对象:给从未接触过大数据平台的同学准备的入门篇,尽量通俗化说清涉及到的软件功能与作用,进阶内容可以阅读各个专门章节。
大数据是什么? 大数据是什么,这里我们先看下百度百科的解释
大数据(big data),IT行业术语,是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。
说白了,“大数据”就是一大堆数据。
学习目标 而我们学习大数据这门专业,学习的就是:
如何采集到这些数据 如何保存这些数据 如何处理这些数据 如何把这些数据直观的显示出来 我们搭建大数据平台解决的就是第2、3个问题。
正题-软件介绍 那么我们到底该怎样去解决这些问题呢,大佬们一般会选择自己写程序,而我们初学者,已经有了热心的大佬们开发的程序,我们可以直接拿来使用。
下面将介绍与大数据相关的软件。
存储框架方面的软件: 可以解决第2个问题,即保存数据。
HDFS HDFS其全称为“Hadoop Distributed File System”,即“Hadoop分布式文件系统”,可以把大量的数据/文件放在多台计算机组成的HDFS这个超级硬盘中。HDFS的详细信息会在专门篇中介绍,本篇主要是帮助了解大概情况。
HBASE HBASE是分布式数据库系统,依托于HDFS+MySql存在
运算框架方面的软件: 解决的是上边的第3个问题,即处理数据的问题,帮用户将处理逻辑在很多机器上并行。
MapReduce MapReduce是运算框架,本身就是用于并行处理大数据集的软件框架,你可以在这个框架内填充自己的程序,高效的运行在Hadoop框架上。
Spark Spark是运算框架, 是专为大规模数据处理而设计的快速通用的计算引擎,
与Hadoop MapReduce的比较:拥有MapReduce所具有的优点,但是速度更快、适用范围更广。简单理解,就是MapReduce的加强版。
辅助类的工具: 作用是解放大数据工程师的时间,快速简洁的完成一些繁琐工作。主要有
HIVE HIVE —— 数据仓库工具:可以接收sql,翻译成mapreduce或者spark程序运行
FLUME FLUME——数据采集
其中HDFS和MapReduce是Hadoop这个工具的两个核心部分,其整体是一个分布式系统基础架构,简洁通俗的讲就是可以协同运行在多台计算机上软件,组成一个集群。
参考资料:
Hadoop_百度百科