2020暑假第5周

  这周学习了Hadoop的相关知识。

  Hadoop最早起源于Nutch。Nutch的设计目标是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能,但随着抓取网页数量的增加,遇到了严重的可扩展性问题——如何解决数十亿网页的存储和索引问题。可行的解决方案有分布式文件系统和分布式计算框架,Nutch在完成相应的开源实现HDFS和MAPREDUCE之后,从Nutch中剥离成为独立项目HADOOP,之后HADOOP成为Apache顶级项目。

  Hadoop狭义上是指Hadoop这个软件,广义上是讲  大数据的一个生态圈,包含许多其他的软件hive、Hadoop、zookeeper……

  1.x的Hadoop的架构模型中的文件系统核心模块由NameNode(集群中的主节点,管理文件的大小、文件的位置、文件的权限等元数据)、secondaryNameNode(用于hadoop中元数据信息的辅助管理)、DataNode组成(集群中的从节点,存储数据)。而数据计算核心模块由JobTracker(接收用户的计算请求任务,并分配任务给节点)和TaskTracker(负责执行主节点JobTracker分配的任务)组成。

  2.x的Hadoop的架构模型中NameNode与ResourceManager单节点架构模型中的文件系统核心模块与1.x的系统架构模型没有区别,而数据计算核心模块由JobTracker(接收用户的计算请求任务,并分配任务给节点)和TaskTracker(负责执行主节点APPmaster分配的任务)组成。另一种NameNode单节点与ResourceManager高可用架构模型中分布式文件系统也不变,而数据计算核心模块中的ResourceManager负责接收用户的计算请求,并负责集群的资源分配,以及计算任务的划分,通过zookeeper实现ResourceManager的高可用,NodeManager负责执行主节点ResourceManager分配的任务。第三种就是NameNode高可用与ResourceManager单节点架构模型。也就是说文件系统核心模块中NameNode是集群中的主节点,主要用于管理集群中的各种数据,其中nameNode可以有两个,从而实现高可用状态。第四种就是最理想的NameNode与ResourceManager都高可用的架构模型。

  编译Hadoop需要准备Linux环境,虚拟机联网、关闭防火墙、关闭selinux,安装jdk,安装maven、安装findbugs,在线安装一些依赖包,安装protobuf,安装snappy,编译hadoop源码。

  安装Hadoop需要上传apache hadoop包并解压,修改配置文件,配置hadoop的环境变量,启动集群。

posted on   FF冯静妃  阅读(72)  评论(0编辑  收藏  举报

编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示