基于Flume分布式数据收集架构的构建方法技术

技术编号:27287958 阅读:22 留言:0更新日期:2021-02-06 11:56
本发明专利技术提供了一种基于Flume分布式数据收集架构的构建方法,可以降低后期的日志采集配置的维护成本,同时也降低大数据应用程序对业务系统的影响。其包括以下步骤:S1.创建至少三台服务器,Flume搭建在Hadoop集群上;S2.根据实际的生产需求,确定需要的设计的规模,先从整体分析系统环境需要什么、该怎么来搭建框架;S3.Flume核心单元Agent组件中配置Agent的Source,来定义接入的数据类型及位置,Agent的Source主要负责连接到数据源,接收数据,并将获取的数据写入Channel;S4.Sink通过对缓存来自Source的数据在Channe上使用和分配数据;S5.Sink从Channel读取数据,并将其发送到下一个Agent或最终的目的地。个Agent或最终的目的地。个Agent或最终的目的地。

【技术实现步骤摘要】
基于Flume分布式数据收集架构的构建方法


[0001]本专利技术涉及一种基于Flume分布式数据收集架构的构建方法,属于信息技术


技术介绍

[0002]在互联网飞速发展的二十一世纪的今天,互联网的使用也与时渐进走进了大部分群众的生活、学习、工作之中,互联网成了我们不可或缺的一个关键部分。在如今不仅人与人之间能够进行实时的无阻碍的交流通信,而且由于人工智能AI的兴起,使得人与物、物与物之间也能产生某些奇妙的关系。早在2013年,中国就有公司提出了大数据的高容量、多样性、速度快和价值四个特点,在人们与互联网交流的同时会产生大量的数据,在这些实时生成的海量又复杂的非结构化和结构化的数据中,除了一部分少量的核心业务数据之外,其余的大部分数据都是与这心核心数据相关的日志数据。由于实时数据流的特点,实时数据更好的满足了人们的需求,人们在实际生产中对实时数据的要求越来越高,在海量的数据中实际生产可能只需要其中一部分就可以满足实际的需求,这就需要我们对数据更快速、更高效率、更加准确的去处理并且反应的用户,这也是很好的增强了用户对于我们系统的使用体验以及交互体验。
[0003]在Flume框架中,可以和任意的数据进程集成,并且Flume的读取数据的速率大于数据写出的速率,其中Flume有着先进的缓冲机制,Flume框架包括两个事务模型,分别是数据从Source到Channel和数据从Channel到Sink,在这两个事务的保证下,数据能够成功的被提交,从而不会使数据获取一部分丢失一部分,当数据完全读取或者数据完全写入事务才结束传统的分布式架构中,Flume属于线性的排列方式,即虽然能够扩展但是系统的稳定性并不高,不能保证数据传输的效率,除此之外框架不利于统一管理。
[0004]常见的是很多服务器构成一个采集端,并且随着业务的不断扩展和时间的积累服务器的数量也会增加。

技术实现思路

[0005]本专利技术目的是提供了一种基于Flume分布式数据收集架构的构建方法,可以降低后期的日志采集配置的维护成本,同时也降低大数据应用程序对业务系统的影响。
[0006]本专利技术为实现上述目的,通过以下技术方案实现:一种基于Flume分布式数据收集架构的构建方法,包括以下步骤:S1.创建至少三台服务器,Flume搭建在Hadoop集群上;S2.根据实际的生产需求,确定需要的设计的规模,先从整体分析系统环境需要什么、该怎么来搭建框架;S3. 根据数据源的格式进行Flume框架采集端的个性化配置:Flume核心单元Agent组件中配置Agent的Source,来定义接入的数据类型及位置,Agent的Source主要负责连接到数据源,接收数据,并将获取的数据写入Channel;
S4. 根据不同的需求对即将到来的数据源进行分类汇总,可以通过汇总器来配置多个sink来下发数据,Sink通过对缓存来自Source的数据在Channe上使用和分配数据;S5.Sink从Channel读取数据,并将其发送到下一个Agent或最终的目的地。
[0007]所述基于Flume分布式数据收集架构的构建方法优选方案,服务器为三台,其中两台服务器作为采集端,第三台服务器作为汇总层,对于采集层的两个Agent配置Memory的Channel,Sink统一使用Avro;对于汇总层的Agent配置Channel。
[0008]所述基于Flume分布式数据收集架构的构建方法优选方案,汇总层的服务器将数据分发到HDFS和Kafka; HDFS中利用Hadoop的MapReduce进行离线批处理;Kafka进行实时的计算处理。
[0009]本专利技术的优点在于:针对对象分布式数据收集,将Flume服务进行分层将数据收集和数据分发每个部分都分开来维护,通过对采集层和分发层的维护是的系统更加稳定并且扩展性也得到了很大的提升。
附图说明
[0010]附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例一起用于解释本专利技术,并不构成对本专利技术的限制。
[0011]图1为本专利技术实施例流程示意图。
具体实施方式
[0012]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0013]本专利技术中提到的缩略语和关键术语定义如下:数据收集:数据收集是结合计算机或者其他专用的传感器以及硬件产品接入数据源对数据进行获取、按照一定格式或者自定义格式进行处理,最后保存到某个服务;Flume:是一种分布式,高度可靠且高度可用的服务框架。作为分布式的日志采集框架,它主要用于聚合、传输海量日志数据,它支持流式数据的传输;HDFS( Hadoop Distributed File System ):即Hadoop分布式文件系统,是为以流的方式存取大文件而设计的。适用于几百MB,GB以及TB,并写一次读多次的场合。而对于低延时数据访问、大量小文件、同时写和任意的文件修改,则并不是十分适合;Kafka:kafka是一个分布式框架中比较常见的一个消息缓存队列,可以用于数据的中转和调度;Producer:Kafka的生产者,用来生产数据即获取数据;Consumer:Kafka的消费者,用来消费Kafka生产的数据;Channel:Flume中的线程安全的缓存序列;Agent:Flume的核心单元;Source:Agent的组件,用来定义数据源;Avro:是一个基于二进制数据传输的高性能中间件,是Hadoop的一个子项目。
实施例
[0014]一种基于Flume分布式数据收集架构的构建方法,包括以下步骤:S1.创建三台服务器,其中为了方便业务操作,Flume搭建在Hadoop集群上,其中两台服务器作为采集端,第三台服务器作为汇总层,对于采集层的两个Agent配置Memory的Channel,Sink统一使用Avro;对于汇总层的Agent配置Channel;S2.根据实际的生产需求,确定需要的设计的规模,先从整体分析系统环境需要什么、该怎么来搭建框架;S3. 根据数据源的格式进行Flume框架采集端的个性化配置:Flume核心单元Agent组件中配置Agent的Source,来定义接入的数据类型及位置,Agent的Source主要负责连接到数据源,接收数据,并将获取的数据写入Channel,可以对数据进行格式化处理,添加自定义的额Filter过滤器,数据经过处理转存到Channel;S4. 根据不同的需求对即将到来的数据源进行分类汇总,可以通过汇总器来配置多个sink来下发数据,Sink通过对缓存来自Source的数据在Channe上使用和分配数据;S5.Sink从Channel读取数据,并将其发送到下一个Agent或最终的目的地,根据实际生产环境中,业务在大多情况数据有两个用途:离线批处理和实时流计算。...

【技术保护点】

【技术特征摘要】
1.一种基于Flume分布式数据收集架构的构建方法,其特征在于,包括以下步骤:S1.创建至少三台服务器,Flume搭建在Hadoop集群上;S2.根据实际的生产需求,确定需要的设计的规模,先从整体分析系统环境需要什么、该怎么来搭建框架;S3. 根据数据源的格式进行Flume框架采集端的个性化配置:Flume核心单元Agent组件中配置Agent的Source,来定义接入的数据类型及位置,Agent的Source主要负责连接到数据源,接收数据,并将获取的数据写入Channel;S4. 根据不同的需求对即将到来的数据源进行分类汇总,可以通过汇总器来配置多个sink来下发数据,Sink通过对缓存来自Source的数据...

【专利技术属性】
技术研发人员:李向佳陈付祥李鹏黄洋
申请(专利权)人:山东云缦智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1