hadoop安装
1.下载jdk
2.如果使用了阿里云服务器可通过scp 文件名 用户名@IP地址:目录地址,上传jdk
3.vim /etc/profile 配置环境变量
4.下载hadoop.tar.gz
5.修改配置文件,主要有4个
core-site.xml
hadoop-env.sh
hdfs-site.xml
mapred-site.xml
http://hadoop.apache.org/docs/r1.0.4/cn/cluster_setup.html
a.hadoop-env.sh修改JAVA_HOME
JAVA_HOME=/java/jdk1.8.0_281
b.修改core-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<!-- 如果开启了namenode HA,那么就用fs.defaultFS,在单一namenode的情况下,就用 fs.default.name-->
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<!-- hadoop工作目录-->
<property>
<name>hadoop.tmp.dir</name>
<value>/hadoop/workdir</value>
</property>
<!--元数据节点-->
<property>
<name>dfs.name.dir</name>
<value>/hadoop/yuandir</value>
</property>
</configuration>
NameNode和DataNode
NameNode负责存储文件和块之间的映射和块和DataNode之间的映射。
DataNode负责存储文件块,块的大小默认64M。
客户端与DataNode交互式,都要通过NameNode节点先定位DataNode,上传文件(NameNode负责分块(猜测)),查询文件。
MapReduce
运行远离,一个job分为maptask(数据节点)和reducetask。
maptask负责统计文件没小部分的计算统计。比如统计ip地址,会统计每个文件块,每个ip出现的次数。
reducetask,负责聚合多个maptask的结果,一个reducetask聚合一部分ip出现的次数。最终得到数据ip次数的结果,比大小排序,就能找到ip出现醉倒次数。