大数据学习

成都大数据开发培训:Hadoop体系中的服务角色介绍

2018-09-12  本文已影响9人  f46294cfe85d

在集群中运行DKhadoop服务,需要指定集群中的一个或多个节点执行该服务的特定功能,角色分配是必须的,没有角色集群将无法正常工作,在分配角色前,需要了解这些角色的含义。

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许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索、稳定、可靠、快速,安装使用方便。

7.NameNode角色:

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

8.DataNode角色:

  在HDFS中,DataNode是用来存储数据块的节点。

9.SecondaryNameNode角色:

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

10.StandbyNamenode角色:

  Standby模式的NameNode元数据(Namespcaeinformation和Block都是和ActiveNameNode中的元数据是同步的,一但切换成Active模式,马上就可以提供NameNode服务。

11.JournalNode角色:

  StandbyNameName和ActiveNameNode通过JournalNode通信,保持信息同步。

12.HBase角色:

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

13.Kafka角色:

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

14.Redis角色:

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

15.Scala角色:

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

16.Sqoop角色:

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

17.Impala角色:

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

18.Crawler角色:

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

19.Spark角色:

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

20.HUE角色:

原文:成都大数据开发:Hadoop体系结构中的服务角色介绍

推荐阅读: Spark开发调优性能优化(基础篇)    成都加米谷大数据培训,9月下旬数据分析与挖掘新班即将开课,报名享受加米谷双节特惠活动福利!

上一篇下一篇

猜你喜欢

热点阅读