CN112328569A - 基于Flume分布式数据收集架构的构建方法 - Google Patents
基于Flume分布式数据收集架构的构建方法 Download PDFInfo
- Publication number
- CN112328569A CN112328569A CN202011221460.9A CN202011221460A CN112328569A CN 112328569 A CN112328569 A CN 112328569A CN 202011221460 A CN202011221460 A CN 202011221460A CN 112328569 A CN112328569 A CN 112328569A
- Authority
- CN
- China
- Prior art keywords
- data
- source
- agent
- flume
- channel
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供了一种基于Flume分布式数据收集架构的构建方法,可以降低后期的日志采集配置的维护成本,同时也降低大数据应用程序对业务***的影响。其包括以下步骤:S1.创建至少三台服务器,Flume搭建在Hadoop集群上;S2.根据实际的生产需求,确定需要的设计的规模,先从整体分析***环境需要什么、该怎么来搭建框架;S3.Flume核心单元Agent组件中配置Agent的Source,来定义接入的数据类型及位置,Agent的Source主要负责连接到数据源,接收数据,并将获取的数据写入Channel;S4.Sink通过对缓存来自Source的数据在Channe上使用和分配数据;S5.Sink从Channel读取数据,并将其发送到下一个Agent或最终的目的地。
Description
技术领域
本发明涉及一种基于Flume分布式数据收集架构的构建方法,属于信息技术技术领域。
背景技术
在互联网飞速发展的二十一世纪的今天,互联网的使用也与时渐进走进了大部分群众的生活、学习、工作之中,互联网成了我们不可或缺的一个关键部分。在如今不仅人与人之间能够进行实时的无阻碍的交流通信,而且由于人工智能AI的兴起,使得人与物、物与物之间也能产生某些奇妙的关系。早在2013年,中国就有公司提出了大数据的高容量、多样性、速度快和价值四个特点,在人们与互联网交流的同时会产生大量的数据,在这些实时生成的海量又复杂的非结构化和结构化的数据中,除了一部分少量的核心业务数据之外,其余的大部分数据都是与这心核心数据相关的日志数据。由于实时数据流的特点,实时数据更好的满足了人们的需求,人们在实际生产中对实时数据的要求越来越高,在海量的数据中实际生产可能只需要其中一部分就可以满足实际的需求,这就需要我们对数据更快速、更高效率、更加准确的去处理并且反应的用户,这也是很好的增强了用户对于我们***的使用体验以及交互体验。
在Flume框架中,可以和任意的数据进程集成,并且Flume的读取数据的速率大于数据写出的速率,其中Flume有着先进的缓冲机制,Flume框架包括两个事务模型,分别是数据从Source到Channel和数据从Channel到Sink,在这两个事务的保证下,数据能够成功的被提交,从而不会使数据获取一部分丢失一部分,当数据完全读取或者数据完全写入事务才结束传统的分布式架构中,Flume属于线性的排列方式,即虽然能够扩展但是***的稳定性并不高,不能保证数据传输的效率,除此之外框架不利于统一管理。
常见的是很多服务器构成一个采集端,并且随着业务的不断扩展和时间的积累服务器的数量也会增加。
发明内容
本发明目的是提供了一种基于Flume分布式数据收集架构的构建方法,可以降低后期的日志采集配置的维护成本,同时也降低大数据应用程序对业务***的影响。
本发明为实现上述目的,通过以下技术方案实现:
一种基于Flume分布式数据收集架构的构建方法,包括以下步骤:
S1.创建至少三台服务器,Flume搭建在Hadoop集群上;
S2.根据实际的生产需求,确定需要的设计的规模,先从整体分析***环境需要什么、该怎么来搭建框架;
S3. 根据数据源的格式进行Flume框架采集端的个性化配置:Flume核心单元Agent组件中配置Agent的Source,来定义接入的数据类型及位置,Agent的Source主要负责连接到数据源,接收数据,并将获取的数据写入Channel;
S4. 根据不同的需求对即将到来的数据源进行分类汇总,可以通过汇总器来配置多个sink来下发数据,Sink通过对缓存来自Source的数据在Channe上使用和分配数据;
S5.Sink从Channel读取数据,并将其发送到下一个Agent或最终的目的地。
所述基于Flume分布式数据收集架构的构建方法优选方案,服务器为三台,其中两台服务器作为采集端,第三台服务器作为汇总层,对于采集层的两个Agent配置Memory的Channel,Sink统一使用Avro;对于汇总层的Agent配置Channel。
所述基于Flume分布式数据收集架构的构建方法优选方案,汇总层的服务器将数据分发到HDFS和Kafka; HDFS中利用Hadoop的MapReduce进行离线批处理;Kafka进行实时的计算处理。
本发明的优点在于:针对对象分布式数据收集,将Flume服务进行分层将数据收集和数据分发每个部分都分开来维护,通过对采集层和分发层的维护是的***更加稳定并且扩展性也得到了很大的提升。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
图1为本发明实施例流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明中提到的缩略语和关键术语定义如下:
数据收集:数据收集是结合计算机或者其他专用的传感器以及硬件产品接入数据源对数据进行获取、按照一定格式或者自定义格式进行处理,最后保存到某个服务;
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的一个子项目。
实施例
一种基于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或最终的目的地,根据实际生产环境中,业务在大多情况数据有两个用途:离线批处理和实时流计算。
本实施例中,汇总层的服务器将数据分发到HDFS和Kafka; HDFS中利用Hadoop的MapReduce进行离线批处理;Kafka进行实时的计算处理。
本发明工作原理:整个Flume的框架为平面式设计,基础的分为三层:收集层、汇总层和存储层,在各自的每个分层可以单独的设计,在每一个层中可以进行不断的扩展,为了***的优化,在每一个分层中进行独特配置来满足客户各种各样需求以及生产环境。在这样的架构下数据进行格式化处理,省去了很多的后续数据工作,将数据重载、冲洗之后保存到后台进行处理。本实施例没有直接把收集到的数据丢到存储端,而是将两个服务器的数据汇总到一台服务器,再通过该服务器将数据进行分发,这样如果HDFS和Kafka服务器存在需要升级或维护的情况也不会导致Flume挂掉合或者出错,对部署在应用服务器上的采集端没有影响,只需要汇总层做好数据流的缓冲,在存储段恢复正常之后可以继续写入数据。采集层的两台服务器只负责对数据源的采集,汇总层只负责统一对数据的分发,将数据分发到HDFS和Kafka,常见的是很多服务器构成一个采集端,并且随着业务的不断扩展和时间的积累服务器的数量也会增加,这种分布式的方式一旦成功部署就可以降低后期的日志采集配置的维护成本,同时也降低大数据应用程序对业务***的影响,可谓是一劳永逸。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种基于Flume分布式数据收集架构的构建方法,其特征在于,包括以下步骤:
S1.创建至少三台服务器,Flume搭建在Hadoop集群上;
S2.根据实际的生产需求,确定需要的设计的规模,先从整体分析***环境需要什么、该怎么来搭建框架;
S3. 根据数据源的格式进行Flume框架采集端的个性化配置:Flume核心单元Agent组件中配置Agent的Source,来定义接入的数据类型及位置,Agent的Source主要负责连接到数据源,接收数据,并将获取的数据写入Channel;
S4. 根据不同的需求对即将到来的数据源进行分类汇总,可以通过汇总器来配置多个sink来下发数据,Sink通过对缓存来自Source的数据在Channe上使用和分配数据;
S5.Sink从Channel读取数据,并将其发送到下一个Agent或最终的目的地。
2.根据权利要求1所述基于Flume分布式数据收集架构的构建方法,其特征在于:服务器为三台,其中两台服务器作为采集端,第三台服务器作为汇总层,对于采集层的两个Agent配置Memory的Channel,Sink统一使用Avro;对于汇总层的Agent配置Channel。
3.根据权利要求2所述基于Flume分布式数据收集架构的构建方法,其特征在于:汇总层的服务器将数据分发到HDFS和Kafka; HDFS中利用Hadoop的MapReduce进行离线批处理;Kafka进行实时的计算处理。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010747866 | 2020-07-31 | ||
CN2020107478664 | 2020-07-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112328569A true CN112328569A (zh) | 2021-02-05 |
Family
ID=74316064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011221460.9A Pending CN112328569A (zh) | 2020-07-31 | 2020-11-05 | 基于Flume分布式数据收集架构的构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112328569A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113067883A (zh) * | 2021-03-31 | 2021-07-02 | 建信金融科技有限责任公司 | 数据传输方法、装置、计算机设备及存储介质 |
CN115086303A (zh) * | 2022-06-29 | 2022-09-20 | 徐工汉云技术股份有限公司 | 一种多数据源数据转发器及其设计方法 |
CN117198474A (zh) * | 2023-11-06 | 2023-12-08 | 天河超级计算淮海分中心 | 医学影像数据实时获取方法、***、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160204998A1 (en) * | 2015-01-09 | 2016-07-14 | Lg Cns Co., Ltd. | Method of constructing data collector, server performing the same and storage medium for the same |
CN106790572A (zh) * | 2016-12-27 | 2017-05-31 | 广州华多网络科技有限公司 | 一种分布式日志收集的***和方法 |
CN107908690A (zh) * | 2017-11-01 | 2018-04-13 | 南京欣网互联网络科技有限公司 | 一种基于大数据运营分析的数据处理方法 |
WO2018216828A1 (ko) * | 2017-05-24 | 2018-11-29 | 재단법인차세대융합기술연구원 | 에너지 빅데이터 관리 시스템 및 그 방법 |
CN111327681A (zh) * | 2020-01-21 | 2020-06-23 | 北京工业大学 | 一种基于Kubernetes的云计算数据平台构建方法 |
-
2020
- 2020-11-05 CN CN202011221460.9A patent/CN112328569A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160204998A1 (en) * | 2015-01-09 | 2016-07-14 | Lg Cns Co., Ltd. | Method of constructing data collector, server performing the same and storage medium for the same |
CN106790572A (zh) * | 2016-12-27 | 2017-05-31 | 广州华多网络科技有限公司 | 一种分布式日志收集的***和方法 |
WO2018216828A1 (ko) * | 2017-05-24 | 2018-11-29 | 재단법인차세대융합기술연구원 | 에너지 빅데이터 관리 시스템 및 그 방법 |
CN107908690A (zh) * | 2017-11-01 | 2018-04-13 | 南京欣网互联网络科技有限公司 | 一种基于大数据运营分析的数据处理方法 |
CN111327681A (zh) * | 2020-01-21 | 2020-06-23 | 北京工业大学 | 一种基于Kubernetes的云计算数据平台构建方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113067883A (zh) * | 2021-03-31 | 2021-07-02 | 建信金融科技有限责任公司 | 数据传输方法、装置、计算机设备及存储介质 |
CN115086303A (zh) * | 2022-06-29 | 2022-09-20 | 徐工汉云技术股份有限公司 | 一种多数据源数据转发器及其设计方法 |
CN115086303B (zh) * | 2022-06-29 | 2024-05-17 | 徐工汉云技术股份有限公司 | 一种多数据源数据转发器及其设计方法 |
CN117198474A (zh) * | 2023-11-06 | 2023-12-08 | 天河超级计算淮海分中心 | 医学影像数据实时获取方法、***、电子设备及存储介质 |
CN117198474B (zh) * | 2023-11-06 | 2024-03-01 | 天河超级计算淮海分中心 | 医学影像数据实时获取方法、***、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ali et al. | Comparison between SQL and NoSQL databases and their relationship with big data analytics | |
JP6602355B2 (ja) | クラウドベースの分散永続性及びキャッシュデータモデル | |
Shree et al. | KAFKA: The modern platform for data management and analysis in big data domain | |
CN112328569A (zh) | 基于Flume分布式数据收集架构的构建方法 | |
CN109074377B (zh) | 用于实时处理数据流的受管理功能执行 | |
CN111400326B (zh) | 一种智慧城市数据管理***及其方法 | |
CN105677844B (zh) | 一种移动广告大数据的定向推送及用户跨屏识别方法 | |
CN107544984B (zh) | 一种数据处理的方法和装置 | |
US9230002B2 (en) | High performant information sharing and replication for single-publisher and multiple-subscriber configuration | |
CN104036025A (zh) | 一种基于分布式的海量日志采集*** | |
CN109189835A (zh) | 实时生成数据宽表的方法和装置 | |
CN108536778B (zh) | 一种数据应用共享平台及方法 | |
CN103390038A (zh) | 一种基于HBase的构建和检索增量索引的方法 | |
CN106708993A (zh) | 基于大数据技术的空间数据存储处理中间件框架实现方法 | |
CN109063196A (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN107343021A (zh) | 国网云中应用的一种基于大数据的日志管理*** | |
CN103699660A (zh) | 一种大规模网络流式数据缓存写入的方法 | |
CN104363222A (zh) | 一种基于Hadoop的网络安全事件分析方法 | |
Arputhamary et al. | Data integration in Big Data environment | |
CN109669975B (zh) | 一种工业大数据处理***及方法 | |
CN108595605A (zh) | 一种车联网平台数据库的构建方法 | |
Li et al. | The overview of big data storage and management | |
CN115292414A (zh) | 一种业务数据同步到数仓的方法 | |
CN105550351B (zh) | 旅客行程数据即席查询***及方法 | |
CN107357919A (zh) | 行为日志查询***及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210205 |
|
RJ01 | Rejection of invention patent application after publication |