首页 > 其他分享 >Hadoop的生态体系,HDFS和MapReduce等的具体介绍

Hadoop的生态体系,HDFS和MapReduce等的具体介绍

时间:2023-04-18 15:38:11浏览次数:32  
标签:HDFS 数据库 Hadoop MapReduce 数据 分布式


Hadoop的两大核心就是HDFS和MapReduce,而整个Hadoop的体系结构主要是通过HDFS的分布式存储作为底层数据支持的。并且会通过MapReduce来进行计算分析。

Hadoop1.x的核心:

Hadoop的生态体系,HDFS和MapReduce等的具体介绍_Hadoop

  1. Hadoop Common
  2. Hadoop Distributed File
  3. System(HDFS)
    Hadoop MapReduceHadoop2.x的核心:
  4. Hadoop Common
  5. Hadoop Distributed File
  6. System(HDFS)
  7. Hadoop MapReduce

1.HDFS分布式文件系统,将一个文件分成多个块,分别存储(拷贝)到不同的节点上.它是Hadoop体系中数据存储管理的基础。它是一个高度容错的系统,能检测和应对硬件故障,用于在低成本的通用硬件上运行。HDFS简化了文件的一致性模型,通过流式数据访问,提供高吞吐量应用程序数据访问功能,适合带有大型数据集的应用程序。

2.MapReduce分布式计算框架,它是一种分布式计算处理模型和执行环境,用于进行大数据量的计算。共包括Map和Reduce部分。其中Map接受一个键值对(key-value),产生一组中间键值对。MapReduce框架会将map函数产生的中间键值对里键相同的值传递给一个reduce函数。Reduce函数:接受一个键,以及相关的一组值,将这组值进行合并产生一组规模更小的值(通常只有一个或零个值)。

  1. hive基于Hadoop的数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类似SQL一样的查询语言HiveQL来管理这些数据。Hive定义了一种类似SQL的查询语言(HQL),将SQL转化为MapReduce任务在Hadoop上执行。通常用于离线分析。
  2. PigPig是一个基于Hadoop的大数据分析平台,它提供了一个叫PigLatin的高级语言来表达大数据分析程序,将脚本转换为MapReduce任务在Hadoop上执行。通常用于进行离线分析。
  3. Mahout数据挖掘算法库,Mahout起源于2008年,最初是Apache Lucent的子项目,它在极短的时间内取得了长足的发展,现在是Apache的顶级项目。Mahout的主要目标是创建一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创建智能应用程序。Mahout现在已经包含了聚类、分类、推荐引擎(协同过滤)和频繁集挖掘等广泛使用的数据挖掘方法。除了算法,Mahout还包含数据的输入/输出工具、与其他存储系统(如数据库、MongoDB 或Cassandra)集成等数据挖掘支持架构。
  4. ZooKeeper分布式协作服务,是一个针对大型分布式系统的可靠协调系统,提供包括配置维护,名字服务,分布式同步和组服务等功能。Hadoop的管理就是用的ZooKeeper
  5. HBaseHBase是一个分布式列存数据库,它基于Hadoop之上提供了类似BigTable的功能。HBase是一个针对结构化数据的可伸缩、高可靠、高性能、分布式和面向列的动态模式数据库。和传统关系数据库不同,HBase采用了BigTable的数据模型:增强的稀疏排序映射表(Key/Value),其中,键由行关键字、列关键字和时间戳构成。HBase提供了对大规模数据的随机、实时读写访问,同时,HBase中保存的数据可以使用MapReduce来处理,它将数据存储和并行计算完美地结合在一起。
  6. Sqoop数据同步工具,SQL-to-Hadoop的缩写。Sqoop是一个Hadoop和关系型数据库之间的数据转移工具。可将关系型数据库中的数据导入到Hadoop的HDFS中,也可将HDFS中的数据导进到关系型数据库中主要用于传统数据库和Hadoop之前传输数据。数据的导入和导出本质上是Mapreduce程序,充分利用了MR的并行化和容错性。
  7. Flume日志收集工具,Cloudera开源的日志收集系统,具有分布式、高可靠、高容错、易于定制和扩展的特点。它将数据从产生、传输、处理并最终写入目标的路径的过程抽象为数据流,在具体的数据流中,数据源支持在Flume中定制数据发送方,从而支持收集各种不同协议数据。同时,Flume数据流提供对日志数据进行简单处理的能力,如过滤、格式转换等。此外,Flume还具有能够将日志写往各种数据目标(可定制)的能力。总的来说,Flume是一个可扩展、适合复杂环境的海量日志收集系统。
  8. Ambari是一个对Hadoop集群进行监控和管理的基于Web的系统。目前已经支持HDFS,MapReduce,Hive,HCatalog,HBase,ZooKeeper,Oozie,Pig和Sqoop等组件。11.Apache
    Spark:Apache Spark是提供大数据集上快速进行数据分析的计算引擎。它建立在HDFS之上,却绕过了MapReduce使用自己的数据处理框架。Spark常用于实时查询、流处理、迭代算法、复杂操作运算和机器学习。

标签:HDFS,数据库,Hadoop,MapReduce,数据,分布式
From: https://blog.51cto.com/u_13973070/6203449

相关文章

  • Hadoop完全分布式 => 集群时间同步
    1.crontab定时任务cd/opt/module/hadoop-2.9.2/crontab-e第一次执行命令的时候分出现下面内容,输入2回车如果不小心输错的话,退出输入命令:select-editor输入2回车,然后再次执行crontab-e即可重启crontab服务方法:servicecrontabrestart2.集群时间同步时间同步方式:找一个机器,作为时......
  • Hadoop完全分布式 => 集群ssh配置与群起
    ssh配置cd/root/.ssh/ (注意如果没有.ssh文件,执行下命令ssh会自动生成)ssh-keygen-trsa 一路回车将公钥拷贝到hadoop102ssh-copy-idhadoop102拷贝成功后hadoop102的/root/.ssh/文件夹会生成文件authorized_keys这样之后就hadoop101可以无密登录hadoop102了,之后三个虚拟机都......
  • Windows10系统下Hadoop和Hive环境搭建
    文章部分内容来自:https://www.cnblogs.com/sheng-sjk/p/16186508.html结合实际搭建过程中的问题,对文章进行了优化环境准备软件版本备注Windows10操作系统JDK8暂时不要选用大于等于JDK9的版本,因为启动虚拟机会发生未知异常MySQL8.x用于管理Hive的元数据......
  • Hadoop - HDFS常用命令
      “hadoopfs(hdfsdfs)文件操作” #查看目录hdfsdfs-ls/#查看目录下所有文件hdfsdfs-ls-R/#创建目录hdfsdfs-mkdir-p/source/data#查看文件或目录大小hdfsdfs-du-h/source#改变文件权限hdfsdfs-chmod-R777/source/data#改变文件......
  • hadoop伪分布式集群的安装(不是单机版)
    准备工作三台虚拟机,关闭防火墙,关闭selinux查看防火状态systemctlstatusfirewalld暂时关闭防火墙systemctlstopfirewalld永久关闭防火墙systemctldisablefirewalld查看selinux状态getenforce暂时关闭selinuxsetenforce0永久关闭selinux在/etc/selinux/confi......
  • hadoop完全分布式
    准备工作三台虚拟机,关闭防火墙,关闭selinux查看防火状态systemctlstatusfirewalld暂时关闭防火墙systemctlstopfirewalld永久关闭防火墙systemctldisablefirewalld查看selinux状态getenforce暂时关闭selinuxsetenforce0永久关闭selinux在/etc/selinux/confi......
  • OpenEuler Linux 部署 HadoopHA
    OpenEulerLinux部署HadoopHAopenEulerLinux部署HadoopHA主机名IP地址spark01192.168.28.11spark02192.168.28.12spark03192.168.28.13升级操作系统和软件yum-yupdate升级后建议重启安装常用软件yum-yinstallgccgcc-c++autoconfautom......
  • openEuler 单机部署 Hadoop SingleNode 模式
    openEuler单机部署HadoopSingleNode模式升级操作系统和软件yum-yupdate升级后建议重启安装常用软件yum-yinstallgccgcc-c++autoconfautomakecmakemakersyncopenssh-servervimmanzipunzipnet-toolszlibzlib-developensslopenssl-develpcre-devel......
  • hadoop优化
    #Hadoop优化##案例、天气预报>随机生成温度代码```javapackagecom.shujia.weather;importjava.text.DateFormat;importjava.text.ParseException;importjava.text.SimpleDateFormat;importjava.util.Date; publicclassRandomWeather{  publicstaticv......
  • MIT 6.5840 2023 Spring(6.824)LAB1:MapReduce
    MIT6.58402023Spring(6.824)LAB1:MapReduce前言本次lab主要是完成一个基于RPC远程调用的单机单文件系统的简单MapReduce框架,并完成单词计数任务。基于golang实现,单Master,多Worker。实现worker的奔溃恢复(FaultTorrance),通过超时重新执行实现。主要的任务有,RPC调用参数及返回参数......