数据库的流量染色方法、装置、电子装置和存储介质制造方法及图纸

技术编号:39036135 阅读:11 留言:0更新日期:2023-10-10 11:49
本申请涉及一种数据库的流量染色方法、装置、电子装置和存储介质,其中,该方法包括:确认目标数据库的日志处于日志开启;并确认数据传输服务处于对目标数据库的变更事件的订阅;基于预定义的流量协议,确定与发起的第一操作请求对应的流量标识;将生成的第二操作请求传输至目标数据库;在数据传输服务订阅到目标数据库基于第二操作请求生成的变更后,以从目标数据库的日志中获取变更事件中的第二操作请求;并确定对应的流量标识。通过本申请,解决了需要增加显示事务,实现复杂程度高,性能损耗严重的问题;在支持数据库作为变更源的场景下,利用第二操作请求对应的日志来透传第二操作请求中的流量标识,从而能够保留流量标识。从而能够保留流量标识。从而能够保留流量标识。

【技术实现步骤摘要】
数据库的流量染色方法、装置、电子装置和存储介质


[0001]本申请涉及数据处理
,特别是涉及数据库的流量染色方法、装置、电子装置和存储介质。

技术介绍

[0002]流量染色是指根据流量协议设置对应的流量染色规则,对指定的流量进行染色标记,并在整个调用链中携带该标记。通过染色流量可以对特定的流量进行跟踪和路由。流量染色在微服务中有广泛的应用,可用于灰度发布、链路隔离、单元化、数据迁移等涉及数据库的场景中。
[0003]因为数据库的日志不记录请求来源,那么在数据库变更作为触发源的情况下,存在异步数据传输方式会造成请求来源中的流量标记丢失。因此,目前数据库的流量染色方案为是通过新增用于记录流量标的标记表;数据库中所有涉及的数据修改,均需要开启事务以同步标记表,并在事务中插入一条语句记录到新增表中用于记录流量标。这种方式的缺陷在于,需要增加显示事务,实现复杂程度高,而且需要业务入侵,导致性能损耗严重。
[0004]针对相关技术中存在需要增加显示事务,实现复杂程度高,而且需要业务入侵,导致性能损耗严重,目前还没有提出有效的解决方案。

技术实现思路

[0005]在本实施例中提供了一种数据库的流量染色方法、装置、电子装置和存储介质,以解决相关技术中需要增加显示事务,实现复杂程度高,而且需要业务入侵,导致性能损耗严重的问题。
[0006]第一个方面,在本实施例中提供了一种数据库的流量染色方法,包括:
[0007]确认目标数据库的日志处于日志开启;并确认数据传输服务处于对所述目标数据库的变更事件的订阅;
[0008]基于预定义的流量协议,确定与发起的第一操作请求对应的流量标识;
[0009]根据所述流量标识和所述第一操作请求生成第二操作请求,将所述第二操作请求传输至所述目标数据库;
[0010]在所述数据传输服务订阅到所述目标数据库基于所述第二操作请求生成的变更后,以从所述目标数据库的日志中获取所述变更事件中的第二操作请求;并基于所述第二操作请求,确定对应的所述流量标识。
[0011]在其中的一些实施例中,所述方法还包括:
[0012]在所述目标数据库中,接收所述第二操作请求,基于所述第二操作请求对所述目标数据库中的目标数据进行变更,得到目标变更数据;
[0013]且基于所述日志的开启状态,所述目标数据库中的日志自动记录变更事件;所述变更事件包括所述目标变更数据和所述第二操作请求。
[0014]在其中的一些实施例中,所述预定义的流量协议包括标识格式信息、类型信息、承
载信息以及处理策略。
[0015]在其中的一些实施例中,所述根据所述流量标识和所述第一操作请求生成第二操作请求,包括:
[0016]将所述流量标识拼接到所述第一操作请求的注释中,生成第二操作请求。
[0017]在其中的一些实施例中,所述基于所述预定义的流量协议,确定与发起的第一操作请求对应的流量标识,包括:
[0018]发起第一操作请求;
[0019]获取当前的业务需求;
[0020]基于所述预定义的流量协议,根据所述业务需求生成与所述第一操作请求对应的流量标识。
[0021]在其中的一些实施例中,所述基于所述第二操作请求,确定对应的所述流量标识,包括:
[0022]对所述第二操作请求的注释进行解析,以从所述第二操作请求的注释中解析出所述流量标识。
[0023]在其中的一些实施例中,所述方法,所述方法还包括:
[0024]在所述数据传输服务中,获取所述预定义的流量协议;
[0025]在确定对应的所述流量标识之后,根据所述预定义的流量协议和所述流量标识进行分类处理。
[0026]在其中的一些实施例中,所述根据所述预定义的流量协议和所述流量标识进行分类处理,包括:
[0027]根据所述预定义的流量协议和所述流量标识中的环境来源信息,将所述目标数据库中变更事件路由返回至原环境,以实现环境隔离。
[0028]在其中的一些实施例中,所述根据所述预定义的流量协议和所述流量标识进行分类处理,包括:
[0029]根据所述预定义的流量协议和所述流量标识中的屏蔽修改信息,对所述目标数据库中变更事件进行屏蔽,以实现屏蔽特定修改。
[0030]第二个方面,在本实施例中提供了一种数据库的流量染色装置,包括:状态确认模块、确定模块、生成模块以及处理模块;
[0031]所述状态确认模块,用于确认目标数据库处于变更发布状态和日志开启状态;并确认数据传输服务处于对所述目标数据库的变更订阅状态;
[0032]所述确定模块,用于基于预定义的流量协议,确定与发起的第一操作请求对应的流量标识;
[0033]所述生成模块,用于根据所述流量标识和所述第一操作请求生成第二操作请求,将所述第二操作请求传输至所述目标数据库;
[0034]所述处理模块,用于在所述数据传输服务订阅到所述目标数据库基于所述第二操作请求生成的变更后,以从所述目标数据库的日志中获取所述变更事件中的第二操作请求;并基于所述第二操作请求,确定对应的所述流量标识。
[0035]第三个方面,在本实施例中提供了一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时
实现上述第一个方面所述的数据库的流量染色方法。
[0036]第四个方面,在本实施例中提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述第一个方面所述的数据库的流量染色方法。
[0037]与相关技术相比,在本实施例中提供的数据库的流量染色方法、装置、电子装置和存储介质,通过确认目标数据库的日志处于日志开启;并确认数据传输服务处于对目标数据库的变更事件的订阅;基于预定义的流量协议,确定与发起的第一操作请求对应的流量标识;根据流量标识和第一操作请求生成第二操作请求,将第二操作请求传输至目标数据库;在数据传输服务订阅到目标数据库基于第二操作请求生成的变更后,以从目标数据库的日志中获取变更事件中的第二操作请求;并基于第二操作请求,确定对应的流量标识,解决了相关技术中需要增加显示事务,实现复杂程度高,而且需要业务入侵,导致性能损耗严重的问题,在支持数据库作为变更源的场景下,利用第二操作请求对应的日志来透传第二操作请求中的流量标识,从而能够保留流量标识。
[0038]本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
[0039]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0040]图1是本申请一实施例提供的数据库的流量染色系统的结构框图;
[0041]图2是本申请一实施例提供的数据库的流量染色方法的流程图;
[0042]图3是图2中步骤S2本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库的流量染色方法,其特征在于,包括:确认目标数据库的日志处于日志开启;并确认数据传输服务处于对所述目标数据库的变更事件的订阅;基于预定义的流量协议,确定与发起的第一操作请求对应的流量标识;根据所述流量标识和所述第一操作请求生成第二操作请求,将所述第二操作请求传输至所述目标数据库;在所述数据传输服务订阅到所述目标数据库基于所述第二操作请求生成的变更后,以从所述目标数据库的日志中获取所述变更事件中的第二操作请求;并基于所述第二操作请求,确定对应的所述流量标识。2.根据权利要求1所述的数据库的流量染色方法,其特征在于,所述方法还包括:在所述目标数据库中,接收所述第二操作请求,基于所述第二操作请求对所述目标数据库中的目标数据进行变更,得到目标变更数据;且基于所述日志的开启状态,所述目标数据库中的日志自动记录变更事件;所述变更事件包括所述目标变更数据和所述第二操作请求。3.根据权利要求1所述的数据库的流量染色方法,其特征在于,所述预定义的流量协议包括标识格式信息、类型信息、承载信息以及处理策略。4.根据权利要求1至3任一项所述的数据库的流量染色方法,其特征在于,所述根据所述流量标识和所述第一操作请求生成第二操作请求,包括:将所述流量标识拼接到所述第一操作请求的注释中,生成第二操作请求。5.根据权利要求4所述的数据库的流量染色方法,其特征在于,所述基于所述预定义的流量协议,确定与发起的第一操作请求对应的流量标识,包括:发起第一操作请求;获取当前的业务需求;基于所述预定义的流量协议,根据所述业务需求生成与所述第一操作请求对应的流量标识。6.根据权利要求4所述的数据库的流量染色方法,其特征在于,所述基于所述第二操作请求,确定对应的所述流量标识,包括:对所述第二操作请求的注释进行解析,以从所述第二操作请求的注释中解析出所述流量标识。7.根据权利要求1至3任一项所述的数据库的流量染色方...

【专利技术属性】
技术研发人员:项鹏远
申请(专利权)人:杭州有赞科技有限公司
类型:发明
国别省市:

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

1