CN108664503B - 一种数据归档方法及装置 - Google Patents

一种数据归档方法及装置 Download PDF

Info

Publication number
CN108664503B
CN108664503B CN201710201729.9A CN201710201729A CN108664503B CN 108664503 B CN108664503 B CN 108664503B CN 201710201729 A CN201710201729 A CN 201710201729A CN 108664503 B CN108664503 B CN 108664503B
Authority
CN
China
Prior art keywords
data
business
annotation
archiving
history table
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
Application number
CN201710201729.9A
Other languages
English (en)
Other versions
CN108664503A (zh
Inventor
赵明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201710201729.9A priority Critical patent/CN108664503B/zh
Publication of CN108664503A publication Critical patent/CN108664503A/zh
Application granted granted Critical
Publication of CN108664503B publication Critical patent/CN108664503B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种数据归档方法及装置,该方法用于将业务表中已处理完成的数据迁移到历史表中对数据进行实时归档,其中,在接收用户发出的根据业务需求的业务操作请求之后,所述方法执行如下步骤:创建与业务表结构相同的历史表,并在所述业务表的头部添加对所述历史表的数据归档注解;实时监听对包含所述数据归档注解的所述业务表的操作请求,并收集与执行所述业务表的数据操作有关的操作参数;根据收集的所述操作参数生成执行对所述历史表进行数据操作的SQL语句。本发明通过监听注解的方式,拦截器在拦截之后执行数据归档流程,实现通用的数据实时归档方案,通过对业务表运行时数据与历史数据的解耦,提高了业务数据表的读写性能。

Description

一种数据归档方法及装置
技术领域
本发明涉及计算机领域,具体涉及一种数据归档方法及装置。
背景技术
在大型应用系统中,部分业务表的数据量会随着业务发展而逐渐增长,这样就逐渐严重影响业务表的读写效率。由于已处理完成的数据不会再有写的操作请求,而只需满足用户由于具体业务对业务表的查询需求,因此可以将业务表中已处理完成的数据迁移至历史表中。
在现有技术中,对迁移数据进行实时归档是根据业务表的数据量决定对业务表的归档方式,从而实现运行数据与历史数据的分离。具体来说,归档方案为如下两个步骤:
第一步:配置调度计划,定时触发执行数据归档任务;
第二步:在数据归档任务中,实时轮询业务表中满足归档条件的数据,并将读取的数据迁移至历史表中,然后清除业务表中已迁移的数据。
虽然这种方式不仅极大地减少了业务表的数据量,而且能够提高应用系统对业务表的读写效率,给用户带来良好的操作体验,但是在实现本发明过程中,发明人发现现有技术中上述的业务数据归档方法至少存在如下问题:
1.根据业务表中的内容,用户需要定制针对各种不同数据的归档任务,因此该数据归档方法的通用性较差。
2.当业务表变更时,历史表与数据归档任务也需要同时变化,因此对应用系统的维护成本较高。
3.由于需要实时轮询业务表中待归档的数据,因此对应用系统的业务表的读写性能影响较大。
发明内容
有鉴于此,本发明实施例提供一种数据归档方法及装置,能够通过注解声明和监听注解的方式,执行数据归档流程,实现通用的数据实时归档。
为实现上述目的,根据本发明的一个方面,提供了一种数据归档方法,所述方法用于将业务表中已处理完成的数据迁移到历史表中对数据进行实时归档,其中,在接收用户发出的根据业务需求的业务操作请求之后,所述方法执行如下步骤:
创建与业务表结构相同的历史表,并在所述业务表的头部添加对所述历史表的数据归档注解;
实时监听对包含所述数据归档注解的所述业务表的操作请求,并收集与执行所述业务表的数据操作有关的操作参数;
根据收集的所述操作参数生成执行对所述历史表进行数据操作的SQL语句。
可选地,该方法还包括:在所述业务表的头部添加对所述历史表的数据归档注解之后,将操作所述业务表和所述历史表的SQL语句放在同一数据库事务中,当出现执行异常时,放弃执行所述数据库事务。
可选地,所述数据归档注解包括:历史实体注解、数据归档注解;
所述操作参数包括:业务数据副本、命名空间、业务操作类型。
本发明实施例还提供一种数据归档装置,所述装置用于将业务表中已处理完成的数据迁移到历史表中对数据进行实时归档,所述装置包括:
数据注解模块,用于创建与业务表结构相同的历史表,并在所述业务表的头部添加对所述历史表的数据归档注解;
数据采集模块,用于实时监听对包含所述数据归档注解的所述业务表的操作请求,并收集与执行所述业务表的数据操作有关的操作参数;
数据生成模块,用于根据收集的所述操作参数生成执行对所述历史表进行数据操作的SQL语句。
可选地,该装置还包括:事务执行模块,用于将操作所述业务表和所述历史表的SQL语句放在同一数据库事务中,当出现执行异常时,放弃执行所述数据库事务。
可选地,所述数据归档注解包括:历史实体注解、数据归档注解;
所述操作参数包括:业务数据副本、命名空间、业务操作类型。
为实现上述目的,根据本发明实施例的再一方面,提供了一种数据归档的电子设备。
本发明实施例的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一所述的数据归档的方法。
为实现上述目的,根据本发明实施例的再一方面,提供了一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现上述任一所述的数据归档的方法。
上述发明中的一个实施例具有如下优点或有益效果:
本发明通过监听注解的方式,拦截器在拦截之后执行数据归档流程,实现通用的数据实时归档方案,通过对业务表运行时数据与历史数据的解耦,提高了业务数据表的读写性能。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是根据本发明实施例的数据归档方法的流程示意图;
图2是根据本发明实施例的数据归档装置的结构示意图;
图3是根据本发明实施例的数据归档方法的电子设备的硬件结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本领域技术技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本发明可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
如图1所示,为根据本发明实施例的数据归档方法的流程示意图。该方法用于将业务表中已处理完成的数据迁移到历史表中对数据进行实时归档,其中,在接收用户发出的根据业务需求的业务操作请求之后,执行如下步骤:
步骤S101:创建与业务表结构相同的历史表,并在所述业务表的头部添加对所述历史表的数据归档注解;
步骤S102:实时监听对包含所述数据归档注解的所述业务表的操作请求,并收集与执行所述业务表的数据操作有关的操作参数;
步骤S103:根据收集的所述操作参数生成执行对所述历史表进行数据操作的SQL语句。
可选地,该方法还包括:在所述业务表的头部添加对所述历史表的数据归档注解之后,将操作所述业务表和所述历史表的SQL语句放在同一数据库事务中,当出现执行异常时,放弃执行所述数据库事务。
可选地,所述数据归档注解包括:历史实体注解、数据归档注解;
所述操作参数包括:业务数据副本、命名空间、业务操作类型。
实施例
下面结合一个具体实施例对本发明进行具体描述,然而值得注意的是该具体实施例仅是为了更好地描述本发明,并不构成对本发明的不当限定。
首先,在应用系统的需求分析阶段,根据具体的业务场景来决定是否需要归档,然后为需要归档的业务表创建相同结构的历史表。具体来说,通过两个核心注解(如表1历史实体、表2数据归档),在业务实体(业务表的映射)头部添加历史实体(历史表的映射)注解,并且为需要归档的操作方法上添加数据归档注解。
表1
Figure GDA0001462363570000051
Figure GDA0001462363570000061
表2
Figure GDA0001462363570000062
其次,实时监听对包含数据归档注解的业务表的操作请求,并收集与执行业务表的数据操作有关的操作参数。
在本发明的一实施例中,在所述业务表的头部添加对所述历史表的数据归档注解之后,将操作所述业务表和所述历史表的SQL语句放在同一数据库事务中,当出现执行异常时,放弃执行所述数据库事务,从而避免出现脏数据,有效保证业务表与历史表中数据的一致性。
具体来说,当带有数据归档注解的方法接收到业务的对数据库的增删改查的操作请求之后,利用拦截器拦截该操作请求,然后进入数据归档流程,收集与执行业务表的数据操作有关的操作参数,即业务数据副本、命名空间、操作类型。
最后,根据收集的所述操作参数生成执行对所述历史表进行数据操作的SQL语句。
具体来说,收集这三个核心操作参数生成执行历史表数据操作的SQL语句,其中对核心操作参数的搜集方式分别为:业务数据副本:通过方法参数中业务实体参数来生成业务数据副本;命名空间:在历史实体的注解中获取;操作类型:在数据归档注解中获取。
在生成执行历史表数据操作的SQL语句之后,执行该历史表数据操作的SQL语句,退出拦截器并提交关闭事务,返回执行结果。
如图2所示,为根据本发明实施例的数据归档装置的结构示意图,该装置用于将业务表中已处理完成的数据迁移到历史表中对数据进行实时归档,其中,所述装置2包括:
数据注解模块21,用于创建与业务表结构相同的历史表,并在所述业务表的头部添加对所述历史表的数据归档注解;
数据采集模块22,用于实时监听对包含所述数据归档注解的所述业务表的操作请求,并收集与执行所述业务表的数据操作有关的操作参数;
数据生成模块23,用于根据收集的所述操作参数生成执行对所述历史表进行数据操作的SQL语句。
可选地,该装置还包括:事务执行模块24,用于将操作所述业务表和所述历史表的SQL语句放在同一数据库事务中,当出现执行异常时,放弃执行所述数据库事务。
可选地,所述数据归档注解包括:历史实体注解、数据归档注解;
所述操作参数包括:业务数据副本、命名空间、业务操作类型。
由于本发明提供的数据归档装置是上述方法对应的装置,故不在此赘述。
根据本发明的实施例,本发明还提供了一种电子设备和一种可读存储介质。
本发明的电子设备3包括:至少一个处理器31;以及,与所述至少一个处理器31通信连接的存储器32;其中,所述存储器32存储有可被所述一个处理器31执行的指令,所述指令被所述至少一个处理器31执行,以使所述至少一个处理器31执行本发明所提供的数据归档方法。
本发明的非暂态计算机可读存储介质4,所述非暂态计算机可读存储介质4存储计算机指令,所述计算机指令用于使所述计算机执行本发明所提供的数据归档方法。
如图3所示,是根据本发明实施例的数据归档方法的电子设备的硬件结构示意图。如图3,该电子设备3包括:一个或多个处理器31以及存储器32,图3中以一个处理器31为例。其中,存储器32即为本发明所提供的非暂态计算机可读存储介质。
数据归档方法的电子设备还可以包括:输入装置33和输出装置34。处理器31、存储器32、输入装置33和输出装置34可以通过总线或者其他方式连接,图3中以通过总线连接为例。存储器32作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的数据归档方法对应的程序指令/模块。处理器31通过运行存储在存储器32中的非暂态软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的数据归档方法。存储器32可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据数据归档装置的使用所创建的数据等。此外,存储器32可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器32可选包括相对于处理器31远程设置的存储器,这些远程存储器可以通过网络连接至数据归档装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。输入装置33可接收输入的数字或字符信息,以及产生与数据归档装置的用户设置以及功能控制有关的键信号输入。输出装置34可包括显示屏等显示设备。所述一个或者多个模块存储在所述存储器32中,当被所述一个或者多个处理器31执行时,执行上述任意方法实施例中的数据归档方法。
上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。
根据本发明实施例的技术方案通过监听注解的方式,拦截器在拦截之后执行数据归档流程,实现通用的数据实时归档方案,同时,由于取消了调度任务,避免实时轮询对业务表造成的性能影响。通过对业务表运行时数据与历史数据的解耦,提高了业务数据表的读写性能。
另外,由于本发明的技术方案不在需要定制研发数据归档任务,因此还解决了针对不同应用环境下的实现数据归档的通用性问题。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (8)

1.一种数据归档方法,所述方法用于将业务表中已处理完成的数据迁移到历史表中对数据进行实时归档,其特征在于,在接收用户发出的根据业务需求的业务操作请求之后,所述方法执行如下步骤:
创建与业务表结构相同的历史表,并在所述业务表的头部添加对所述历史表的数据核心注解;其中,数据核心注解包括历史实体注解和数据归档注解;历史实体为历史表的映射,历史实体注解用于标明与所述业务表相对应的历史表信息;数据归档注解位于需要归档的操作方法头部,用于标明该方法中的操作需要对业务数据进行归档;
实时监听对包含所述数据核心注解的所述业务表的操作请求,并收集与执行所述业务表的数据操作有关的操作参数;
根据收集的所述操作参数生成执行对所述历史表进行数据操作的SQL语句。
2.根据权利要求1所述的方法,其特征在于,还包括:在所述业务表的头部添加对所述历史表的数据核心注解之后,将操作所述业务表和所述历史表的SQL语句放在同一数据库事务中,当出现执行异常时,放弃执行所述数据库事务。
3.根据权利要求1所述的方法,其特征在于,所述操作参数包括:业务数据副本、命名空间、业务操作类型。
4.一种数据归档装置,所述装置用于将业务表中已处理完成的数据迁移到历史表中对数据进行实时归档,其特征在于,所述装置包括:
数据注解模块,用于创建与业务表结构相同的历史表,并在所述业务表的头部添加对所述历史表的数据核心注解;其中,数据核心注解包括历史实体注解和数据归档注解;历史实体为历史表的映射,历史实体注解用于标明与所述业务表相对应的历史表信息;数据归档注解位于需要归档的操作方法头部,用于标明该方法中的操作需要对业务数据进行归档;数据采集模块,用于实时监听对包含所述数据核心注解的所述业务表的操作请求,并收集与执行所述业务表的数据操作有关的操作参数;
数据生成模块,用于根据收集的所述操作参数生成执行对所述历史表进行数据操作的SQL语句。
5.根据权利要求4所述的装置,其特征在于,还包括:
事务执行模块,用于将操作所述业务表和所述历史表的SQL语句放在同一数据库事务中,当出现执行异常时,放弃执行所述数据库事务。
6.根据权利要求4所述的装置,其特征在于,所述操作参数包括:业务数据副本、命名空间、业务操作类型。
7.一种数据归档的电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-3中任一所述的方法。
8.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-3中任一所述的方法。
CN201710201729.9A 2017-03-30 2017-03-30 一种数据归档方法及装置 Active CN108664503B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710201729.9A CN108664503B (zh) 2017-03-30 2017-03-30 一种数据归档方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710201729.9A CN108664503B (zh) 2017-03-30 2017-03-30 一种数据归档方法及装置

Publications (2)

Publication Number Publication Date
CN108664503A CN108664503A (zh) 2018-10-16
CN108664503B true CN108664503B (zh) 2021-01-26

Family

ID=63786707

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710201729.9A Active CN108664503B (zh) 2017-03-30 2017-03-30 一种数据归档方法及装置

Country Status (1)

Country Link
CN (1) CN108664503B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111143450B (zh) * 2019-12-13 2023-05-30 远光软件股份有限公司 导入数据的方法和装置
CN113448939A (zh) * 2020-03-24 2021-09-28 北京有限元科技有限公司 数据归档存储的方法、装置以及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104462056A (zh) * 2013-09-17 2015-03-25 国际商业机器公司 基于深度文档分析的主动知识指导
CN104536809A (zh) * 2014-11-26 2015-04-22 上海瀚之友信息技术服务有限公司 一种基于客户端、服务器系统的分布式定时任务调度系统
CN104885077A (zh) * 2012-09-28 2015-09-02 甲骨文国际公司 利用归档的关系管理连续查询
CN106126753A (zh) * 2016-08-23 2016-11-16 易联众信息技术股份有限公司 基于大数据的增量抽取的方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7529682B2 (en) * 2002-12-11 2009-05-05 Medversant Technologies, Llc Electronic credentials verification and management system
US9760970B2 (en) * 2015-03-18 2017-09-12 Hitachi, Ltd. Video analysis and post processing of multiple video streams

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104885077A (zh) * 2012-09-28 2015-09-02 甲骨文国际公司 利用归档的关系管理连续查询
CN104462056A (zh) * 2013-09-17 2015-03-25 国际商业机器公司 基于深度文档分析的主动知识指导
CN104536809A (zh) * 2014-11-26 2015-04-22 上海瀚之友信息技术服务有限公司 一种基于客户端、服务器系统的分布式定时任务调度系统
CN106126753A (zh) * 2016-08-23 2016-11-16 易联众信息技术股份有限公司 基于大数据的增量抽取的方法

Also Published As

Publication number Publication date
CN108664503A (zh) 2018-10-16

Similar Documents

Publication Publication Date Title
US10552287B2 (en) Performance metrics for diagnosing causes of poor performing virtual machines
US11442823B2 (en) Transaction consistency query support for replicated data from recovery log to external data stores
US10216582B2 (en) Recovery log analytics with a big data management platform
CN109299073B (zh) 一种数据血缘的生成方法、系统、电子设备和存储介质
CN108536761A (zh) 报表数据查询方法及服务器
US11042503B1 (en) Continuous data protection and restoration
CN111324610A (zh) 一种数据同步的方法及装置
US10614087B2 (en) Data analytics on distributed databases
US11604705B2 (en) System and method for cloning as SQL server AG databases in a hyperconverged system
WO2019161645A1 (zh) 基于Shell的数据表提取方法、终端、设备及存储介质
CN111625552B (zh) 数据收集方法、装置、设备和可读存储介质
US11132362B2 (en) Method and system of optimizing database system, electronic device and storage medium
CN105138679A (zh) 一种基于分布式缓存的数据处理系统及处理方法
CN104317899A (zh) 一种大数据分析与处理系统及访问方法
US20180004797A1 (en) Application resiliency management using a database driver
EP4141687A1 (en) Global secondary index method and apparatus for distributed database
CN108664503B (zh) 一种数据归档方法及装置
CN111221698A (zh) 任务数据采集方法与装置
US9773034B1 (en) Large-scale log index
US9760577B2 (en) Write-behind caching in distributed file systems
Pineda-Morales et al. Managing hot metadata for scientific workflows on multisite clouds
CN110888840A (zh) 分布式文件系统中的文件查询方法、装置、设备及介质
Nieke et al. Analysis of CERN computing infrastructure and monitoring data
CN114064729A (zh) 一种数据检索方法、装置、设备及存储介质
CN112667614A (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
GR01 Patent grant
GR01 Patent grant