2021SC@SDUSC
hadoop是一个分布式系统基础架构,它可以使用户在不了解分布式底层细节的情况下,开发分布式程序,充分利用集群的威力进行高速运算和存储。hadoop的框架最核心的设计就是HDFS和MapReduce,HDFS为海量的数据提供了存储,MapReduce则为海量的数据提供了计算。
在Hadoop中HDFS和MapReduce是同一个项目,Hadoop中包的依赖关系十分复杂,分布式文件系统的底层的实现,依赖于某些类似高层的功能
一.下载hadoop源码并编译
1.下载hadoop3.3.1的源码
下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/
下载好后进入解压后的src文档中进行编译:
编译代码:$ mvn clean package -Pdist,native -DskipTests -Dtar
2.配置IntelliJ IDEA2018的maven环境
1.maven路径配置
(1)未打开项目,通过configure–>Settings
打开;如果已经打开了项目,可以通过File–>Settings
打开,如图:
2.配置maven home路径以及 maven的jdk环境
这些之前均已配置好
3. 以maven方式打开编译好的hadoop源码:
File→New→Project from Existing Sources
选择下载好的src文件
选择import project from external moded选中maven,点击finish:
点记file→Project Structure
选择下载的hadoop src文件
3.用IDE运行Hadoop程序:
本地解压hadoop安装包:
设置hadoop环境变量:
在PATH变量中添加:HADOOP_HOME 找到解压的hadoop路径
在上述创建完的项目中打开pom.xml文件
添加配置项
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-main</artifactId>
<version>3.3.1</version>
<description>Apache Hadoop Main</description>
<name>Apache Hadoop Main</name>
<packaging>pom</packaging>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.cenqua.clover</groupId>
<artifactId>clover</artifactId>
<!-- Use the version needed by maven-clover-plugin -->
<version>3.0.2</version>
</dependency>
</dependencies>
</dependencyManagement>
hadoop中关键部分:
在接下来几个月时间内,我们小组将分析阅读hadoop的源码,我的任务是对Hadoop中的hadoop-common-project以及hadoop-project以及部分hadoop-tools进行详细分析,具体的分析代码等将在后续报告中给出
源码下载的版本为hadoop-3.3.1
源码下载地址为:https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/