CN106709069B - 高可靠性的大数据日志采集与传输方法 - Google Patents
高可靠性的大数据日志采集与传输方法 Download PDFInfo
- Publication number
- CN106709069B CN106709069B CN201710056287.3A CN201710056287A CN106709069B CN 106709069 B CN106709069 B CN 106709069B CN 201710056287 A CN201710056287 A CN 201710056287A CN 106709069 B CN106709069 B CN 106709069B
- Authority
- CN
- China
- Prior art keywords
- data
- file
- verification
- big data
- log collection
- 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.)
- Active
Links
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/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
高可靠性的大数据日志采集与传输方法,步骤如下,步骤1设计日志采集架构;设计可以实现并有利于日志采集的平台架构:设有基于能够采集日志和校验日志的系统架构;flume部署至多个数据源上,flume用于采集数据源的日志数据并发送;Kafka作为数据传输模块,部署在网络中心节点;storm和HDFS部署在最终数据汇总的大数据集群上;步骤2数据恢复的流程和算法;保障数据因程序中断或网络中断而重新恢复的流程和算法。步骤3设计文本校验的交互流程和算法。
Description
技术领域
本发明涉及数据采集领域,具体而言涉及一种高可靠性的大数据日志采集与传输技术。
背景技术
数据应用中,数据采集是一个非常重要的环节。而在互联网时代,大量的信息都存储在日志文件中,对用户数据挖掘、系统维护、系统改造都有重大意义。
但很多公司的系统分布在不同的物理地点,且每个节点都单独记录日志。因此若需要针对各地数据进行全面综合大数据分析,需要将各地零碎的日志采集至一套大数据平台中。现有技术已经使用flume+kafka+storm构建实时日志分析系统。Flume用于采集数据源、并以管道流方式,提供很多的默认实现,让用户通过参数部署,及扩展API。Kafka是一个可持久化的分布式的消息队列。Kafka是一个非常通用的系统。可以有许多生产者和很多的消费。Storm还是一个分布式的、容错的实时计算系统,由BackType开发,广泛用于进行实时日志处理,实时统计、实时风控、实时推荐等场景中。HDFS是分布式文件系统,HDFS采用单一主控机+多台工作机的模式,由一台主控机(Master)存储系统全部元数据,并实现数据的分布、复制、备份决策。
本发明通过开源工具kafka、storm、flume以及HDFS搭建了一套大数据日志采集平台,并通过设计数据传输校验流程,保证在日志传输过程中,不会因为网络中断或临时堵塞,或传输程序因为异常中断而导致日志数据传输丢失。
该发明可以广泛应用到通信、银行、财务、国防、资讯等众多领域。
发明内容
本发明目的在于,提出一种高可靠性的大数据日志采集与传输方法,能够保证日志数据可以可靠采集。保证在日志传输过程中,不会因为网络中断或临时堵塞,或传输程序因为异常中断而导致日志数据传输丢失。
为达成上述目的,本发明所采用的技术方案:1、高可靠性的大数据日志采集与传输方法,其特征是步骤如下,
步骤1设计日志采集架构。设计可以实现并有利于日志采集的平台架构:
设有基于能够采集日志和校验日志的系统架构;flume部署至多个数据源上,flume用于采集数据源的日志数据并发送;Kafka作为数据传输模块,(一般)部署在网络中心节点(即可以快速连通各个数据源的服务器);storm和HDFS部署在最终数据汇总的大数据集群上;设有数据库,用于存储日志文件校验的信息,数据库可以部署在一台独立的服务器上或部署在大数据集群上;
日志校验的交互流程和算法步骤:通过数据源发送校验码的方式使大数据集群根据校验码触发校验;
通过文本校验的交互流程和算法步骤:通过解析获取校验码中数据源日志文件的行数与大数据集群中已获得的实际行数对比,判断文件是否应该重传;
步骤2数据恢复的流程和算法;保障数据因程序中断或网络中断而重新恢复的流程和算法。
进一步的,步骤2中,
1)flume读取目前日志文件;读取时会记录当前读取日志文件的偏移量;当因为断电或服务中断,下次启动时会接着上次读取的位置读取文件;
2)当数据源所在服务器会定时发送日志文件的校验信息至大数据集群上;
3)当大数据集群的storm接收到消息校验,会对存储在HDFS上的日志文件进行校验并将校验信息记录至数据库;若校验成功,则发送文件校验成功消息至数据源;若校验不成功,则发送文件重传请求至至数据源;
4)当数据源的flume接收到文件校验成功消息时,记录文件发送成功;当接收到文件重传请求时,重新发送日志文件。
进一步的,步骤3大数据集群对文件校验流程:
1)当接收到源节点flume发送的校验消息;
2)大数据集群中的storm根据校验消息读取HDFS上已上传的文件并计算文件上的实际行数;
3)将实际行数与校验信息中的校验行数对比,若不一致则发送重新上传请求;若成功,则发送文件成功消息。
其中,流程和算法设计是本发明的核心步骤。
本发明具有以下有益效果:
1)本发明可以帮助大数据平台更可靠的采集数据。
2)本发明可以让大数据分析更可靠。
3)本发明可以让大数据平台进行实时分析尤其是保证日志数据可以可靠采集。保证在日志传输过程中,不会因为网络中断或临时堵塞,或传输程序因为异常中断而导致日志数据传输丢失。
附图说明
图1系统架构图。
图2数据结构图。
图3文件校验流程图。
具体实施方式
本实施例中,本发明通过设计日志采集平台采集日志,如图1所示。
其中flume部署至各个数据源上,数据源可以是多个。flume用于采集数据源的日志数据并发送。Kafka作为数据传输模块,一般部署在网络中心节点(即可以快速连通各个数据源的服务器)。storm和HDFS部署在最终数据汇总的大数据集群上。数据库用于存储日志文件校验的信息,可以部署在一台独立的服务器上也可以部署在大数据集群上。
在本实施例中,本发明设计了数据恢复流程如图2所示。
1)flume读取目前日志文件。读取时会记录当前读取日志文件的偏移量。当因为断电或服务中断,下次启动时会接着上次读取的位置读取文件。
2)当数据源所在服务器会定时发送日志文件的校验信息至大数据集群上。校验信息格式如下:
Key:yyyy-MM-dd HH:mm:ss_dataChecked!
Value:文件全路径1,最大行数1,业务标识1||文件全路径2,最大行数2,业务标识2…
Key值只有一个字段长度,内容为构造校验时间字符串;
Value为文件全路径信息,最大行数,业务标识,多个文件以“||”分割。
3)当大数据集群的storm接收到消息校验,会对存储在HDFS上的日志文件进行校验并将校验信息记录至数据库。若校验成功,则发送文件校验成功消息至数据源。若校验不成功,则发送文件重传请求至至数据源。
文件校验成功消息样例如下:
Key:文件全路径,业务标识,类型(为2)
Value:2016-11-15 14:13:22_datachecked success!
文件重传消息样例如下:
Key:文件全路径,业务标识,类型(为1)
Value:行号1,开始偏移量1,结束偏移量1||行号2,开始偏移量2,结束偏移量2||行号N,开始偏移量m,结束偏移量p
4)当数据源的flume接收到文件校验成功消息时,记录文件发送成功。当接收到文件重传请求时,重新发送日志文件。
本发明中,大数据集群对文件校验流程如图3。
1)当接收到源节点flume发送的校验消息。
2)大数据集群中的storm根据校验消息读取HDFS上已上传的文件并计算文件上的实际行数。
3)将实际行数与校验信息中的校验行数对比,若不一致则发送重新上传请求。若成功,则发送文件成功消息。
Claims (3)
1.高可靠性的大数据日志采集与传输方法,其特征是步骤如下,
步骤1设计日志采集架构;设计能实现并有利于日志采集的平台架构:
设有基于能够采集日志和校验日志的系统架构;flume部署至多个数据源上,flume用于采集数据源的日志数据并发送;Kafka作为数据传输模块,部署在网络中心节点,即快速连通各个数据源的服务器;storm和HDFS部署在最终数据汇总的大数据集群上;设有数据库,用于存储日志文件校验的信息,数据库部署在一台独立的服务器上或部署在大数据集群上;
日志校验的交互流程和算法步骤:通过数据源发送校验码的方式使大数据集群根据校验码触发校验;
通过文本校验的交互流程和算法步骤:通过解析获取校验码中数据源日志文件的行数与大数据集群中已获得的实际行数对比,判断文件是否应该重传;
步骤2 数据恢复的流程和算法:保障数据因程序中断或网络中断而重新恢复的流程和算法;
步骤3 设计文本校验的交互流程和算法。
2.根据权利要求1所述的高可靠性的大数据日志采集与传输方法,其特征是步骤2中,
1)flume读取目前日志文件;读取时会记录当前读取日志文件的偏移量;当因为断电或服务中断,下次启动时会接着上次读取的位置读取文件;
2)当数据源所在服务器会定时发送日志文件的校验信息至大数据集群上;
3)当大数据集群的storm接收到消息校验,会对存储在HDFS上的日志文件进行校验并将校验信息记录至数据库;若校验成功,则发送文件校验成功消息至数据源;若校验不成功,则发送文件重传请求至数据源;
4)当数据源的flume接收到文件校验成功消息时,记录文件发送成功;当接收到文件重传请求时,重新发送日志文件。
3.根据权利要求1所述的高可靠性的大数据日志采集与传输方法,其特征是大数据集群对文件校验流程:
1)当接收到源节点flume发送的校验消息;
2)大数据集群中的storm根据校验消息读取HDFS上已上传的文件并计算文件上的实际行数;
3)将实际行数与校验信息中的校验行数对比,若不一致则发送重新上传请求;若成功,则发送文件成功消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710056287.3A CN106709069B (zh) | 2017-01-25 | 2017-01-25 | 高可靠性的大数据日志采集与传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710056287.3A CN106709069B (zh) | 2017-01-25 | 2017-01-25 | 高可靠性的大数据日志采集与传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106709069A CN106709069A (zh) | 2017-05-24 |
CN106709069B true CN106709069B (zh) | 2018-06-15 |
Family
ID=58909041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710056287.3A Active CN106709069B (zh) | 2017-01-25 | 2017-01-25 | 高可靠性的大数据日志采集与传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106709069B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107273228B (zh) * | 2017-07-13 | 2020-09-04 | 焦点科技股份有限公司 | 基于星型拓扑架构的消息传输方法 |
CN107609158A (zh) * | 2017-09-26 | 2018-01-19 | 北京计算机技术及应用研究所 | 一种基于Flume的高可靠数据采集及存储方法 |
CN107784093A (zh) * | 2017-10-13 | 2018-03-09 | 郑州云海信息技术有限公司 | 一种分布式的大数据处理系统 |
CN107943647A (zh) * | 2017-11-21 | 2018-04-20 | 北京小度互娱科技有限公司 | 一种可靠的分布式日志收集方法和系统 |
CN110232053B (zh) | 2017-12-05 | 2024-02-02 | 华为技术有限公司 | 日志处理方法、相关设备及系统 |
CN108399231A (zh) * | 2018-02-13 | 2018-08-14 | 中体彩科技发展有限公司 | 一种数据采集方法及Flume数据采集客户端 |
CN108512726B (zh) * | 2018-03-29 | 2020-06-02 | 上海连尚网络科技有限公司 | 一种数据监控的方法及设备 |
CN109344033A (zh) * | 2018-09-27 | 2019-02-15 | 浪潮软件股份有限公司 | 一种基于分布式架构的云日志采集方法 |
CN109284337A (zh) * | 2018-09-29 | 2019-01-29 | 四川赢才多多科技有限公司 | 一种基于大数据分析服务的系统 |
CN109271399A (zh) * | 2018-11-19 | 2019-01-25 | 武汉达梦数据库有限公司 | 一种数据库写入日志一致性的校验方法 |
CN109542733B (zh) * | 2018-12-05 | 2020-05-01 | 焦点科技股份有限公司 | 一种高可靠的实时日志收集及可视化检索方法 |
CN111240936A (zh) * | 2020-01-13 | 2020-06-05 | 北京点众科技股份有限公司 | 一种数据完整性校验的方法及设备 |
CN111654412B (zh) * | 2020-05-15 | 2022-02-01 | 华青融天(北京)软件股份有限公司 | 数据采集传输方法、装置和电子设备 |
CN112446646B (zh) * | 2020-12-14 | 2024-07-02 | 温州大学 | 一种加油站数字化安全洞察系统管理及展示平台 |
CN114238018B (zh) * | 2021-12-17 | 2023-03-24 | 天翼爱音乐文化科技有限公司 | 日志采集文件完整性检测方法、系统、装置及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103401934A (zh) * | 2013-08-06 | 2013-11-20 | 广州唯品会信息科技有限公司 | 获取日志数据的方法和系统 |
CN105700989A (zh) * | 2016-01-13 | 2016-06-22 | 焦点科技股份有限公司 | 一种日志文件的异常检测与处理的方法与装置 |
CN105933169A (zh) * | 2016-07-04 | 2016-09-07 | 江苏飞搏软件股份有限公司 | 一种高效鲁棒的大数据安全聚合系统与方法 |
CN105989044A (zh) * | 2015-02-04 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 一种数据库校验方法及系统 |
CN106130960A (zh) * | 2016-06-12 | 2016-11-16 | 微梦创科网络科技(中国)有限公司 | 盗号行为的判断系统、负载调度方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9990383B2 (en) * | 2015-05-01 | 2018-06-05 | Ebay Inc. | Constructing a data adaptor in an enterprise server data ingestion environment |
-
2017
- 2017-01-25 CN CN201710056287.3A patent/CN106709069B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103401934A (zh) * | 2013-08-06 | 2013-11-20 | 广州唯品会信息科技有限公司 | 获取日志数据的方法和系统 |
CN105989044A (zh) * | 2015-02-04 | 2016-10-05 | 阿里巴巴集团控股有限公司 | 一种数据库校验方法及系统 |
CN105700989A (zh) * | 2016-01-13 | 2016-06-22 | 焦点科技股份有限公司 | 一种日志文件的异常检测与处理的方法与装置 |
CN106130960A (zh) * | 2016-06-12 | 2016-11-16 | 微梦创科网络科技(中国)有限公司 | 盗号行为的判断系统、负载调度方法和装置 |
CN105933169A (zh) * | 2016-07-04 | 2016-09-07 | 江苏飞搏软件股份有限公司 | 一种高效鲁棒的大数据安全聚合系统与方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106709069A (zh) | 2017-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106709069B (zh) | 高可靠性的大数据日志采集与传输方法 | |
CN106610854A (zh) | 一种模型更新方法及装置 | |
CN106649071A (zh) | 进程内部日志上报的方法和装置 | |
CN106452819A (zh) | 数据采集系统及数据采集方法 | |
CN102567185B (zh) | 一种应用服务器的监控方法 | |
CN101969386A (zh) | 一种日志采集装置和日志采集方法 | |
CN114449018B (zh) | 一种电力采集终端的日志文件自动上传方法、系统 | |
CN105760236A (zh) | 一种分布式计算机集群下的数据采集方法及系统 | |
CN110737647B (zh) | 一种互联网大数据清洗方法 | |
CN110493302A (zh) | 一种文件传输方法、设备及计算机可读存储介质 | |
CN105786683A (zh) | 自定制的日志收集系统和方法 | |
CN102157037B (zh) | 软件和模块的自动化测试方法及其系统 | |
CN109218401A (zh) | 日志采集方法、系统、计算机设备和存储介质 | |
CN111884883A (zh) | 一种用于业务接口的快速审计处理方法 | |
CN106875184B (zh) | 异常场景模拟方法、装置及设备 | |
CN107818106B (zh) | 一种大数据离线计算数据质量校验方法和装置 | |
CN103729269A (zh) | 一种基于云架构的网络考试数据双缓存方法 | |
CN114489477A (zh) | 一种基于区块链的去中心化分布式存储方法 | |
CN108073586A (zh) | 基于油气管道scada系统的事故分析方法与装置 | |
CN117112039B (zh) | 一种数据中心的传输优化系统及运行方法 | |
CN109828723A (zh) | 一种分布式存储系统及其精确数据修复方法及装置 | |
CN100433642C (zh) | 一种故障定位和故障排除方法和系统 | |
CN104639585B (zh) | 一种实时数据传输系统及其数据同步方法 | |
CN106855888A (zh) | 基于Logstash分布式系统的日志监控系统 | |
CN114706871B (zh) | 一种基于综合监控管理的数据监控方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |