CN117407377A - 一种用于减少数据冗余的历史数据存储方法及装置 - Google Patents
一种用于减少数据冗余的历史数据存储方法及装置 Download PDFInfo
- Publication number
- CN117407377A CN117407377A CN202311120238.3A CN202311120238A CN117407377A CN 117407377 A CN117407377 A CN 117407377A CN 202311120238 A CN202311120238 A CN 202311120238A CN 117407377 A CN117407377 A CN 117407377A
- Authority
- CN
- China
- Prior art keywords
- data
- history table
- field
- time field
- history
- 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
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000013500 data storage Methods 0.000 title claims abstract description 26
- 230000008859 change Effects 0.000 claims abstract description 54
- 238000013507 mapping Methods 0.000 claims description 8
- 238000012217 deletion Methods 0.000 claims description 4
- 230000037430 deletion Effects 0.000 claims description 4
- 238000013479 data entry Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 230000008901 benefit Effects 0.000 abstract description 4
- 230000008569 process Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000001360 synchronised effect Effects 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/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/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
-
- 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/2358—Change logging, detection, and notification
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2474—Sequence data queries, e.g. querying versioned data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种用于减少数据冗余的历史数据存储方法及装置,涉及数据仓库技术领域,该方法包括以下步骤:创建与源端数据表对应的历史表,并配置对应的开始时间字段以及结束时间字段;采集历史存量数据;基于预设定时任务周期,在历史表中录入历史存量数据中的增量数据,并更新对应的开始时间字段以及结束时间字段;基于开始时间字段以及结束时间字段,查询历史表。本申请利用预设的历史表以及配置用于记录时间的字段,较为便捷的记录数据变化情况,减少未变化数据重复留存历史的数据冗余问题。
Description
技术领域
本申请涉及数据仓库技术领域,具体涉及一种用于减少数据冗余的历史数据存储方法及装置。
背景技术
对于数据仓库领域,保留业务源系统产生的历史数据是必须要做的一项工作,然而目前行业内全量表保留历史数据的方式主要是通过增加业务日期字段创建历史表,然后通过ETL工具定期全量采集业务数据导入历史表。
针对上述历史数据存储方式,不管业务数据是否发生变化,历史表都会按照采集频率定期全量保存一次数据,这样就造成相同的数据被采集留存多次,然而数据仓库对接的源系统以及表数量非常庞大,长此以往,会造成非常严重的数据冗余情况,大大浪费了数据存储空间与服务器资源,同时大量的冗余数据会降低数据查询处理性能。
因此,为应对上述情况,满足工作需求,现提供一种用于减少数据冗余的历史数据存储技术。
发明内容
本申请提供一种用于减少数据冗余的历史数据存储方法及装置,利用预设的历史表以及配置用于记录时间的字段,较为便捷的记录数据变化情况,减少未变化数据重复留存历史的数据冗余问题。
为实现上述目的,本申请提供以下方案。
第一方面,本申请提供了一种用于减少数据冗余的历史数据存储方法,所述方法包括以下步骤:
创建与源端数据表对应的历史表,并配置对应的开始时间字段以及结束时间字段;
采集历史存量数据;
基于预设定时任务周期,在所述历史表中录入所述历史存量数据中的增量数据,并更新对应的所述开始时间字段以及所述结束时间字段;
基于所述开始时间字段以及所述结束时间字段,查询所述历史表。
进一步的,所述创建与源端数据表对应的历史表,并配置对应的开始时间字段以及结束时间字段,包括以下步骤:
根据所述源端数据表的结构,创建对应的所述历史表;
向所述历史表配置对应的开始时间字段以及结束时间字段。
进一步的,所述采集历史存量数据,包括以下步骤:
基于数据源名称、数据源类型、主机IP、数据库名、端口、用户名以及密码,配置数据源连接信息;
根据所述源端数据表与所述历史表之间的字段映射关系,配置数据采集任务,采集所述源端数据表对应的所述历史存量数据;
将所述历史表中的开始时间字段更新为所述历史存量数据对应的业务数据产生时间,结束时间字段更新为默认时间值。
进一步的,所述基于预设定时任务周期,在所述历史表中录入所述历史存量数据中的增量数据,并更新对应的所述开始时间字段以及所述结束时间字段,包括以下步骤:
创建所述源端数据表对应的临时表,配置定时采集周期;
基于所述定时采集周期,定期采集所述源端数据表的源数据至所述临时表;
将所述临时表的数据与所述历史表中结束时间为默认时间值的数据进行主键关联,并逐个字段进行比对,获得字段比对结果;
若所述字段比对结果为新增数据,则将所述字段比对结果对应的所述新增数据录入历史表,将所述开始时间字段更新为所述新增数据对应的业务数据产生时间,所述结束时间字段更新为默认时间值;
若所述字段比对结果为删除数据,则所述历史表在上一所述定时采集周期时导入所述删除数据时的所述结束时间字段更新为所述删除数据对应的数据删除时间;
若所述字段比对结果为变化数据,则所述历史表在上一所述定时采集周期时导入所述变化数据时的所述结束时间字段更新为所述变化数据对应的数据变化时间,并将所述变化数据录入所述历史表,对应的所述开始时间字段更新为所述变化数据对应的数据变化时间,所述结束时间字段更新为默认时间值。
进一步的,基于所述开始时间字段以及所述结束时间字段,查询所述历史表,包括以下步骤:
响应数据查找指令,识别所述数据查找指令中的数据查找时间,比对所述历史表中的所述开始时间字段以及所述结束时间字段,进行数据定位以及数据查询。
第二方面,本申请提供了一种用于减少数据冗余的历史数据存储装置,所述装置包括:
历史表创建模块,其用于创建与源端数据表对应的历史表,并配置对应的开始时间字段以及结束时间字段;
数据采集模块,其用于采集历史存量数据;
历史表更新模块,其用于基于预设定时任务周期,在所述历史表中录入所述历史存量数据中的增量数据,并更新对应的所述开始时间字段以及所述结束时间字段;
数据查询模块,其用于基于所述开始时间字段以及所述结束时间字段,查询所述历史表。
进一步的,所述历史表创建模块还用于根据所述源端数据表的结构,创建对应的所述历史表;
所述历史表创建模块还用于向所述历史表配置对应的开始时间字段以及结束时间字段。
进一步的,所述数据采集模块还用于基于数据源名称、数据源类型、主机IP、数据库名、端口、用户名以及密码,配置数据源连接信息;
所述数据采集模块还用于根据所述源端数据表与所述历史表之间的字段映射关系,配置数据采集任务,采集所述源端数据表对应的所述历史存量数据;
所述数据采集模块还用于将所述历史表中的开始时间字段更新为所述历史存量数据对应的业务数据产生时间,结束时间字段更新为默认时间值。
进一步的,所述历史表更新模块还用于创建所述源端数据表对应的临时表,配置定时采集周期;
所述历史表更新模块还用于基于所述定时采集周期,定期采集所述源端数据表的源数据至所述临时表;
所述历史表更新模块还用于将所述临时表的数据与所述历史表中结束时间为默认时间值的数据进行主键关联,并逐个字段进行比对,获得字段比对结果;
所述历史表更新模块还用于若所述字段比对结果为新增数据,则将所述字段比对结果对应的所述新增数据录入历史表,将所述开始时间字段更新为所述新增数据对应的业务数据产生时间,所述结束时间字段更新为默认时间值;
所述历史表更新模块还用于若所述字段比对结果为删除数据,则所述历史表在上一所述定时采集周期时导入所述删除数据时的所述结束时间字段更新为所述删除数据对应的数据删除时间;
所述历史表更新模块还用于若所述字段比对结果为变化数据,则所述历史表在上一所述定时采集周期时导入所述变化数据时的所述结束时间字段更新为所述变化数据对应的数据变化时间,并将所述变化数据录入所述历史表,对应的所述开始时间字段更新为所述变化数据对应的数据变化时间,所述结束时间字段更新为默认时间值。
进一步的,所述数据查询模块还用于响应数据查找指令,识别所述数据查找指令中的数据查找时间,比对所述历史表中的所述开始时间字段以及所述结束时间字段,进行数据定位以及数据查询。
本申请提供的技术方案带来的有益效果包括:
本申请利用预设的历史表以及配置用于记录时间的字段,较为便捷的记录数据变化情况,减少未变化数据重复留存历史的数据冗余问题。
附图说明
术语解释:
IP:Internet Protocol,网际互连协议。
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中提供的用于减少数据冗余的历史数据存储方法的步骤流程图;
图2为本申请实施例中提供的用于减少数据冗余的历史数据存储方法的原理流程图;
图3为本申请实施例中提供的用于减少数据冗余的历史数据存储方法的步骤3对应的原理流程图;
图4为本申请实施例中提供的用于减少数据冗余的历史数据存储方法的步骤4对应的原理流程图;
图5为本申请实施例中提供的用于减少数据冗余的历史数据存储装置的结构框图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图对本申请的实施例作进一步详细说明。
本申请实施例提供一种用于减少数据冗余的历史数据存储方法及装置,利用预设的历史表以及配置用于记录时间的字段,较为便捷的记录数据变化情况,减少未变化数据重复留存历史的数据冗余问题。
为达到上述技术效果,本申请的总体思路如下:
一种用于减少数据冗余的历史数据存储方法,该方法包括以下步骤:
S1、创建与源端数据表对应的历史表,并配置对应的开始时间字段以及结束时间字段;
S2、采集历史存量数据;
S3、基于预设定时任务周期,在历史表中录入历史存量数据中的增量数据,并更新对应的开始时间字段以及结束时间字段;
S4、基于开始时间字段以及结束时间字段,查询历史表。
以下结合附图对本申请的实施例作进一步详细说明。
第一方面,参见图1~4所示,本申请实施例提供一种用于减少数据冗余的历史数据存储方法,该方法包括以下步骤:
S1、创建与源端数据表对应的历史表,并配置对应的开始时间字段以及结束时间字段;
S2、采集历史存量数据;
S3、基于预设定时任务周期,在历史表中录入历史存量数据中的增量数据,并更新对应的开始时间字段以及结束时间字段;
S4、基于开始时间字段以及结束时间字段,查询历史表。
本申请实施例中,利用预设的历史表以及配置用于记录时间的字段,较为便捷的记录数据变化情况,减少未变化数据重复留存历史的数据冗余问题。
进一步的,所述创建与源端数据表对应的历史表,并配置对应的开始时间字段以及结束时间字段,包括以下步骤:
根据所述源端数据表的结构,创建对应的所述历史表;
向所述历史表配置对应的开始时间字段以及结束时间字段。
进一步的,所述采集历史存量数据,包括以下步骤:
基于数据源名称、数据源类型、主机IP、数据库名、端口、用户名以及密码,配置数据源连接信息;
根据所述源端数据表与所述历史表之间的字段映射关系,配置数据采集任务,采集所述源端数据表对应的所述历史存量数据;
将所述历史表中的开始时间字段更新为所述历史存量数据对应的业务数据产生时间,结束时间字段更新为默认时间值。
进一步的,所述基于预设定时任务周期,在所述历史表中录入所述历史存量数据中的增量数据,并更新对应的所述开始时间字段以及所述结束时间字段,包括以下步骤:
创建所述源端数据表对应的临时表,配置定时采集周期;
基于所述定时采集周期,定期采集所述源端数据表的源数据至所述临时表;
将所述临时表的数据与所述历史表中结束时间为默认时间值的数据进行主键关联,并逐个字段进行比对,获得字段比对结果;
若所述字段比对结果为新增数据,则将所述字段比对结果对应的所述新增数据录入历史表,将所述开始时间字段更新为所述新增数据对应的业务数据产生时间,所述结束时间字段更新为默认时间值;
若所述字段比对结果为删除数据,则所述历史表在上一所述定时采集周期时导入所述删除数据时的所述结束时间字段更新为所述删除数据对应的数据删除时间;
若所述字段比对结果为变化数据,则所述历史表在上一所述定时采集周期时导入所述变化数据时的所述结束时间字段更新为所述变化数据对应的数据变化时间,并将所述变化数据录入所述历史表,对应的所述开始时间字段更新为所述变化数据对应的数据变化时间,所述结束时间字段更新为默认时间值。
进一步的,基于所述开始时间字段以及所述结束时间字段,查询所述历史表,包括以下步骤:
响应数据查找指令,识别所述数据查找指令中的数据查找时间,比对所述历史表中的所述开始时间字段以及所述结束时间字段,进行数据定位以及数据查询。
综上所述,如说明书附图的图2所示,本申请实施例的技术方案的主体流程包括以下步骤:
步骤1,创建历史表;
步骤2,向历史表新增开始时间以及结束时间字段;
步骤3,采集历史存量数据;
步骤4,配置定时任务定期采集增量数据;
步骤5,查询历史表数据。
具体的,步骤1,包括以下步骤:
根据源端数据表的结构,使用数据库客户端工具创建历史表,字段基本与源端数据表保持一致。
具体的,步骤2,包括以下步骤:
使用数据库客户端工具,增加开始时间、结束时间字段。
具体的,如说明书附图的图3所示,步骤3,包括以下步骤:
步骤S300:通过ETL工具,基于数据源名称、数据源类型、主机IP、数据库名、端口、用户名以及密码配置数据源连接信息;
步骤S310:根据源端数据表的字段与历史表的字段映射关系配置数据采集任务,采集存量数据,开始时间、结束时间字段无映射字段暂为空;
步骤S320:通过数据库客户端工具以及SQL语句将历史表中开始时间字段更新为业务数据产生时间,结束时间字段更新为默认值“2099-12-31”。
具体的,如说明书附图的图4所示,步骤4,包括以下步骤:
步骤S400:创建源端数据表对应的临时表,通过ETL调度工具配置定时采集任务,定期采集源数据到临时表;
步骤S410:通过编写SQL脚本,将临时表数据与历史表中结束时间为“2099-12-31”的数据进行主键关联,并逐个字段进行比对,获得比对结果;
步骤S420:比对结果中如果是新增的数据,则将该条数据录入历史表,开始时间更新为业务数据产生时间,结束时间为默认值“2099-12-31”;
步骤S430:比对结果中如果发现数据已经删除,则将历史表中上个采集周期导入的该条数据结束时间更新为数据删除时间;
步骤S440:比对结果中如果发现数据发生变化,则将历史表中上个采集周期导入的该条数据结束时间更新为数据变化时间,同时将新数据录入历史表,开始时间为数据变化时间,结束时间为默认值“2099-12-31”。
具体的,步骤5,包括以下步骤:
需要查询历史某个时间点的数据时,通过编写SQL查询语句,将查询条件设置为开始时间小于等于该时间点,并且结束时间大于该时间点即可。
本申请实施例的技术方案包括以下技术关键点:
第一,创建历史表的特殊方式。在创建历史表时增加开始时间、结束时间字段。
第二,业务数据同步到历史表的方式。通过业务数据与历史表数据的比对,对业务系统中增、删、改的数据使用专利方案描述步骤4中的方式同步到历史表中。
第三,历史数据的查询方式。通过对开始时间与结束时间的筛选,查询历史某个时间点的数据。
本申请实施例的技术方案中,数据仓库在创建业务数据历史表时增加了开始时间、结束时间字段,在后续定期采集增量数据的过程中,通过对各字段信息比对,对增、删、改的数据分别进行不同策略的留存,并且可以通过对开始时间与结束时间的筛选来精准定位查询历史数据;
至少包括以下有益效果:
1)在有效保留历史数据的同时,大大减少了未变化数据重复留存历史的数据冗余问题;
2)历史表数据量的减少,大大提升了数据查询效率;
3)数据仓库整体数据量的较少,有效的释放了数据存储空间与服务器资源,同时带来了节省服务器磁盘硬件投入的经济效益。
第二方面,参见图5所示,基于与方法实施例相同的发明构思,本申请实施例提供一种用于减少数据冗余的历史数据存储装置,该装置包括:
历史表创建模块,其用于创建与源端数据表对应的历史表,并配置对应的开始时间字段以及结束时间字段;
数据采集模块,其用于采集历史存量数据;
历史表更新模块,其用于基于预设定时任务周期,在所述历史表中录入所述历史存量数据中的增量数据,并更新对应的所述开始时间字段以及所述结束时间字段;
数据查询模块,其用于基于所述开始时间字段以及所述结束时间字段,查询所述历史表。
本申请实施例中,利用预设的历史表以及配置用于记录时间的字段,较为便捷的记录数据变化情况,减少未变化数据重复留存历史的数据冗余问题。
进一步的,所述历史表创建模块还用于根据所述源端数据表的结构,创建对应的所述历史表;
所述历史表创建模块还用于向所述历史表配置对应的开始时间字段以及结束时间字段。
进一步的,所述数据采集模块还用于基于数据源名称、数据源类型、主机IP、数据库名、端口、用户名以及密码,配置数据源连接信息;
所述数据采集模块还用于根据所述源端数据表与所述历史表之间的字段映射关系,配置数据采集任务,采集所述源端数据表对应的所述历史存量数据;
所述数据采集模块还用于将所述历史表中的开始时间字段更新为所述历史存量数据对应的业务数据产生时间,结束时间字段更新为默认时间值。
进一步的,所述历史表更新模块还用于创建所述源端数据表对应的临时表,配置定时采集周期;
所述历史表更新模块还用于基于所述定时采集周期,定期采集所述源端数据表的源数据至所述临时表;
所述历史表更新模块还用于将所述临时表的数据与所述历史表中结束时间为默认时间值的数据进行主键关联,并逐个字段进行比对,获得字段比对结果;
所述历史表更新模块还用于若所述字段比对结果为新增数据,则将所述字段比对结果对应的所述新增数据录入历史表,将所述开始时间字段更新为所述新增数据对应的业务数据产生时间,所述结束时间字段更新为默认时间值;
所述历史表更新模块还用于若所述字段比对结果为删除数据,则所述历史表在上一所述定时采集周期时导入所述删除数据时的所述结束时间字段更新为所述删除数据对应的数据删除时间;
所述历史表更新模块还用于若所述字段比对结果为变化数据,则所述历史表在上一所述定时采集周期时导入所述变化数据时的所述结束时间字段更新为所述变化数据对应的数据变化时间,并将所述变化数据录入所述历史表,对应的所述开始时间字段更新为所述变化数据对应的数据变化时间,所述结束时间字段更新为默认时间值。
进一步的,所述数据查询模块还用于响应数据查找指令,识别所述数据查找指令中的数据查找时间,比对所述历史表中的所述开始时间字段以及所述结束时间字段,进行数据定位以及数据查询。
需要说明的是,本申请实施例提供的用于减少数据冗余的历史数据存储装置,其对应的技术问题、技术手段以及技术效果,从原理层面与用于减少数据冗余的历史数据存储方法的原理类似。
需要说明的是,在本申请中,诸如“对比”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上仅是本申请的具体实施方式,使本领域技术人员能够理解或实现本申请。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种用于减少数据冗余的历史数据存储方法,其特征在于,所述方法包括以下步骤:
创建与源端数据表对应的历史表,并配置对应的开始时间字段以及结束时间字段;
采集历史存量数据;
基于预设定时任务周期,在所述历史表中录入所述历史存量数据中的增量数据,并更新对应的所述开始时间字段以及所述结束时间字段;
基于所述开始时间字段以及所述结束时间字段,查询所述历史表。
2.如权利要求1所述的用于减少数据冗余的历史数据存储方法,其特征在于,所述创建与源端数据表对应的历史表,并配置对应的开始时间字段以及结束时间字段,包括以下步骤:
根据所述源端数据表的结构,创建对应的所述历史表;
向所述历史表配置对应的开始时间字段以及结束时间字段。
3.如权利要求1所述的用于减少数据冗余的历史数据存储方法,其特征在于,所述采集历史存量数据,包括以下步骤:
基于数据源名称、数据源类型、主机IP、数据库名、端口、用户名以及密码,配置数据源连接信息;
根据所述源端数据表与所述历史表之间的字段映射关系,配置数据采集任务,采集所述源端数据表对应的所述历史存量数据;
将所述历史表中的开始时间字段更新为所述历史存量数据对应的业务数据产生时间,结束时间字段更新为默认时间值。
4.如权利要求1所述的用于减少数据冗余的历史数据存储方法,其特征在于,所述基于预设定时任务周期,在所述历史表中录入所述历史存量数据中的增量数据,并更新对应的所述开始时间字段以及所述结束时间字段,包括以下步骤:
创建所述源端数据表对应的临时表,配置定时采集周期;
基于所述定时采集周期,定期采集所述源端数据表的源数据至所述临时表;
将所述临时表的数据与所述历史表中结束时间为默认时间值的数据进行主键关联,并逐个字段进行比对,获得字段比对结果;
若所述字段比对结果为新增数据,则将所述字段比对结果对应的所述新增数据录入历史表,将所述开始时间字段更新为所述新增数据对应的业务数据产生时间,所述结束时间字段更新为默认时间值;
若所述字段比对结果为删除数据,则所述历史表在上一所述定时采集周期时导入所述删除数据时的所述结束时间字段更新为所述删除数据对应的数据删除时间;
若所述字段比对结果为变化数据,则所述历史表在上一所述定时采集周期时导入所述变化数据时的所述结束时间字段更新为所述变化数据对应的数据变化时间,并将所述变化数据录入所述历史表,对应的所述开始时间字段更新为所述变化数据对应的数据变化时间,所述结束时间字段更新为默认时间值。
5.如权利要求1所述的用于减少数据冗余的历史数据存储方法,其特征在于,基于所述开始时间字段以及所述结束时间字段,查询所述历史表,包括以下步骤:
响应数据查找指令,识别所述数据查找指令中的数据查找时间,比对所述历史表中的所述开始时间字段以及所述结束时间字段,进行数据定位以及数据查询。
6.一种用于减少数据冗余的历史数据存储装置,其特征在于,所述装置包括:
历史表创建模块,其用于创建与源端数据表对应的历史表,并配置对应的开始时间字段以及结束时间字段;
数据采集模块,其用于采集历史存量数据;
历史表更新模块,其用于基于预设定时任务周期,在所述历史表中录入所述历史存量数据中的增量数据,并更新对应的所述开始时间字段以及所述结束时间字段;
数据查询模块,其用于基于所述开始时间字段以及所述结束时间字段,查询所述历史表。
7.如权利要求6所述的用于减少数据冗余的历史数据存储装置,其特征在于:
所述历史表创建模块还用于根据所述源端数据表的结构,创建对应的所述历史表;
所述历史表创建模块还用于向所述历史表配置对应的开始时间字段以及结束时间字段。
8.如权利要求6所述的用于减少数据冗余的历史数据存储装置,其特征在于:
所述数据采集模块还用于基于数据源名称、数据源类型、主机IP、数据库名、端口、用户名以及密码,配置数据源连接信息;
所述数据采集模块还用于根据所述源端数据表与所述历史表之间的字段映射关系,配置数据采集任务,采集所述源端数据表对应的所述历史存量数据;
所述数据采集模块还用于将所述历史表中的开始时间字段更新为所述历史存量数据对应的业务数据产生时间,结束时间字段更新为默认时间值。
9.如权利要求8所述的用于减少数据冗余的历史数据存储装置,其特征在于:
所述历史表更新模块还用于创建所述源端数据表对应的临时表,配置定时采集周期;
所述历史表更新模块还用于基于所述定时采集周期,定期采集所述源端数据表的源数据至所述临时表;
所述历史表更新模块还用于将所述临时表的数据与所述历史表中结束时间为默认时间值的数据进行主键关联,并逐个字段进行比对,获得字段比对结果;
所述历史表更新模块还用于若所述字段比对结果为新增数据,则将所述字段比对结果对应的所述新增数据录入历史表,将所述开始时间字段更新为所述新增数据对应的业务数据产生时间,所述结束时间字段更新为默认时间值;
所述历史表更新模块还用于若所述字段比对结果为删除数据,则所述历史表在上一所述定时采集周期时导入所述删除数据时的所述结束时间字段更新为所述删除数据对应的数据删除时间;
所述历史表更新模块还用于若所述字段比对结果为变化数据,则所述历史表在上一所述定时采集周期时导入所述变化数据时的所述结束时间字段更新为所述变化数据对应的数据变化时间,并将所述变化数据录入所述历史表,对应的所述开始时间字段更新为所述变化数据对应的数据变化时间,所述结束时间字段更新为默认时间值。
10.如权利要求6所述的用于减少数据冗余的历史数据存储装置,其特征在于:
所述数据查询模块还用于响应数据查找指令,识别所述数据查找指令中的数据查找时间,比对所述历史表中的所述开始时间字段以及所述结束时间字段,进行数据定位以及数据查询。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311120238.3A CN117407377A (zh) | 2023-08-31 | 2023-08-31 | 一种用于减少数据冗余的历史数据存储方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311120238.3A CN117407377A (zh) | 2023-08-31 | 2023-08-31 | 一种用于减少数据冗余的历史数据存储方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117407377A true CN117407377A (zh) | 2024-01-16 |
Family
ID=89496927
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311120238.3A Pending CN117407377A (zh) | 2023-08-31 | 2023-08-31 | 一种用于减少数据冗余的历史数据存储方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117407377A (zh) |
-
2023
- 2023-08-31 CN CN202311120238.3A patent/CN117407377A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111400408B (zh) | 数据同步方法、装置、设备及存储介质 | |
CN101770484B (zh) | 一种网站更新实时发布的方法及系统 | |
CN111459985B (zh) | 标识信息处理方法及装置 | |
CN102129478A (zh) | 数据库同步方法及系统 | |
US20070288515A1 (en) | Method and apparatus for routing data in an automatic identification system | |
CN102654863A (zh) | 一种实时数据库历史数据组织管理方式 | |
CN112286941A (zh) | 一种基于Binlog+HBase+Hive的大数据同步方法和装置 | |
US10990573B2 (en) | Fast index creation system for cloud big data database | |
CN102799651B (zh) | 查询处理装置和查询处理方法 | |
US20160078073A1 (en) | System and method for content storage | |
CN105608126A (zh) | 一种建立海量数据库二级索引的方法和装置 | |
CN106780157B (zh) | 基于Ceph的电网多时态模型存储与管理系统及方法 | |
CN113641651A (zh) | 一种业务数据管理方法、系统及计算机存储介质 | |
CN117407377A (zh) | 一种用于减少数据冗余的历史数据存储方法及装置 | |
CN111414382A (zh) | 一种基于MongoDB的慢SQL聚合展示方法和系统 | |
CN116010359A (zh) | 一种基于日志进行数据存储和查询的方法及系统 | |
US20060230054A1 (en) | On-line organization of data sets | |
CN110413617B (zh) | 一种根据数据量的大小动态调节哈希表组的方法 | |
CN114020719A (zh) | 一种应用于异构数据库的证照数据迁移方法 | |
CN115146003B (zh) | 非侵入式实现数据库增量数据实时同步处理的方法和系统 | |
CN110825800A (zh) | 一种多点异构环境下的业务数据自动传输校验方法 | |
CN110858200B (zh) | 一种记录数据库信息的方法、装置和系统 | |
JPH1173353A (ja) | 時刻指定によるトランザクション検索処理装置 | |
CN117668112A (zh) | 一种数仓数据同步方法、装置、设备、存储介质和产品 | |
CN111881173A (zh) | 一种基于Hive的数据修改方法、装置及存储介质 |
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 |