Hadoop生态圈中各个服务角色

40 篇文章 2 订阅
13 篇文章 2 订阅

Hadoop生态圈中各个服务角色

  1. zookeeper角色:ZooKeeper服务是指包含一个或多个节点的集群提供服务框架用于集群管理。对于集群,Zookeeper服务提供的功能包括维护配置信息、命名、提供HyperBase的分布式同步,推荐在 ZooKeeper集群中至少有3个节点。

  2. JDK角色:JDK是 Java 语言的软件开发工具包, JDK是整个Java开发的核心,它包含了Java的运行环境,Java工具和Java基础的类库。

  3. Apache-Flume角色:Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接收方(可定制)的能力。

  4. Apache-Hive角色:Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行。

  5. Apache-Storm角色:Storm是内存级计算,数据直接通过网络导入内存。读写内存比读写磁盘速度快n个数量级。当计算模型比较适合流式时,Storm的流式处理,省去了批处理的收集数据的时间.

6.Elasticsearch角色:Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索、稳定、可靠、快速,安装使用方便。

  1. NameNode角色:HDFS系统中的节点用于维护文件系统中所有文件的目录结构并跟踪文件数据存储于哪些数据节点。当客户端需要从HDFS 文件系统中获得文件时,它通过和NameNode通讯来知道客户端哪个数据节点上有客户端需要的文件。 一个Hadoop集群中只能有一个NameNode。NameNode不能被赋予其他角色。

  2. DataNode角色:在HDFS中,DataNode是用来存储数据块的节点。

  3. Secondary NameNode 角色:为NameNode上的数据创建周期性检查点的节点。节点将周期性地下载当前NameNode镜像和日志文件,将日志和镜像文件合并为一个新的镜像文件然后上传到NameNode。 被分配了NameNode角色的机器不应再被分配Secondary NameNode 角色。

  4. Standby Namenode角色:Standby模式的NameNode元数据(Namespcae information 和 Block 都是和Active NameNode中的元数据是同步的,一但切换成Active模式,马上就可以提供NameNode服务。

  5. JournalNode角色:Standby NameName和Active NameNode通过JournalNode通信,保持信息同步。

  6. HBase角色:HBase是一个分布式的、面向列的开源数据库。HBase在Hadoop之上提供了类似于BigTable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。

  7. Kafka角色:Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。 对于像Hadoop的一样的日志数据和离线分析系统,但又要求实时处理的限制,这是一个可行的解决方案。Kafka的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是为了通过集群来提供实时的消费。

  8. Redis角色:Redis是一个开源的使用C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

  9. Scala角色:Scala是一门多范式的编程语言,一种类似Java的编程语言,设计初衷是实现可伸缩的语言、并集成面向对象编程和函数式编程的各种特性。

  10. Sqoop角色:Sqoop是一个用来将Hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导入到关系型数据库中。

  11. Impala角色:Impala是Cloudera公司主导开发的新型查询系统,它提供SQL语义,能查询存储在Hadoop的HDFS和HBase中的PB级大数据。已有的Hive系统虽然也提供了SQL语义,但由于Hive底层执行使用的是MapReduce引擎,仍然是一个批处理过程,难以满足查询的交互性。相比之下,Impala的最大特点也是最大卖点就是它的快速。

  12. Crawler角色:Crawler是大快DKHadoop专有组件,爬虫系统,爬取动态静态数据。

  13. Spark角色:Spark是一种与Hadoop相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。Spark 是在Scala语言中实现的,它将Scala用作其应用程序框架。与Hadoop不同,Spark和Scala能够紧密集成,其中的Scala可以像操作本地集合对象一样轻松地操作分布式数据集。

  14. HUE角色:HUE是一组可与您的Hadoop jiqun 交互的网络应用程序。HUE应用能让您浏览HDFS和工作,管理Hive metastore,运行Hive,浏览HBase Sqoop出口数据,提交MapReduce程序,构建自定义的搜索引擎与Solr一起调度重复性的工作流。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hadoop生态圈是指围绕Hadoop分布式存储和处理框架所形成的一系列相关技术和工具。它包括了众多的开源项目和组件,用于支持大规模数据处理、存储和分析。 以下是Hadoop生态圈一些常见的组件和技术: 1. HDFS(Hadoop Distributed File System):Hadoop的分布式文件系统,用于存储大规模数据,并提供高可靠性和高吞吐量的数据访问。 2. MapReduce:Hadoop的计算框架,用于并行处理大规模数据集。它将数据分片并分发到集群的多个节点上进行处理和计算。 3. YARN(Yet Another Resource Negotiator):Hadoop的资源管理系统,用于调度和管理集群的计算资源。它可以同时支持多种计算框架,如MapReduce、Spark等。 4. Hive:基于Hadoop的数据仓库工具,提供类似于SQL的查询语言HiveQL,使用户可以通过SQL语句对存储在Hadoop的数据进行查询和分析。 5. Pig:一种高级的数据流脚本语言,用于对大规模数据进行转换、查询和分析。它提供了一种简化的编程模型,使用户可以快速编写复杂的数据处理任务。 6. HBase:一个分布式、可扩展的NoSQL数据库,建立在Hadoop之上。它提供了高性能的随机读写能力,适用于存储大规模的结构化数据。 7. Spark:一个快速、通用的大数据处理引擎。与传统的MapReduce相比,Spark具有更高的性能和更丰富的功能,支持交互式查询、流处理、机器学习等应用。 除了以上列举的组件外,还有其他一些组件如Sqoop(用于数据导入和导出)、Flume(用于数据采集和传输)、Oozie(用于工作流调度)、ZooKeeper(用于协调分布式应用)等,它们都是Hadoop生态圈的重要组成部分,为大数据处理提供了全面的支持和解决方案。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值