大数据学习(1)-Hadoop
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
&&大数据学习&&
系列专栏 哲学语录: 承认自己的无知乃是开启智慧的大门
如果觉得博主的文章还不错的话请点赞+收藏⭐️+留言支持一下博>主哦
Hadoop是一个开源的分布式计算平台用于处理大规模数据集。Hadoop的核心组件包括
HDFSHadoop Distributed File System
MapReduce和Yarn。
Hadoop的运行机制基于分布式计算的概念即将大规模的计算任务分解为多个小任务并在多台计算机上并行处理。Hadoop集群由多个节点组成包括一个NameNode和若干个DataNode。NameNode负责管理文件系统的元数据而DataNode负责存储实际的数据。
Hadoop的运行过程包括以下几个步骤
- 数据准备将待处理的数据上传到HDFS中可以使用Flume、Sqoop等工具将数据从其他系统导入到HDFS。
- 编写MapReduce程序使用Java语言编写MapReduce程序将计算任务划分为Map阶段和Reduce阶段。
- 提交任务将编写好的MapReduce程序提交到Yarn中Yarn负责资源的分配和管理。
- 任务执行Yarn将MapReduce任务分解为多个小任务并在集群中的不同节点上并行执行。在Map阶段数据被划分为若干个小块并在不同节点上进行处理在Reduce阶段Map阶段的输出被收集和汇总以生成最终的结果。
- 结果输出处理完成后结果将输出到HDFS中可以使用Hive、HBase等工具进行结果查询和分析。
在运行过程中Hadoop涉及到了多个技术栈包括
- HDFSHadoop分布式文件系统用于存储大规模数据。
- MapReduceHadoop的核心计算模型用于处理大规模数据集。
- YarnHadoop的资源管理器用于管理和分配集群中的计算资源。
- Hive基于Hadoop的数据仓库工具提供了类似于SQL的查询语言。
- HBase基于Hadoop的分布式数据库用于存储非结构化和半结构化数据。
- FlumeHadoop的数据采集工具用于将数据从不同的数据源导入到HDFS中。
- SqoopHadoop的数据导入导出工具用于在关系型数据库和Hadoop之间进行数据迁移。
Hdfs存储
HDFS中每个数据节点可以存储的数据量取决于节点的硬盘大小。对于单个节点其存储容量为磁盘容量减去配置文件hdfs-site.xml中的参数值dfs.datanode.du.reserved。对于一个集群其总容量取决于所有DataNode节点的硬盘大小之和。但是需要注意的是还需要考虑集群的备份数量。例如如果备份数量为3集群总容量为3TB则实际可以存储的文件容量为1TB。
大数据技术栈非常多但是并不需要全部都懂了解即可我也是刚刚开始学习不久欢迎大家的批评指正。之后会持续更新大数据了