CN117827854A - 数据处理方法、装置、电子设备及存储介质 - Google Patents
数据处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117827854A CN117827854A CN202211204177.4A CN202211204177A CN117827854A CN 117827854 A CN117827854 A CN 117827854A CN 202211204177 A CN202211204177 A CN 202211204177A CN 117827854 A CN117827854 A CN 117827854A
- Authority
- CN
- China
- Prior art keywords
- data
- processed
- peripheral system
- notification information
- version
- 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
- 238000003860 storage Methods 0.000 title claims abstract description 58
- 238000003672 processing method Methods 0.000 title claims abstract description 47
- 230000002093 peripheral effect Effects 0.000 claims abstract description 204
- 238000013502 data validation Methods 0.000 claims abstract description 82
- 238000000034 method Methods 0.000 claims abstract description 62
- 238000012545 processing Methods 0.000 claims abstract description 58
- 238000007726 management method Methods 0.000 claims abstract description 27
- 238000013507 mapping Methods 0.000 claims description 73
- 230000000694 effects Effects 0.000 claims description 24
- 238000010200 validation analysis Methods 0.000 claims description 13
- 230000001172 regenerating effect Effects 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 5
- 238000004806 packaging method and process Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000032683 aging Effects 0.000 description 4
- 238000004140 cleaning Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000013138 pruning Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000002688 persistence Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- 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/21—Design, administration or maintenance of databases
-
- 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/21—Design, administration or maintenance of databases
- G06F16/219—Managing data history or versioning
-
- 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/23—Updating
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/275—Synchronous replication
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种数据处理方法、装置、服务器及存储介质,涉及计算机技术领域,解决了目前的数据处理方法无法适用于中台数据的问题,本申请的方法包括:发送数据更新通知信息至外围系统,若确定外围系统已接收待处理数据集合中的所有待处理数据,发送数据生效通知信息至外围系统,若确定外围系统已生效待处理数据集合中的所有待处理数据,将与待处理数据集合对应的数据处理任务状态更新为已生效,本申请便于大数据量的数据处理,确定外围系统已接收完毕所有待处理数据之后再允许任务生效,保证了大批量不同类型数据的原子性生效,且保证了数据的正确性、持久性和完整性;实现数据版本管理,保证了数据的持久性及完整性。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种数据处理方法、装置、电子设备及存储介质。
背景技术
随着技术发展,人们的日常生活逐渐开始使用各种不同的系统以提高生产效率,系统应用过程中,通常会伴随着系统的稳定性、系统的数据安全性、系统的操作灵活性等各种需要优化的问题。
由于数据对于中台的重要性,数据的错误配置会导致生产事故的频繁发生,即会影响客户体验,也会导致企业损收,因此保证数据的正确性、持久性及完整性将是一个亟待解决的重要问题;对于中台数据来说,数据量大且数据种类繁多,同时要保证多个基于英特网(Inetnret)超文本分布式信息系统(World Wide Web,Web)应用中数据的一致性和完整性,现有的数据处理方法解决方案大多只适用于单一类型数据且数据量较小的情况下版本控制,或者是将数据操作日志同步到分布式开源数据库(Hbase)中进行存储,但也只是数据的备份,并不能使其实时进行生效使用,因此现有的数据版本控制方法无法适用于中台数据。
发明内容
本申请提供一种能够保证多个分布式信息系统应用中数据的一致性、完整性、正确性和持久性,并将数据实时在各个服务进行生效的一种数据处理方法、装置、电子设备及存储介质。
一方面,本申请提供一种数据处理方法,应用于中台系统,所述中台系统与外围系统通信连接,所述方法包括:
发送数据更新通知信息至所述外围系统,所述数据更新通知信息用于通知所述外围系统从预设的对象存储介质中接收待处理数据集合中的待处理数据;
若确定所述外围系统已接收所述待处理数据集合中的所有待处理数据,发送所述数据生效通知信息至所述外围系统,所述数据生效通知信息用于通知所述外围系统生效已接收的所有所述待处理数据;
若确定所述外围系统已生效所述待处理数据集合中的所有所述待处理数据,将与所述待处理数据集合对应的数据处理任务状态更新为已生效。
在本申请一种可能的实现方式中,在所述发送数据更新通知信息至所述外围系统之前,所述方法还包括:
配置多个所述待处理数据,得到所述待处理数据集合;
将所述待处理数据集合打包,并将已配置完成的所述待处理数据集合上传至所述对象存储介质中。
在本申请一种可能的实现方式中,所述发送数据更新通知信息至所述外围系统,包括:
发送所述数据更新通知信息至数据更新消息队列,以通过所述数据更新消息队列发送所述数据更新通知信息至所述外围系统。
在本申请一种可能的实现方式中,在所述若确定所述外围系统已接收所述待处理数据集合中的所有待处理数据,发送所述数据生效通知信息至所述外围系统之前,所述方法还包括:
从回调状态消息队列中接收数据已接收信息,其中,当所述外围系统完成所述待处理数据集合中的一个所述待处理数据的接收任务时,所述回调状态消息队列从所述外围系统接收一次所述数据已接收信息;
若所述回调状态消息队列中的所有所述数据已接收信息均接收完毕,则确定所述外围系统已接收所述待处理数据集合中的所有所述待处理数据。
在本申请一种可能的实现方式中,所述若确定所述外围系统已接收所述待处理数据集合中的所有待处理数据,发送所述数据生效通知信息至所述外围系统,包括:
若确定所述外围系统已接收所述待处理数据集合中的所有待处理数据,发送所述数据生效通知信息至数据生效消息队列,以通过所述数据生效消息队列发送所述数据生效通知信息至所述外围系统。
在本申请一种可能的实现方式中,在所述若确定所述外围系统已生效所述待处理数据集合中的所有所述待处理数据,将与所述待处理数据集合对应的数据处理任务状态更新为已生效之前,所述方法还包括:
从所述回调状态消息队列中接收数据已生效信息,其中,当所述外围系统完成所述待处理数据集合中的一个所述待处理数据的生效任务时,所述回调状态消息队列从所述外围系统接收所述数据已生效信息;
若所述回调状态消息队列中的所述数据已生效信息接收完毕,则确定所述外围系统已生效所述待处理数据集合中的所有所述待处理数据。
另一方面,本申请提供一种数据处理方法,应用于外围系统,所述外围系统与中台系统通信连接,所述方法包括:
接收数据更新通知信息;
根据所述数据更新通知信息,从预设的对象存储介质中接收待处理数据集合中的待处理数据;
当所述待处理数据接收完毕时,发送数据已接收信息至所述中台系统;
接收数据生效通知信息;
根据所述接收数据生效通知信息,生效已接收的所有所述待处理数据;
若所述待处理数据集合中的所有所述待处理数据均已生效时,对预设数据库中的数据版本管理表进行更新。
在本申请一种可能的实现方式中,所述数据版本管理表包括版本标识映射表,所述待处理数据包括业务键,所述待处理数据集合包括当前数据版本标识,在所述根据所述数据更新通知信息,从预设的对象存储介质中接收待处理数据集合中的待处理数据之后,所述方法包括:
将所述业务键和所述当前数据版本标识同步保存至所述版本标识映射表。
在本申请一种可能的实现方式中,所述数据版本管理表还包括有效版本标识链表和业务键映射表,所述若所述待处理数据集合中的所有所述待处理数据均已生效时,对预设数据库中的数据版本管理表进行更新,包括:
将已生效的待处理数据集合所对应的所述当前数据版本标识添加至所述有效版本标识链表;
根据所述有效版本标识链表和所述版本标识映射表,生成所述业务键映射表。
在本申请一种可能的实现方式中,所述业务键映射表包括基础数据版本标识,所述方法还包括:
从所述有效版本标识链表中查询得到第一目标历史时间内的第一目标数据,所述第一目标历史时间为最后一次进行数据更新的前N天,N为自然数;
从所述版本标识映射表中匹配得到与所述第一目标数据关联的目标业务键和所述目标业务键的最新版本标识数据;
将所述目标业务键的所述最新版本标识数据作为所述业务键映射表的新的所述基础数据版本标识。
在本申请一种可能的实现方式中,所述方法还包括:
从所述版本标识映射表中查询得到所述第二目标历史时间内的第二目标数据,所述第二目标历史时间为最后一次进行数据更新的前M天,M为自然数;
从所述有效版本标识链表中匹配得到与所述第二目标数据关联的至少一个目标版本标识数据;
过滤至少一个所述目标版本标识数据中处于生效状态的所述目标版本标识数据,得到过滤后的至少一个所述目标版本标识数据;
删除所述版本标识映射表中与过滤后的至少一个所述目标版本标识数据关联的所有数据。
在本申请一种可能的实现方式中,所述方法还包括:
获取历史数据版本切换指令;
根据所述历史数据版本切换指令,删除所述有效版本标识链表中指定版本标识数据,得到删除所述指定版本标识数据后的所述有效版本标识链表;
根据删除所述指定版本标识数据后的所述有效版本标识链表和所述版本标识映射表,重新生成所述业务键映射表。
另一方面,本申请提供一种数据处理装置,应用于中台系统,所述中台系统与外围系统通信连接,所述数据处理装置包括:
更新信息发送模块,用于发送数据更新通知信息至所述外围系统,所述数据更新通知信息用于通知所述外围系统从预设的对象存储介质中接收待处理数据集合中的待处理数据;
生效信息发送模块,用于若确定所述外围系统已接收所述待处理数据集合中的所有待处理数据,发送所述数据生效通知信息至所述外围系统,所述数据生效通知信息用于通知所述外围系统生效已接收的所有所述待处理数据;
任务状态更新模块,用于若确定所述外围系统已生效所述待处理数据集合中的所有所述待处理数据,将与所述待处理数据集合对应的数据处理任务状态更新为已生效。
另一方面,本申请提供一种数据处理装置,应用于外围系统,所述外围系统与中台系统通信连接,所述数据处理装置包括:
更新信息接收模块,用于接收数据更新通知信息;
数据接收模块,用于根据所述数据更新通知信息,从预设的对象存储介质中接收待处理数据集合中的待处理数据;
接收信息发送模块,用于当所述待处理数据接收完毕时,发送数据已接收信息至所述中台系统;
生效信息接收模块,用于接收数据生效通知信息;
数据生效模块,用于根据所述接收数据生效通知信息,生效已接收的所有所述待处理数据;
数据表更新模块,用于若所述待处理数据集合中的所有所述待处理数据均已生效时,对预设数据库中的数据版本管理表进行更新。
本申请通过发送数据更新通知信息至外围系统,数据更新通知信息用于通知外围系统从预设的对象存储介质中接收待处理数据集合中的待处理数据;若确定外围系统已接收待处理数据集合中的所有待处理数据,发送数据生效通知信息至外围系统,数据生效通知信息用于通知外围系统生效已接收的所有待处理数据;若确定外围系统已生效待处理数据集合中的所有待处理数据,将与待处理数据集合对应的数据处理任务状态更新为已生效,即本申请将待处理数据存储于对外提供下载的对象存储介质中,易于扩展与兼容,便于大数据量的数据处理,确定了外围系统已接收完毕所有待处理数据之后再允许任务生效,保证了大批量不同类型数据的原子性生效,且保证了数据的正确性、持久性和完整性;实现了数据版本管理,保留了历史数据,有效的降低了配置过程中带来的风险,保证了中台系统和外围系统数据的持久性及完整性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。数据处理装置
图1是本申请实施例中提供的中台系统的应用场景示意图;
图2是本申请实施例中提供的数据处理系统的应用场景示意图;
图3是本申请实施例中提供的数据处理方法的一个实施例流程示意图;
图4是本申请实施例中提供的数据处理方法的一个实施例流程示意图;
图5是本申请实施例中提供的数据处理方法的一个实施例流程示意图;
图6是本申请实施例中提供的数据处理装置的一个实施例结构示意图;
图7是本申请实施例中提供的数据处理装置的一个实施例结构示意图;
图8是本申请实施例中提供的电子设备的一个实施例结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一、”“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本申请中,“示例性”一词用来表示“用作例子、例证或说明。”本申请中被描述为“示例性”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本发明,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本发明。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本发明的描述变得晦涩。因此,本发明并非旨在限于所示的实施例,而是与符合本申请所公开的原理和特征的最广范围相一致。
中台系统,从字面意思上理解,是位于前台系统和后台系统之间,如图1所示,前台系统可以是多个外围系统,应用过程中,从后台系统将数据流入中台系统,完成海量数据的存储、计算、产品化包装过程,构成企业的核心数据能力,为多个外围系统基于数据的定制化创新和业务中台基于数据反馈的持续演进提供了强大支撑。对于中台系统的数据来说,数据量大且数据种类繁多,同时要保证多个分布式网络应用中数据的一致性和完整性,因此现有的数据处理方法对于中台系统的数据根本无法适用。
为了解决上述问题,本申请实施例提供一种数据处理方法、装置、电子设备及存储介质,以下分别进行详细说明。
本申请实施例数据处理方法的执行主体可以为本申请实施例提供的数据处理装置,或者集成了该数据处理装置的服务器设备、物理主机或者用户设备(User Equipment,UE)等不同类型的电子设备,其中,数据处理装置可以采用硬件或者软件的方式实现,UE具体可以为智能手机、平板电脑、笔记本电脑、掌上电脑、台式电脑或者个人数字助理(Personal Digital Assistant,PDA)等终端设备。
该电子设备可以采用单独运行的工作方式,或者也可以采用设备集群的工作方式。
如图2所示,图2是本申请实施例所提供的数据处理系统的场景示意图。其中,该数据处理系统可以包括用于完成数据处理方法的电子设备200,电子设备200中集成有数据处理装置。例如,该电子设备可以用于发送数据更新通知信息至外围系统,数据更新通知信息用于通知外围系统从预设的对象存储介质中接收待处理数据集合中的待处理数据;若确定外围系统已接收待处理数据集合中的所有待处理数据,发送数据生效通知信息至外围系统,数据生效通知信息用于通知外围系统生效已接收的所有待处理数据;若确定外围系统已生效待处理数据集合中的所有待处理数据,将与待处理数据集合对应的数据处理任务状态更新为已生效。
另外,如图2所示,该数据处理系统还可以包括存储器200,用于存储数据,如存储业务中台相关的业务数据以及其他数据等。
需要说明的是,图2所示的数据处理系统的场景示意图仅仅是一个示例,本申请实施例描述的数据处理系统以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着数据处理系统的演变和新业务场景的出现,本发明实施例提供的技术方案对于类似的技术问题,同样适用。
下面,开始介绍本申请实施例提供的数据处理方法,本申请实施例中以电子设备作为执行主体,为了简化与便于描述,后续方法实施例中将省略该执行主体,该数据处理方法包括:
发送数据更新通知信息至外围系统,数据更新通知信息用于通知外围系统从预设的对象存储介质中接收待处理数据集合中的待处理数据;若确定外围系统已接收待处理数据集合中的所有待处理数据,发送数据生效通知信息至外围系统,数据生效通知信息用于通知外围系统生效已接收的所有待处理数据;若确定外围系统已生效待处理数据集合中的所有待处理数据,将与待处理数据集合对应的数据处理任务状态更新为已生效。
本申请将待处理数据存储于对外提供下载的对象存储介质中,易于扩展与兼容,便于大数据量的数据处理,确定了外围系统已接收完毕所有待处理数据接之后再允许任务生效,保证了大批量不同类型数据的原子性生效,且保证了数据的正确性、持久性和完整性;实现了数据版本管理,保留了历史数据,有效的降低了配置过程中带来的风险,保证了中台系统和外围系统数据的持久性及完整性。
如图3和图4所示,为本申请实施例中数据处理方法的一个实施例流程示意图,图3和图4均是本申请实施例提供的数据处理方法的一种流程示意图。需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。该数据处理方法应用于中台系统,中台系统与外围系统通信连接,具体包括步骤201~203:
201、发送数据更新通知信息至外围系统,数据更新通知信息用于通知外围系统从预设的对象存储介质中接收待处理数据集合中的待处理数据。
待处理数据为需要在外围系统配置和生效的数据;
待处理数据集为同一批次的多个待处理数据构成的合集;
在本实施例中,待处理数据集中的多个待处理数据可以是相同类型的数据,也可以是不同类型的数据,待处理数据集中的待处理数据可以包括各种各样的业务数据,示例性的,待处理数据可以为应用于价格的业务数据,也可以为应用于产品和时效的业务数据等,本实施例对此不做具体限定。
为了实现大量不同类型待处理数据的存储和配置,以及便于多个不同的外围系统同时进行不同类型数据的同步和实时生效,在本实施例中,中台系统将待处理数据集配置生成文件并上传至对象存储介质中,当中台系统通知多个外围系统有数据更新时,通过对象存储介质分别下发对应的文件至多个外围系统。
因此,在本实施例中,在发送数据更新通知信息至外围系统之前,方法还包括:
配置多个待处理数据,得到待处理数据集合;将待处理数据集合打包,并将已配置完成的待处理数据集合上传至对象存储介质中。
配置多个待处理数据,得到待处理数据集合,具体为:
用户可在中台系统创建数据配置任务,根据不同的待处理数据,配置不同的业务键,业务键是用户定义与待处理数据的数据特征,在本实施例中,还可以对相同类型的待处理数据配置相同的业务键,示例性的,对加时数据和服务时间数据配置相同的业务键,因此一个业务键可能包含多个待处理数据,待处理数据的业务键可以根据具体需要进行配置,本实施例对此不做具体限定。
根据需要对多个待处理数据配置其他信息,示例性的,可以根据需要,对多个待处理数据配置数据类型信息和当前配置时间信息等其他信息,最后得到包含多个待处理数据的待处理数据集合,并生成与该待处理数据集合对应的当前数据版本标识,当前数据版本标识即为待处理数据集合的版本号(批次号)。
将待处理数据集合打包,并将已配置完成的待处理数据集合上传至对象存储介质中,具体为:
待处理数据集合对应于多个版本文件,版本文件的格式可以为压缩包,将待处理数据集合打包,并将已配置完成的待处理数据集合上传至对象存储介质中。
即一个新建的数据配置任务内,待处理数据可以视作为一个业务数据表,一张业务数据表作为一个版本文件,即外围系统每更新一次业务数据,则生成一个对应于该业务数据表的版本文件,多个版本文件合并压缩,一个压缩包对应一个当前数据版本标识,每条待处理数据作为protostuff格式写入,在本实施例中,也可以采用其他的配置方式,本实施例对此不做具体限定。对象存储介质在下发待处理数据至外围系统时,每个发送任务对应一个文件,在本实施例中,通过数据分发实体向外围系统分发待处理数据。
在本实施例中,对象存储介质可以为使用对象存储服务技术(Object Stor ageService,OSS)的数据库,其中,OSS是一个分布式的对象存储服务,提供的是一个键值(Key-Value)对形式的对象存储服务,用户可以根据对象(Object)的名称(Key)唯一的获取该Object的内容,在本申请实施例中待处理数据可通过OSS中对象的形式存储,对待处理数据集合设置业务键、当前数据版本标识和数据任务状态,数据任务状态初始为未生效状态,待处理数据的当前数据版本标识即为待处理数据集合的名称(Key)。
在本实施例中,为了同时要保证多个分布式web应用中数据的一致性和完整性,以及不同类型的数据同步及原子性生效,即为了保证中台系统与多个不同外围系统之间不同类型的数据的接收操作均执行成功之后才能进行下一步操作,若其中任意一个数据的接收操作执行不成功,则已经执行的任何操作都必须被撤销,让数据任务状态返回初始状态。本申请中的中台系统和外围系统之间采用消息队列方式进行消息通讯,因此,在本实施例中,发送数据更新通知信息至外围系统,具体包括:
发送数据更新通知信息至数据更新消息队列,以通过数据更新消息队列发送数据更新通知信息至外围系统。
即在本实施例中,由中台系统作为数据更新消息队列的生产者,外围系统作为数据更新消息队列的消费者,通过中台系统发送数据更新通知信息数据更新消息队列,外围系统从数据更新消息队列接收数据更新通知信息,以实现中台系统发送数据更新通知信息至外围系统。
数据更新通知信息可以包含简单的文本字符串,也可以包含复杂的嵌入对象;
具体的,数据更新通知信息的字段可以进行如下配置:
任务类型:产品配置、白名单配置、价格配置、时效配置等;
待处理数据集合的当前数据版本标识;
待处理数据集合信息摘要算法(Message-Digest Algorithm,MD5):加解密使用;
待处理数据集合下载地址;
待处理数据状态:仅发送、立即生效;
待处理数据集合内容:与待处理数据的内容相关的描述;
待处理数据集合数据结构,待处理数据集合数据结构可以配置为:
文件名:表名;
类名:对应的实体名;
待处理数据集合中的所有数据行数:传输的待处理数据行数。
数据更新通知信息也可以配置其他字段,本实施例对此不做具体限定。
数据更新消息队列是在数据更新通知信息的传输过程中保存数据更新消息队列的容器,其主要目的是提供路由并保证消息的传递;数据更新消息队列可以采用Kafka、RabbitMQ或者ActiveMQ中的任意一种,本实施例对此不做具体限定。
202、若确定外围系统已接收待处理数据集合中的所有待处理数据,发送数据生效通知信息至外围系统,数据生效通知信息用于通知外围系统生效已接收的所有待处理数据。
外围系统完成待处理数据的数据接收任务后,会发送数据已接收信息至中台系统,以通知中台系统该外围系统已完成数据接收。
因此,在若确定外围系统已接收待处理数据集合中的所有待处理数据,发送数据生效通知信息至外围系统之前,方法还包括:
从回调状态消息队列中接收数据已接收信息,其中,当外围系统完成待处理数据集合中的一个待处理数据的接收任务时,回调状态消息队列从外围系统接收一次数据已接收信息;
若回调状态消息队列中的所有数据已接收信息均接收完毕,则确定外围系统已接收待处理数据集合中的所有待处理数据。
在本实施例中,由外围系统作为回调状态消息队列的生产者,中台系统作为回调状态消息队列的消费者,外围系统完成待处理数据集合中的一个待处理数据的数据接收任务后,会发送一次数据已接收信息至回调状态消息队列,中台系统作为回调状态消息队列的订阅者,外围系统发送一次数据已接收信息至回调状态消息队列,中台系统则会接收一次回调状态消息队列发送的数据已接收信息,以确定外围系统已完成数据接收。数据已接收信息可以包含简单的文本字符串,也可以包含复杂的嵌入对象;
具体的,数据已接收信息的字段可以进行如下配置:
任务类型:产品配置、白名单配置、价格配置、时效配置等;
待处理数据集合唯一标识;
待处理数据MD5;
待处理数据状态:数据已接收、数据已生效、数据处理异常等。
数据已接收信息也可以配置其他字段,本实施例对此不做具体限定。
在本实施例中,回调状态消息队列可以采用Kafka、RabbitMQ或者Active MQ中的任意一种,本实施例对此不做具体限定。
为了保证中台系统与多个外围系统之间的数据一致性和准确性,在本实施例中,中台系统确定外围系统完成全部数据接收任务后,中台系统才允许各个外围系统生效待处理数据,即若确定外围系统已接收待处理数据集合中的所有待处理数据,发送数据生效通知信息至外围系统。
在本实施例中,若确定外围系统已接收待处理数据集合中的所有待处理数据,发送数据生效通知信息至外围系统,具体包括:
若确定外围系统已接收待处理数据集合中的所有待处理数据,发送数据生效通知信息至数据生效消息队列,以通过数据生效消息队列发送数据生效通知信息至外围系统。
即在本实施例中,由中台系统作为数据生效消息队列的生产者,外围系统作为数据生效消息队列的消费者,通过中台系统发送数据生效通知信息数据生效消息队列,外围系统从数据生效消息队列接收数据生效通知信息,以实现中台系统发送数据生效通知信息至外围系统。
数据生效通知信息可以包含简单的文本字符串,也可以包含复杂的嵌入对象;
具体的,数据生效通知信息的字段可以进行如下配置:
任务类型:产品配置、白名单配置、价格配置、时效配置等;
待处理数据集合的唯一标识;
待处理数据集合信息摘要算法(Message-Digest Algorithm,MD5):加解密使用;
待处理数据集合下载地址;
待处理数据状态:仅发送、立即生效;
待处理数据集合内容:与待处理数据的内容相关的描述;
待处理数据集合数据结构,待处理数据集合数据结构可以配置为:
文件名:表名;
类名:对应的实体名;
待处理数据集合中的所有数据行数:传输的待处理数据行数。
数据生效通知信息也可以配置其他字段,本实施例对此不做具体限定。
数据生效消息队列可以采用Kafka、RabbitMQ或者ActiveMQ中的任意一种,本实施例对此不做具体限定。
203、若确定外围系统已生效待处理数据集合中的所有待处理数据,将与待处理数据集合对应的数据处理任务状态更新为已生效。
外围系统完成待处理数据的数据生效任务后,会发送数据已生效信息至中台系统,以通知中台系统该外围系统已完成数据生效。
因此,在本实施例中,在若确定外围系统已生效待处理数据集合中的所有待处理数据,将与待处理数据集合对应的数据处理任务状态更新为已生效之前,方法还包括:
从回调状态消息队列中接收数据已生效信息,其中,当外围系统完成待处理数据集合中的一个待处理数据的生效任务时,回调状态消息队列从外围系统接收一次数据已生效信息;
中台系统作为回调状态消息队列的订阅者,外围系统发送一次数据已生效信息至回调状态消息队列,中台系统则会接收一次回调状态消息队列发送的数据已生效信息,若回调状态消息队列中的数据已生效信息全部接收完毕,则确定外围系统已生效待处理数据集合中的所有待处理数据。
本步骤中提出的回调状态消息队列与步骤202中提出的回调状态消息队列可以为同一个消息队列,其区别在于,数据已接收信息和数据已生效信息中的待处理数据状态不相同。示例性的,当回调状态消息队列中的待处理数据状态字段为数据已接收,中台系统对回调状态消息队列中的消息进行解耦后,确定外围系统已接收待处理数据,当回调状态消息队列中的待处理数据状态字段为数据已生效,中台系统对回调状态消息队列中的消息进行解耦后,则确定外围系统已生效待处理数据。
在本实施例中,回调状态消息队列也可以为不同的消息队列,本申请对此不做具体限定。
如图4和图5所示,为本申请实施例中数据处理方法的一个实施例流程示意图,图4和图5均是本申请实施例提供的数据处理方法的一种流程示意图。需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。该数据处理方法应用于外围系统,外围系统与中台系统通信连接,具体包括步骤301~306:
301、接收数据更新通知信息;
302、根据数据更新通知信息,从预设的对象存储介质中接收待处理数据集合中的待处理数据;
303、当待处理数据接收完毕时,发送数据已接收信息至中台系统;
304、接收数据生效通知信息;
305、根据接收数据生效通知信息,生效已接收的所有待处理数据。
在本实施例中,由于步骤201~步骤203已经公开了中台系统与外围系统之间通过数据更新消息队列接收和发送数据更新通知信息、通过数据生效消息队列接收和发送数据生效通知信息以及通过回调状态消息队列接收和发送数据已接收信息和数据已生效信息,步骤301~步骤305实际是步骤201~步骤203相对应的步骤,因此,本实施例对此不再赘述。
306、若待处理数据集合中的所有待处理数据均已生效时,对预设数据库中的数据版本管理表进行更新。
当外围系统根据数据生效通知信息生效了接收的所有待处理数据之后,为了保留历史数据,保证系统数据持久性及完整性,以实现数据版本的控制及数据的实时生效,可以在待处理数据集合中的所有待处理数据均已生效时,对预设数据库中的数据版本管理表进行更新。
在本实施例中,数据版本管理表包括有效版本标识链表,为提高数据查询与生效性能,外围系统额外维护两张表,即数据版本管理表还包括版本标识映射表和业务键映射表,其中:
(1)有效版本标识链表:
用于记录基础数据版本标识和当前数据版本标识,基础数据版本标识为外围系统最初配置的初始数据的版本标识;
在待处理数据集合生效时写入数据;
字段包括当前数据版本标识、数据生效时间和数据状态等;
存储于外围系统端的数据库中,其中,外围系统端的数据库可以为使用对象存储服务技术的数据库,也可以是其他免费开源的数据库,本实施例对此不做具体限定;
(2)版本标识映射表:
用于记录当前数据版本标识对应的业务键集合,不记录基础数据版本标识;
在待处理数据集合接收时写入数据;
字段包括对应当前数据版本标识、业务键类型、业务键和数据接收时间等;
存储于外围系统端的数据库中,其中,外围系统端的数据库可以为使用对象存储服务技术的数据库,也可以是其他免费开源的数据库,本实施例对此不做具体限定;
(3)业务键映射表:
由有效版本标识链表和版本标识映射表结合派生得到;
用于记录基础数据版本标识和业务键当前生效的数据版本标识;
在待处理数据集合生效时写入数据;
字段包括业务键、业务键对应的当前数据版本标识和数据生效时间等;
存储于外围系统端的数据库、远程缓存和本地缓存中,待处理数据的当前数据版本标识为远程缓存键第一前缀;其中,外围系统端的数据库可以为使用对象存储服务技术的数据库,也可以是其他免费开源的数据库,本实施例对此不做具体限定;
本地缓存即为外围系统的本地缓存;
远程缓存可以采用远程字典服务器(Remote Dictionary Server,Redis),Redis具有高性能的Key-Value数据库存储机制,以及支持数据持久化,重启数据不丢失、支持分布式部署、支持数据备份等特性,远程缓存也可以采用任意的远程缓存组件,本实施例对此不做具体限定;
在本实施例中,本地缓存和远程缓存的表结构可以如下设置:
p2cache_config(缓存配置表):存放待处理数据刷新规则,如key字段,value字段,刷新频率,过滤条件;
p2cache_key:存放待处理数据集合key值;
p2cache_detail:存放待处理数据集合value值。
应用过程中,当外围系统需要使用当前业务键数据,会先找到其最新的当前数据版本标识,然后通过当前数据版本标识和业务键获取到最新的配置数据,从而实现数据版本的控制及数据的实时生效,进而实现数据的正确性、持久性及完整性,并将数据实时在各个服务进行生效。
下面对“对预设数据库中的数据版本管理表进行更新”的更新方式进行具体介绍。
在本申请的另一个实施例中,在根据数据更新通知信息,从预设的对象存储介质中接收待处理数据集合中的待处理数据之后,方法包括:
将业务键和当前数据版本标识同步保存至版本标识映射表。
具体的,外围系统接收待处理数据成功后,解析待处理数据的业务键与当前数据版本标识的映射关系,并在将该业务键与当前数据版本标识的映射关系保存至版本标识映射表;
同时刷新外围系统的本地缓存以及远程缓存,将待处理数据集合的业务键以及待处理数据的当前数据版本标识同步保存至远程缓存。
在本申请的另一个实施例中,若待处理数据集合中的所有待处理数据均已生效时,对预设数据库中的数据版本管理表进行更新,包括:
将已生效的待处理数据集合所对应的当前数据版本标识添加至有效版本标识链表;根据有效版本标识链表和版本标识映射表,生成业务键映射表。
将已生效的待处理数据集合所对应的当前数据版本标识添加至有效版本标识链表,具体为:
外围系统生效待处理数据成功后,在有效版本标识链表的末位添加待处理数据的当前数据版本标识;
根据有效版本标识链表和版本标识映射表,生成业务键映射表,具体为:
降序遍历有效版本标识链表,得到当前生效的当前数据版本标识;根据当前数据版本标识,匹配版本标识映射表;遍历版本标识映射表,确定业务键;当业务键在预设的业务键映射表中不存在时,将业务键写入业务键映射表,当业务键在预设的业务键映射表不存在时,则不执行任何操作,最终生成业务键映射表;
同时刷新外围系统的本地缓存以及远程缓存,将待处理数据集合的业务键以及待处理数据的当前数据版本标识同步保存至远程缓存。
在本申请的另一个实施例中,刷新外围系统的本地缓存以及远程缓存,具体包括:
在本实施例中,为了简化描述,下文将本地缓存以及远程缓存均称为缓存;
1、生产者定时任务:生产者每10秒查询缓存p2cache_config配置,根据配置查询对应的业务表,将需要刷新的待处理数据,插入到p2cache_key表与p2cache_detail表;2、消费者定时任务:消费者每10秒查询p2cahce_key表与p2cache_detail数据,并刷新到缓存。
在本申请的另一个实施例中,为提升服务性能,实时更新业务键映射表至本地缓存。
实时更新业务键映射表至本地缓存,具体包括:
第一次启动全量:查询数据库获取业务键及对应的当前数据版本标识,将查询得到的业务键及对应的当前数据版本标识存放到本地缓存的业务键映射表;
后续增量:数据分发及缓存刷新完毕时,通知本地更新业务键与当前数据版本标识的映射关系。
在本申请中,为避免保存的当前数据版本标识过多,即为避免缓存脏数据过多导致数据混乱、数据异常以及影响系统性能,外围系统通过定期剪枝的方式以清理脏数据,定期剪枝可以包括:将历史数据版本标识合并为基础数据版本标识、定期清理过期数据版本标识缓存,其中,历史数据版本标识为外围系统每次更新业务数据时在基础数据版本标识上记录的新的数据版本标识,该记录的新的数据版本标识包括当前数据版本标识;在本实施例中,也可以包括其他的数据剪枝方式,本申请对此不做具体限定。
因此,在本申请的另一个实施例中,数据处理方法还包括:将历史数据版本标识合并为基础数据版本标识。
将历史数据版本标识合并为基础数据版本标识,具体为:
从有效版本标识链表中查询得到第一目标历史时间内的第一目标数据;
其中,第一目标历史时间为最后一次进行数据更新的前N天,N为自然数,N的值根据需要进行设置,例如前7天,本实施例对此不做具体限定;
第一目标数据包括有效版本标识链表中处于第一目标历史时间内的所有数据,示例性的,第一目标数据可以包括处于第一目标历史时间内的数据版本标识、数据版本标识的数据生效时间和数据状态等。从版本标识映射表中匹配得到与第一目标数据关联的目标业务键和目标业务键的最新版本标识数据;
将目标业务键的最新版本标识数据作为业务键映射表的新的基础数据版本标识,并刷新业务数据表和缓存。
在本实施例中,需要注意的是,若当业务键映射表已存在新的基础数据版本标识时,则删除已存在的新的基础数据版本标识,并刷新业务数据表和缓存。
在本申请的另一个实施例中,方法还包括:定期清理过期数据版本标识缓存。
定期清理过期数据版本标识缓存,具体为:
从版本标识映射表中查询得到第二目标历史时间内的第二目标数据;
其中,第二目标历史时间为最后一次进行数据更新的前M天,M为自然数,M的值根据需要进行设置,例如前7天,本实施例对此不做具体限定;
第二目标数据包括版本标识映射表中处于第二目标历史时间内的所有数据,示例性的,第二目标数据可以包括处于第二目标历史时间内的数据版本标识、业务键类型、业务键和数据接收时间等。从有效版本标识链表中匹配得到与第二目标数据关联的至少一个目标版本标识数据;
过滤至少一个目标版本标识数据中处于生效状态的目标版本标识数据,得到过滤后的至少一个目标版本标识数据;
删除版本标识映射表中与过滤后的至少一个目标版本标识数据关联的所有数据,并刷新业务数据表和缓存。
在本申请中,执行“将历史数据版本标识合并为基础数据版本标识”和“定期清理过期数据版本标识缓存”的执行间隔时间可以根据实际情况设定,本实施例不做具体限定。
在本申请另一个实施例中,由于外围系统会存在更新了数据之后,又需要回退至历史某个数据版本,为了方便外围系统进行数据版本的切换,数据处理方法还包括:
获取历史数据版本切换指令,历史数据版本切换指令可以是用户发送至执行数据处理方法的装置,也可以是执行数据处理方法的装置定期自动生成历史数据版本切换指令,本实施例对此不做具体限定;
根据历史数据版本切换指令,删除有效版本标识链表中指定版本标识数据,得到删除指定版本标识数据后的有效版本标识链表;
根据删除指定版本标识数据后的有效版本标识链表和版本标识映射表,重新生成业务键映射表。
其中,根据历史数据版本切换指令,删除有效版本标识链表中指定版本标识数据,得到删除指定版本标识数据后的有效版本标识链表,具体为:
在本实施例中,历史数据版本切换指令包括“回退指定版本标识数据指令”和“回退至指定版本标识数据指令”;
若历史数据版本切换指令为“回退指定版本标识数据指令”时,则删除有效版本标识链表中“回退指定版本标识数据指令”要求删除的指定版本标识数据,得到删除指定版本标识数据后的有效版本标识链表,并根据删除了指定版本标识数据后的有效版本标识链表和版本标识映射表,重新生成业务键映射表,并刷新缓存;
若历史数据版本切换指令为“回退至指定版本标识数据指令”时,则删除有效版本标识链表中“回退至指定版本标识数据指令”要求删除的排列于指定版本标识数据之后的所有版本标识数据,并根据删除了排列于指定版本标识数据之后的所有版本标识数据的有效版本标识链表和版本标识映射表,重新生成业务键映射表,并刷新缓存。
通过上述方式更进一步实现了实现数据版本的控制及数据的实时生效,保留了历史数据,有效的降低了配置过程中带来的风险,保证了系统数据持久性及完整性。
在本申请另一个实施例中,为了方便外围系统查询数据,数据处理方法还包括:
根据业务键生成策略,得到业务键值;
根据业务键在版本标识映射表匹配数据版本标识,无匹配结果时,数据版本标识即为基础数据版本标识,通过数据版本标识和业务键来查询缓存。
为了更好实施本申请实施例中数据处理方法,在数据处理方法基础之上,本申请实施例中还提供一种数据处理装置400,应用于中台系统,中台系统与外围系统通信连接,如图6所示,数据处理装置400包括:
更新信息发送模块401,用于发送数据更新通知信息至外围系统,数据更新通知信息用于通知外围系统从预设的对象存储介质中接收待处理数据集合中的待处理数据;
生效信息发送模块402,用于若确定外围系统已接收待处理数据集合中的所有待处理数据,发送数据生效通知信息至外围系统,数据生效通知信息用于通知外围系统生效已接收的所有待处理数据;
任务状态更新模块403,用于若确定外围系统已生效待处理数据集合中的所有待处理数据,将与待处理数据集合对应的数据处理任务状态更新为已生效。
数据处理装置400还包括数据配置模块404,数据配置模块404具体为:
用于配置多个待处理数据,得到待处理数据集合;
用于将待处理数据集合打包,并将已配置完成的待处理数据集合上传至对象存储介质中。
更新信息发送模块401具体为:
用于发送数据更新通知信息至数据更新消息队列,以通过数据更新消息队列发送数据更新通知信息至外围系统。
数据处理装置400还包括数据接收确定模块405,数据接收确定模块405具体为:
用于从回调状态消息队列中接收数据已接收信息,其中,当外围系统完成待处理数据集合中的一个待处理数据的接收任务时,回调状态消息队列从外围系统接收一次数据已接收信息;
用于若回调状态消息队列中的所有数据已接收信息均接收完毕,则确定外围系统已接收待处理数据集合中的所有待处理数据。
生效信息发送模块402具体为:
用于若确定外围系统已接收待处理数据集合中的所有待处理数据,发送数据生效通知信息至数据生效消息队列,以通过数据生效消息队列发送数据生效通知信息至外围系统。
数据处理装置400还包括数据生效确定模块406,数据生效确定模块406具体为:
用于从回调状态消息队列中接收数据已生效信息,其中,当外围系统完成待处理数据集合中的一个待处理数据的生效任务时,回调状态消息队列从外围系统接收数据已生效信息;
用于若回调状态消息队列中的数据已生效信息接收完毕,则确定外围系统已生效待处理数据集合中的所有待处理数据。
为了更好实施本申请实施例中数据处理方法,在数据处理方法基础之上,本申请实施例中还提供一种数据处理装置500,应用于外围系统,外围系统与中台系统通信连接,如图7所示,数据处理装置500包括:
更新信息接收模块501,用于接收数据更新通知信息;
数据接收模块502,用于根据数据更新通知信息,从预设的对象存储介质中接收待处理数据集合中的待处理数据;
接收信息发送模块503,用于当待处理数据接收完毕时,发送数据已接收信息至中台系统;
生效信息接收模块504,用于接收数据生效通知信息;
数据生效模块505,用于根据接收数据生效通知信息,生效已接收的所有待处理数据;
数据表更新模块506,用于若待处理数据集合中的所有待处理数据均已生效时,对预设数据库中的数据版本管理表进行更新。
数据版本管理表包括版本标识映射表,待处理数据包括业务键,待处理数据集合包括当前数据版本标识,数据处理装置还包括同步更新模块507,同步更新模块507具体为:
用于将业务键和当前数据版本标识同步保存至版本标识映射表。
数据版本管理表还包括有效版本标识链表和业务键映射表,数据表更新模块506具体为:
用于将已生效的待处理数据集合所对应的当前数据版本标识添加至有效版本标识链表;
用于根据有效版本标识链表和版本标识映射表,生成业务键映射表。
业务键映射表包括基础数据版本标识,数据表更新模块506还具体为:
用于从有效版本标识链表中查询得到第一目标历史时间内的第一目标数据,第一目标历史时间为最后一次进行数据更新的前N天,N为自然数;
用于从版本标识映射表中匹配得到与第一目标数据关联的目标业务键和目标业务键的最新版本标识数据;
用于将目标业务键的最新版本标识数据作为业务键映射表的新的基础数据版本标识。
数据表更新模块506还具体为:
用于从版本标识映射表中查询得到第二目标历史时间内的第二目标数据,第二目标历史时间为最后一次进行数据更新的前M天,M为自然数;
用于从有效版本标识链表中匹配得到与第二目标数据关联的至少一个目标版本标识数据;
用于过滤至少一个目标版本标识数据中处于生效状态的目标版本标识数据,得到过滤后的至少一个目标版本标识数据;
用于删除版本标识映射表中与过滤后的至少一个目标版本标识数据关联的所有数据。
数据表更新模块506还具体为:
用于获取历史数据版本切换指令;
用于根据历史数据版本切换指令,删除有效版本标识链表中指定版本标识数据,得到删除指定版本标识数据后的有效版本标识链表;
用于根据删除指定版本标识数据后的有效版本标识链表和版本标识映射表,重新生成业务键映射表。
在本申请的另一个实施例中,如图8所示,本申请还提供一种电子设备600,其示出了本申请实施例所涉及电子设备的结构示意图,具体来讲:
该电子设备可以包括一个或者一个以上处理核心的处理器601、一个或一个以上计算机可读存储介质的存储器602、电源603和输入单元604等部件。本领域技术人员可以理解,图8中示出的该电子设备结构并不构成对该电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器601是该电子设备的控制中心,利用各种接口和线路连接整个该电子设备的各个部分,通过运行或执行存储在存储器602内的软件程序和/或模块,以及调用存储在存储器602内的数据,执行该电子设备的各种功能和处理数据,从而对该电子设备进行整体监控。可选的,处理器601可包括一个或多个处理核心;处理器601可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,优选的,处理器601可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器601中。
存储器602可用于存储软件程序以及模块,处理器601通过运行存储在存储器602的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器602可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据该电子设备的使用所创建的数据等。此外,存储器602可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器602还可以包括存储器控制器,以提供处理器601对存储器602的访问。
该电子设备还包括给各个部件供电的电源603,优选的,电源603可以通过电源管理系统与处理器601逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源603还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元604,该输入单元604可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,该电子设备还可以包括显示单元等,在此不再赘述。
具体在本实施例中,该电子设备中的处理器601会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器602中,并由处理器601来运行存储在存储器602中的应用程序,从而实现各种功能,如下:
发送数据更新通知信息至外围系统,数据更新通知信息用于通知外围系统从预设的对象存储介质中接收待处理数据集合中的待处理数据;
若确定外围系统已接收待处理数据集合中的所有待处理数据,发送数据生效通知信息至外围系统,数据生效通知信息用于通知外围系统生效已接收的所有待处理数据;
若确定外围系统已生效待处理数据集合中的所有待处理数据,将与待处理数据集合对应的数据处理任务状态更新为已生效。
具体在本申请另一个本实施例中,该电子设备中的处理器601会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器602中,并由处理器601来运行存储在存储器602中的应用程序,从而实现各种功能,如下:
接收数据更新通知信息;
根据数据更新通知信息,从预设的对象存储介质中接收待处理数据集合中的待处理数据;
当待处理数据接收完毕时,发送数据已接收信息至中台系统;
接收数据生效通知信息;
根据接收数据生效通知信息,生效已接收的所有待处理数据;
若待处理数据集合中的所有待处理数据均已生效时,对预设数据库中的数据版本管理表进行更新。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
在本申请一些实施例中,本申请还提供一种计算机可读存储介质,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random AccessMemory)、磁盘或光盘等。其上存储有计算机程序,计算机程序被处理器进行加载,以执行本申请实施例所提供的数据处理方法中的步骤。例如,计算机程序被处理器进行加载可以执行如下步骤:
发送数据更新通知信息至外围系统,数据更新通知信息用于通知外围系统从预设的对象存储介质中接收待处理数据集合中的待处理数据;
若确定外围系统已接收待处理数据集合中的所有待处理数据,发送数据生效通知信息至外围系统,数据生效通知信息用于通知外围系统生效已接收的所有待处理数据;
若确定外围系统已生效待处理数据集合中的所有待处理数据,将与待处理数据集合对应的数据处理任务状态更新为已生效。
在本申请一些实施例中,计算机程序被处理器进行加载还可以执行如下步骤:
接收数据更新通知信息;
根据数据更新通知信息,从预设的对象存储介质中接收待处理数据集合中的待处理数据;
当待处理数据接收完毕时,发送数据已接收信息至中台系统;
接收数据生效通知信息;
根据接收数据生效通知信息,生效已接收的所有待处理数据;
若待处理数据集合中的所有待处理数据均已生效时,对预设数据库中的数据版本管理表进行更新。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见上文针对其他实施例的详细描述,此处不再赘述。
以上对本申请实施例所提供的一种数据处理方法、装置、电子设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (14)
1.一种数据处理方法,其特征在于,应用于中台系统,所述中台系统与外围系统通信连接,所述方法包括:
发送数据更新通知信息至所述外围系统,所述数据更新通知信息用于通知所述外围系统从预设的对象存储介质中接收待处理数据集合中的待处理数据;
若确定所述外围系统已接收所述待处理数据集合中的所有待处理数据,发送所述数据生效通知信息至所述外围系统,所述数据生效通知信息用于通知所述外围系统生效已接收的所有所述待处理数据;
若确定所述外围系统已生效所述待处理数据集合中的所有所述待处理数据,将与所述待处理数据集合对应的数据处理任务状态更新为已生效。
2.如权利要求1所述的数据处理方法,其特征在于,在所述发送数据更新通知信息至所述外围系统之前,所述方法还包括:
配置多个所述待处理数据,得到所述待处理数据集合;
将所述待处理数据集合打包,并将已配置完成的所述待处理数据集合上传至所述对象存储介质中。
3.如权利要求2所述的数据处理方法,其特征在于,所述发送数据更新通知信息至所述外围系统,包括:
发送所述数据更新通知信息至数据更新消息队列,以通过所述数据更新消息队列发送所述数据更新通知信息至所述外围系统。
4.如权利要求3所述的数据处理方法,其特征在于,在所述若确定所述外围系统已接收所述待处理数据集合中的所有待处理数据,发送所述数据生效通知信息至所述外围系统之前,所述方法还包括:
从回调状态消息队列中接收数据已接收信息,其中,当所述外围系统完成所述待处理数据集合中的一个所述待处理数据的接收任务时,所述回调状态消息队列从所述外围系统接收一次所述数据已接收信息;
若所述回调状态消息队列中的所有所述数据已接收信息均接收完毕,则确定所述外围系统已接收所述待处理数据集合中的所有所述待处理数据。
5.如权利要求4所述的数据处理方法,其特征在于,所述若确定所述外围系统已接收所述待处理数据集合中的所有待处理数据,发送所述数据生效通知信息至所述外围系统,包括:
若确定所述外围系统已接收所述待处理数据集合中的所有待处理数据,发送所述数据生效通知信息至数据生效消息队列,以通过所述数据生效消息队列发送所述数据生效通知信息至所述外围系统。
6.如权利要求5所述的数据处理方法,其特征在于,在所述若确定所述外围系统已生效所述待处理数据集合中的所有所述待处理数据,将与所述待处理数据集合对应的数据处理任务状态更新为已生效之前,所述方法还包括:
从所述回调状态消息队列中接收数据已生效信息,其中,当所述外围系统完成所述待处理数据集合中的一个所述待处理数据的生效任务时,所述回调状态消息队列从所述外围系统接收所述数据已生效信息;
若所述回调状态消息队列中的所述数据已生效信息接收完毕,则确定所述外围系统已生效所述待处理数据集合中的所有所述待处理数据。
7.一种数据处理方法,其特征在于,应用于外围系统,所述外围系统与中台系统通信连接,所述方法包括:
接收数据更新通知信息;
根据所述数据更新通知信息,从预设的对象存储介质中接收待处理数据集合中的待处理数据;
当所述待处理数据接收完毕时,发送数据已接收信息至所述中台系统;
接收数据生效通知信息;
根据所述接收数据生效通知信息,生效已接收的所有所述待处理数据;
若所述待处理数据集合中的所有所述待处理数据均已生效时,对预设数据库中的数据版本管理表进行更新。
8.如权利要求7所述的数据处理方法,其特征在于,所述数据版本管理表包括版本标识映射表,所述待处理数据包括业务键,所述待处理数据集合包括当前数据版本标识,在所述根据所述数据更新通知信息,从预设的对象存储介质中接收待处理数据集合中的待处理数据之后,所述方法包括:
将所述业务键和所述当前数据版本标识同步保存至所述版本标识映射表。
9.如权利要求8所述的数据处理方法,其特征在于,所述数据版本管理表还包括有效版本标识链表和业务键映射表,所述若所述待处理数据集合中的所有所述待处理数据均已生效时,对预设数据库中的数据版本管理表进行更新,包括:
将已生效的待处理数据集合所对应的所述当前数据版本标识添加至所述有效版本标识链表;
根据所述有效版本标识链表和所述版本标识映射表,生成所述业务键映射表。
10.如权利要求9所述的数据处理方法,其特征在于,所述业务键映射表包括基础数据版本标识,所述方法还包括:
从所述有效版本标识链表中查询得到第一目标历史时间内的第一目标数据,所述第一目标历史时间为最后一次进行数据更新的前N天,N为自然数;
从所述版本标识映射表中匹配得到与所述第一目标数据关联的目标业务键和所述目标业务键的最新版本标识数据;
将所述目标业务键的所述最新版本标识数据作为所述业务键映射表的新的所述基础数据版本标识。
11.如权利要求10所述的数据处理方法,其特征在于,所述方法还包括:
从所述版本标识映射表中查询得到所述第二目标历史时间内的第二目标数据,所述第二目标历史时间为最后一次进行数据更新的前M天,M为自然数;
从所述有效版本标识链表中匹配得到与所述第二目标数据关联的至少一个目标版本标识数据;
过滤至少一个所述目标版本标识数据中处于生效状态的所述目标版本标识数据,得到过滤后的至少一个所述目标版本标识数据;
删除所述版本标识映射表中与过滤后的至少一个所述目标版本标识数据关联的所有数据。
12.如权利要求11所述的数据处理方法,其特征在于,所述方法还包括:
获取历史数据版本切换指令;
根据所述历史数据版本切换指令,删除所述有效版本标识链表中指定版本标识数据,得到删除所述指定版本标识数据后的所述有效版本标识链表;
根据删除所述指定版本标识数据后的所述有效版本标识链表和所述版本标识映射表,重新生成所述业务键映射表。
13.一种数据处理装置,其特征在于,应用于中台系统,所述中台系统与外围系统通信连接,所述数据处理装置包括:
更新信息发送模块,用于发送数据更新通知信息至所述外围系统,所述数据更新通知信息用于通知所述外围系统从预设的对象存储介质中接收待处理数据集合中的待处理数据;
生效信息发送模块,用于若确定所述外围系统已接收所述待处理数据集合中的所有待处理数据,发送所述数据生效通知信息至所述外围系统,所述数据生效通知信息用于通知所述外围系统生效已接收的所有所述待处理数据;
任务状态更新模块,用于若确定所述外围系统已生效所述待处理数据集合中的所有所述待处理数据,将与所述待处理数据集合对应的数据处理任务状态更新为已生效。
14.一种数据处理装置,其特征在于,应用于外围系统,所述外围系统与中台系统通信连接,所述数据处理装置包括:
更新信息接收模块,用于接收数据更新通知信息;
数据接收模块,用于根据所述数据更新通知信息,从预设的对象存储介质中接收待处理数据集合中的待处理数据;
接收信息发送模块,用于当所述待处理数据接收完毕时,发送数据已接收信息至所述中台系统;
生效信息接收模块,用于接收数据生效通知信息;
数据生效模块,用于根据所述接收数据生效通知信息,生效已接收的所有所述待处理数据;
数据表更新模块,用于若所述待处理数据集合中的所有所述待处理数据均已生效时,对预设数据库中的数据版本管理表进行更新。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211204177.4A CN117827854A (zh) | 2022-09-29 | 2022-09-29 | 数据处理方法、装置、电子设备及存储介质 |
PCT/CN2023/122758 WO2024067832A1 (zh) | 2022-09-29 | 2023-09-28 | 数据处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211204177.4A CN117827854A (zh) | 2022-09-29 | 2022-09-29 | 数据处理方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117827854A true CN117827854A (zh) | 2024-04-05 |
Family
ID=90476389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211204177.4A Pending CN117827854A (zh) | 2022-09-29 | 2022-09-29 | 数据处理方法、装置、电子设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117827854A (zh) |
WO (1) | WO2024067832A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118132120B (zh) * | 2024-05-07 | 2024-07-02 | 成都赛力斯科技有限公司 | 一种业务系统的更新方法及装置、电子设备、存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10402252B1 (en) * | 2016-03-30 | 2019-09-03 | Amazon Technologies, Inc. | Alternative event reporting for peripheral devices |
CN110766310A (zh) * | 2019-10-18 | 2020-02-07 | 北京思特奇信息技术股份有限公司 | 一种智慧运营中台 |
CN114661289A (zh) * | 2022-04-02 | 2022-06-24 | 深圳易伙科技有限责任公司 | 一种基于知识和数据驱动的微应用开发系统和方法 |
CN114969071A (zh) * | 2022-06-06 | 2022-08-30 | 中国银行股份有限公司 | 一种数据更新方法及装置 |
-
2022
- 2022-09-29 CN CN202211204177.4A patent/CN117827854A/zh active Pending
-
2023
- 2023-09-28 WO PCT/CN2023/122758 patent/WO2024067832A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024067832A1 (zh) | 2024-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11016944B2 (en) | Transferring objects between different storage devices based on timestamps | |
CN102779185B (zh) | 一种高可用分布式全文索引方法 | |
CN101404665B (zh) | 用于数据处理的方法和装置 | |
CN111143382B (zh) | 数据处理方法、系统和计算机可读存储介质 | |
US7734585B2 (en) | Updateable fan-out replication with reconfigurable master association | |
CN109493076A (zh) | 一种Kafka消息唯一消费方法、系统、服务器及存储介质 | |
US20110265071A1 (en) | Apparatus and Method for Loading and Updating Codes of Cluster-Based Java Application System | |
CN103631868B (zh) | 一种兼容关系数据库的数据管理系统 | |
CN104715001A (zh) | 用于对数据处理系统的集群中的共享资源执行写入操作的方法和系统 | |
CN102682052A (zh) | 过滤数据存储上的查询数据 | |
CN111881223B (zh) | 数据管理方法、设备、系统及存储介质 | |
CN105283847A (zh) | 本地存储数据版本控制 | |
KR20150111952A (ko) | 계층적 데이터 구조의 노드 상에서 재귀적 이벤트 리스너를 사용하기 위한 방법 및 시스템 | |
CN111930706B (zh) | 基于远程调用的分布式网络文件存储系统和方法 | |
CN101562804A (zh) | 一种基于移动p2p的区域管理服务器系统及其调度方法 | |
CN104838379A (zh) | 数据库同步 | |
US11288237B2 (en) | Distributed file system with thin arbiter node | |
CN115185705A (zh) | 一种消息通知方法、装置、介质及设备 | |
CN112084206A (zh) | 数据库的事务请求处理方法、相关设备及存储介质 | |
CN111131079A (zh) | 一种策略查询方法及装置 | |
WO2024067832A1 (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN113014618A (zh) | 消息处理方法、系统和电子设备 | |
CN116701413A (zh) | 主数据处理方法及装置 | |
CN112115206A (zh) | 一种处理对象存储元数据的方法和装置 | |
CN115630122A (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 |