hadoop学习心得以及完全分布式配置。

本文介绍了作者对Hadoop的理解,包括其核心构架如HDFS和MapReduce,以及如何搭建和配置Hadoop集群。此外,还详细说明了编写程序模拟生成新能源车辆数据的过程,包括数据格式、存储需求以及集群规划等要点。
摘要由CSDN通过智能技术生成

目录

一、对hadoop的认识

二、 hadoop的核心构架

三 、编写一个程序,每天凌晨3点模拟生成当天的新能源车辆数据(字段信息必须包含:车架号、行驶总里程、车速、车辆状态、充电状态、剩余电量SOC、SOC低报警、数据生成时间等)。

1. 要求:

2.搭建集群:

四、编写生成车辆数据的程序一小部分

五、总结 学习心得


一、对hadoop的认识

1.海量数据储存

2.资源管理,提到度和分配

3.并行数据处理

二、 hadoop的核心构架

        Hadoop 由许多元素构成。其最底部是 Hadoop Distributed File System(HDFS),它存储 Hadoop 集群中所有存储节点上的文件。HDFS的上一层是MapReduce 引擎,该引擎由 JobTrackers 和 TaskTrackers 组成。通过对Hadoop分布式计算平台最核心的分布式文件系统HDFS、MapReduce处理过程,以及数据仓库工具Hive和分布式数据库Hbase的介绍,基本涵盖了Hadoop分布式平台的所有技术核心。

来源:百度百科

1.HDFS  

        对外部客户机而言,HDFS就像一个传统的分级文件系统。可以创建、删除、移动或重命名文件,等等。

2.NemeNode   

        NameNode 是一个通常在 HDFS 实例中的单独机器上运行的软件

3.DetaNode  

        DataNode 也是一个通常在 HDFS实例中的单独机器上运行的软件

4.文件操作

        如果客户机想将文件写到 HDFS 上,首先需要将该文件缓存到本地的临时存储。如果缓存的数据大于所需的 HDFS 块大小,创建文件的请求将发送给 NameNode。NameNode 将以 DataNode 标识和目标块响应客户机。

        同时也通知将要保存文件块副本的 DataNode。当客户机开始将临时文件发送给第一个 DataNode 时,将立即通过管道方式将块内容转发给副本 DataNode。客户机也负责创建保存在相同 HDFS名称空间中的校验和(checksum)文件。

        在最后的文件块发送之后,NameNode 将文件创建提交到它的持久化元数据存储(在 EditLog 和 FsImage 文件)。

5. Linux  集群

        Hadoop 框架可在单一的 Linux 平台上使用(开发和调试时),官方提供MiniCluster作为单元测试使用,不过使用存放在机架上的商业服务器才能发挥它的力量。这些机架组成一个 Hadoop 集群。它通过集群拓扑知识决定如何在整个集群中分配作业和文件。Hadoop 假定节点可能失败,因此采用本机方法处理单个计算机甚至所有机架的失败。

三 、编写一个程序,每天凌晨3点模拟生成当天的新能源车辆数据(字段信息必须包含:车架号、行驶总里程、车速、车辆状态、充电状态、剩余电量SOC、SOC低报警、数据生成时间等)。

1. 要求:

1.最终部署是,将这些数据写到第一题的hdfs中。

2、车辆数据要按天存储,数据格式是JSON格式,另外如果数据文件大于100M,则另起一个文件存。每天的数据总量不少于300M。比如假设程序是2023-01-1 03点运行,那么就将当前模拟生成的数据写入到HDFS的/can_data/2023-01-01文件夹的can-2023-01-01.json文件中,写满100M,则继续写到can-2023-01-01.json.2文件中,依次类推;

3、每天模拟生成的车辆数据中,必须至少包含20辆车的数据,即要含有20个车架号(一个车架号表示一辆车,用字符串表示);

4、每天生成的数据中要有少量(20条左右)重复数据(所有字段都相同的两条数据则认为是重复数据),且同一辆车的两条数据的数据生成时间间隔两秒;

5、每天生成的数据中要混有少量前几天的数据(即数据生成时间不是当天,而是前几天的)。

2.搭建集群:

1. Hadoop集群规划:

                Hadoop是典型的主从架构。HDFS的NameNode是主,DataNode是从,YARN的ResourceManager是主,NodeManager是从。在正式集群部署之前,先要做规划,规划好每个主机/节点分别运行Hadoop的哪些进程。这样做,有两个好处:

1.指导部署,没有规划图,很可能部署过程中就容易迷失,一个小小的细节没处理好,可能导致集群启动失败;

2.方便日后查询。例如查询哪些进程在哪些节点上运行等。

Hadoop集群规划

主机IP

主机的主机名

HDFS

YARN

192.168.53.10

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
对于Hadoop 3.3.6的完全分布式配置,你可以按照以下步骤进行操作: 1. 确保你已经安装了Java并设置了正确的环境变量。 2. 下载Hadoop 3.3.6的二进制文件并解压缩到你想要安装的目录。 3. 打开Hadoop配置文件目录,并编辑hadoop-env.sh文件,在其中设置JAVA_HOME变量为Java安装路径。例如: ``` export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 ``` 4. 编辑core-site.xml文件,设置以下属性: ``` <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/path/to/tmp/dir</value> </property> </configuration> ``` 将`fs.defaultFS`设置为你的Hadoop集群的主节点和端口。将`hadoop.tmp.dir`设置为一个临时目录,用于存储Hadoop数据。 5. 编辑hdfs-site.xml文件,设置以下属性: ``` <configuration> <property> <name>dfs.replication</name> <value>3</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/path/to/name/dir</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/path/to/data/dir</value> </property> </configuration> ``` 将`dfs.replication`设置为你想要的副本数(通常为3)。将`dfs.namenode.name.dir`设置为主节点上用于存储元数据的目录,将`dfs.datanode.data.dir`设置为数据节点上用于存储块数据的目录。 6. 编辑mapred-site.xml文件,设置以下属性: ``` <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration> ``` 将`mapreduce.framework.name`设置为yarn,以使用YARN作为Hadoop的资源管理器。 7. 编辑yarn-site.xml文件,设置以下属性: ``` <configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>localhost</value> </property> </configuration> ``` 将`yarn.nodemanager.aux-services`设置为mapreduce_shuffle,将`yarn.nodemanager.aux-services.mapreduce.shuffle.class`设置为org.apache.hadoop.mapred.ShuffleHandler,将`yarn.resourcemanager.hostname`设置为你的主节点的主机名或IP地址。 8. 配置完毕后,启动Hadoop集群的各个组件,包括NameNode、DataNode、ResourceManager和NodeManager。可以使用以下命令启动: ``` $ start-dfs.sh $ start-yarn.sh ``` 确保没有启动过程中出现任何错误或异常。 9. 最后,可以使用Hadoop命令行工具或Hadoop API在集群上执行任务。 这些是基本的完全分布式配置步骤,根据你的需求和环境可能还需要进行其他配置调整。希望能对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值