System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据处理,特别是一种数据推送系统的数据预处理方法。
技术介绍
1、mysql binlog日志文件记录了mysql数据库的所有变更。mysql数据库作为开源的数据库,便于获取mysql binlog的数据,同时方便开发自主的使用mysql binlog订阅端。通过订阅mysql binlog数据,能满足很多业务应用场景的需要,如异构数据库同步、表同步、流式计算、感兴趣数据变更的订阅等。
2、随着日常工作、生活对信息化系统依赖程度逐渐增加,对于大规模的数据抽取的需求越发强烈,利用大型业务信息数据推送系统对接多个第三方平台,从而导致大型业务信息数据推送系统mysql binlog日志量巨大,且不同的第三方平台的抽取数据需求都不尽相同,因此则需要一种高效的、能够满足各第三方平台需求的数据预处理方法。
技术实现思路
1、本专利技术为解决现有技术中存在的技术问题,提供了一种数据推送系统的数据预处理方法,包括以下步骤:
2、步骤一:获取binlog日志文件后进行解析得到binlog解析数据,所述binlog解析数据包括:第三方平台标识、事件操作数据和其他数据;
3、步骤二:建立的增删规则池,对binlog解析数据进行第一次字段过滤,得到初始binlog解析数据;所述第三方平台标识和事件操作数据为固定数据,不参与过滤;
4、步骤三:将初始binlog解析数据进行分类;
5、步骤四:对初始binlog解析数据进行第二次字段过
6、步骤五:根据不同的第三方平台的最终binlog解析数据制成不同宽表。
7、进一步地,所述步骤一获取binlog日志文件后进行解析得到binlog解析数据具体为:
8、通过canal 模拟 mysql slave 的交互协议,向mysql数据库发送dump请求后得到binlog日志文件并解析得到binlog解析数据。
9、进一步地,所述其他数据包括:日志名称、事件类型、时间戳、服务器标识、执行时间和操作者数据。
10、进一步地,所述增删规则池包括:过滤规则池、补全规则池;
11、所述过滤规则池存储不同第三方平台所设定的字段过滤规则,过滤一个字段则代表一种字段过滤规则;
12、所述补全规则池存储不同第三方平台所设定的字段补全规则,补全一个字段则代表一种字段补全规则。
13、进一步地,所述步骤二具体为:
14、统计所述过滤规则池中相同的字段过滤规则的种类数量,设定过滤阈值,将所述种类数量不小于过滤阈值的字段过滤规则都存储在相同过滤池中,按照所述相同过滤池中的字段过滤规则对所有binlog解析数据进行第一次字段过滤。
15、进一步地,所述步骤三将初始binlog解析数据进行分类具体为:
16、根据第三方平台标识对初始binlog解析数据进行分类。
17、进一步地,所述步骤三在将初始binlog解析数据进行分类之后,还包括以下步骤:
18、将初始binlog解析数据按照分类放到不同的环形缓冲区中。
19、进一步地,所述步骤四具体为:
20、根据第三方平台设定的字段过滤规则对属于该第三方平台的初始binlog解析数据进行第二次字段过滤和/或根据第三方平台设定的字段补全规则对属于该第三方平台的初始binlog解析数据进行字段补全。
21、进一步地,在所述步骤五之后还包括步骤六:
22、在各宽表中进行数据标注。
23、进一步地,所述步骤六具体为:
24、对相似的事件操作数据进行数据标注或对所述宽表对应的第三方平台所设定的字段补全规则进行数据标注;
25、相似的事件操作数据根据事件操作数据的ddl语句的具体用途和/或dml语句的具体用途来判定。
26、相比于现有技术,本专利技术的有益效果在于:
27、1、通过第一次过滤、第二次过滤和补全操作对数据进行定制化处理,实现应对不同第三方平台的抽取需求;
28、2、利用canal实现mysql binlog的监听,对业务系统代码零侵入,无需修改任何业务系统代码,高效即时的获取数据变动,同时保证数据变动信息不丢失;
29、3、利用环形缓冲区存储数据和实现数据的快速消费,降低数据预处理内存和cpu的消耗,高效利用服务器内存及cpu性能;
30、4、根据ddl语句的具体用途和/或dml语句的具体用途来统计事件操作数据并标注方便第三方平台根据数据标注快速判定是否存在数据异常或根据第三方平台的字段补全规则进行数据标注方便第三方平台查看重要数据。
本文档来自技高网...【技术保护点】
1.一种数据推送系统的数据预处理方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的数据推送系统的数据预处理方法,其特征在于,所述步骤一获取binlog日志文件后进行解析得到binlog解析数据具体为:
3.根据权利要求1所述的数据推送系统的数据预处理方法,其特征在于,所述其他数据包括:日志名称、事件类型、时间戳、服务器标识、执行时间和操作者数据。
4.根据权利要求1所述的数据推送系统的数据预处理方法,其特征在于,所述增删规则池包括:过滤规则池和补全规则池;
5.根据权利要求4所述的数据推送系统的数据预处理方法,其特征在于,所述步骤二具体为:
6.根据权利要求1所述的数据推送系统的数据预处理方法,其特征在于,所述步骤三将初始binlog解析数据进行分类具体为:
7.根据权利要求6所述的数据推送系统的数据预处理方法,其特征在于,所述步骤三在将初始binlog解析数据进行分类之后,还包括以下步骤:
8.根据权利要求4所述的数据推送系统的数据预处理方法,其特征在于,所述步骤四具体为:
10.根据权利要求9所述的数据推送系统的数据预处理方法,其特征在于,所述步骤六具体为:
...【技术特征摘要】
1.一种数据推送系统的数据预处理方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的数据推送系统的数据预处理方法,其特征在于,所述步骤一获取binlog日志文件后进行解析得到binlog解析数据具体为:
3.根据权利要求1所述的数据推送系统的数据预处理方法,其特征在于,所述其他数据包括:日志名称、事件类型、时间戳、服务器标识、执行时间和操作者数据。
4.根据权利要求1所述的数据推送系统的数据预处理方法,其特征在于,所述增删规则池包括:过滤规则池和补全规则池;
5.根据权利要求4所述的数据推送系统的数据预处理方法,其特征在于,所述步骤二具体为...
【专利技术属性】
技术研发人员:汪龙,邱雪雁,官轲,
申请(专利权)人:深圳市亲邻科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。