CN112527833A - 用于拉链表的数据存储方法、设备及计算机可读存储介质 - Google Patents
用于拉链表的数据存储方法、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN112527833A CN112527833A CN202011402719.XA CN202011402719A CN112527833A CN 112527833 A CN112527833 A CN 112527833A CN 202011402719 A CN202011402719 A CN 202011402719A CN 112527833 A CN112527833 A CN 112527833A
- Authority
- CN
- China
- Prior art keywords
- data
- partition
- valid
- determining
- change
- 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 51
- 238000013500 data storage Methods 0.000 title claims abstract description 39
- 238000005192 partition Methods 0.000 claims abstract description 136
- 230000008859 change Effects 0.000 claims abstract description 69
- 230000008569 process Effects 0.000 abstract description 12
- 230000003203 everyday effect Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
Images
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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24554—Unary operations; Data partitioning operations
-
- 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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及大数据技术领域,公开一种用于拉链表的数据存储方法,包括:获取变化数据;根据所述变化数据确定出有效数据和失效数据;将所述有效数据和失效数据进行分区存储。通过对从外部数据源获取到的变化数据进行分析,确定出有效数据和失效数据,通过将有效数据和失效数据进行分区存储,减少了在数据检索的过程中耗费的时间,提高了数据检索的效率。本申请还公开一种用于拉链表的数据存储设备及计算机可读存储介质。
Description
技术领域
本申请涉及大数据技术领域,例如涉及一种用于拉链表的数据存储方法、设备及计算机可读存储介质。
背景技术
随着大数据时代的到来,各大企业往往都需要搭建自身的大数据平台,而基于大数据平台之上的数据仓库是大数据平台下重要的应用之一。在数据仓库的数据架构中,由于外部数据源每日会有数据新增或修改,如果数据仓库对每一条记录都进行存储,会出现大量重复冗余的数据,增加检索数据所需要耗费的时间。在部分数据每天都有更新的情况下,采用每天存储全量数据的方式来记录数据的更新状态和历史,在数据检索的过程中需要耗费大量时间。
在实现本公开实施例的过程中,发现相关技术中至少存在如下问题:现有技术数据检索效率较低。
发明内容
为了对披露的实施例的一些方面有基本的理解,下面给出了简单的概括。所述概括不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围,而是作为后面的详细说明的序言。
本公开实施例提供了一种用于拉链表的数据存储方法、装置及设备,以提高数据检索的效率。
在一些实施例中,所述方法包括:获取变化数据;根据所述变化数据确定出有效数据和失效数据;将所述有效数据和失效数据进行分区存储。
在一些实施例中,根据所述变化数据确定出有效数据,包括:将满足第一预设条件的所述变化数据确定为有效数据。
在一些实施例中,将满足第一预设条件的所述变化数据确定为有效数据,包括:将与当前有效数据分区中的数据不相同,且类型不为删除数据的所述变化数据确定为有效数据。
在一些实施例中,根据所述变化数据确定出失效数据,包括:将满足第二预设条件的所述变化数据确定为失效数据。
在一些实施例中,将满足第二预设条件的所述变化数据确定为失效数据,包括:将与所述变化数据相同的当前有效数据分区中的数据确定为失效数据。
在一些实施例中,将满足第二预设条件的所述变化数据确定为失效数据,包括:将与当前有效数据分区中的数据不相同,且类型为删除数据的所述变化数据确定为失效数据。
在一些实施例中,将所述有效数据和失效数据进行分区存储,包括:将所述有效数据存储在所述拉链表的有效数据分区,将所述失效数据存储在所述拉链表的失效数据分区。
在一些实施例中,将所述有效数据和失效数据进行分区存储,包括:将所述有效数据按照第一预设时间进行存储,将所述失效数据按照第二预设时间进行存储。
在一些实施例中,所述设备包括:处理器和存储有程序指令的存储器,其特征在于,所述处理器被配置为在执行所述程序指令时,执行上述的用于拉链表的数据存储方法。
在一些实施例中,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令设置为执行上述的用于拉链表的数据存储方法。
本公开实施例提供的用于拉链表的数据存储方法、设备及计算机可读存储介质,可以实现以下技术效果:通过对从外部数据源获取到的变化数据进行分析,确定出有效数据和失效数据,通过将有效数据和失效数据进行分区存储,减少了在数据检索的过程中耗费的时间,提高了数据检索的效率。
以上的总体描述和下文中的描述仅是示例性和解释性的,不用于限制本申请。
附图说明
一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件示为类似的元件,附图不构成比例限制,并且其中:
图1是本公开实施例提供的一个用于拉链表的数据存储方法的示意图;
图2是本公开实施例提供的另一个用于拉链表的数据存储方法的示意图;
图3是本公开实施例提供的一个用于拉链表的数据存储的设备的示意图。
具体实施方式
为了能够更加详尽地了解本公开实施例的特点与技术内容,下面结合附图对本公开实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本公开实施例。在以下的技术描述中,为方便解释起见,通过多个细节以提供对所披露实施例的充分理解。然而,在没有这些细节的情况下,一个或多个实施例仍然可以实施。在其它情况下,为简化附图,熟知的结构和装置可以简化展示。
本公开实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开实施例的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
除非另有说明,术语“多个”表示两个或两个以上。
本公开实施例中,字符“/”表示前后对象是一种“或”的关系。例如,A/B表示:A或B。
术语“和/或”是一种描述对象的关联关系,表示可以存在三种关系。例如,A和/或B,表示:A或B,或,A和B这三种关系。
结合图1所示,本公开实施例提供一种用于拉链表的数据存储方法,包括:
步骤S101,从外部数据源获取变化数据;
步骤S102,根据变化数据确定出有效数据和失效数据;
步骤S103,将有效数据和失效数据进行分区存储。
采用本公开实施例提供的用于拉链表的数据存储方法,通过对从外部数据源获取到的变化数据进行分析,确定出有效数据和失效数据,通过将有效数据和失效数据进行分区存储,减少了在数据检索的过程中耗费的时间,提高了数据检索的效率。
可选地,变化数据包括:增量数据和/或删除数据。可选地,通过上游系统来标识记录变化数据,获取增量数据和/或删除数据。可选地,通过字段标识记录增量数据和/或删除数据。
可选地,从外部数据源获取变化数据之前,还包括:从外部数据源获取全量数据;根据全量数据确定出拉链表存储记录的数据内容;根据拉链表存储记录的数据内容构建拉链表的表结构。
在一些实施例中,如表1所示,表1是根据拉链表存储记录的数据内容构建拉链表的表结构的示例表。
字段 | 字段描述 |
id | 主键id |
start_dt | 记录开始日期 |
device_id | 设备id |
pro_no | 型号编号 |
type_cd | 型号分类 |
end_dt | 记录结束日期 |
p_end_date | 分区字段 |
表1
如表1所示,拉链表的数据内容包括id、start_dt、end_dt、p_end_date、device_id、pro_no、type_c等;其中,id为主键id,start_dt为记录开始日期,end_dt为记录结束日期,p_end_date为分区字段,device_id为设备id,pro_no为型号编号,type_c为型号分类。拉链表的表结构包括:主键id、记录开始日期、记录结束日期和分区字段,其中,主键id为业务上的主键,记录开始日期为此记录开始被拉链的日期,记录结束日期为此记录结束被拉链的日期,分区字段为此记录被存储的分区。可选地,分区字段数值和记录结束日期相同。可选地,主键id为设备编号、产品编号、人员编号、商品编号、地区编号、订单编号等;可选地,主键id为由业务上的编号衍生出来的代理编号。可选地,数据按照预设时长进行分区。可选地,预设时长包括:一天、三天、一个月。
可选地,根据变化数据确定出有效数据,包括:将满足第一预设条件的变化数据确定为有效数据。
可选地,将满足第一预设条件的变化数据确定为有效数据,包括:将与当前有效数据分区中的数据不相同,且类型不为删除数据的变化数据确定为有效数据。
可选地,当前有效数据分区中存储截至前日的有效数据。在一些实施例中,在2020年10月30日拉取从外部数据源中获取到的2020年10月29日的变化数据;将2020年10月29日的变化数据与截至2020年10月28日的当前有效数据分区中的数据进行比对,在2020年10月29日的变化数据与截至2020年10月28日的当前有效数据分区中的数据不相同的情况下,将2020年10月29日的变化数据中类型不为删除数据的数据确定为有效数据。
可选地,将当前有效数据分区中与变化数据不相同的数据确定为有效数据。在一些实施例中,在2020年10月30日拉取从外部数据源中获取到的2020年10月29日的变化数据;将2020年10月29日的变化数据与截至2020年10月28日的当前有效数据分区中的数据进行比对,将截至2020年10月28日的当前有效数据分区中与2020年10月29日的变化数据不相同的数据确定为有效数据。
可选地,将上一执行周期的有效数据与本执行周期的变化数据进行比对,确定出本执行周期的有效数据,将本执行周期的有效数据覆盖上一执行周期的有效数据。可选地,本执行周期的有效数据为截至昨日的有效数据,上一执行周期的有效数据为截至前日的有效数据,本执行周期的变化数据为截至昨日的增量数据。可选地,每天确定出截至昨日的有效数据,此后的每一天都将确定截至前一天的有效数据,并覆盖前一天确定的有效数据,从而对有效数据进行更新。例如,在2020年10月31日拉取截至2020年10月29日的有效数据来和截至2020年10月30日的增量数据进行比对,确定出截至2020年10月30日的有效数据,将截至2020年10月30日的有效数据覆盖截至2020年10月29日的有效数据,从而对有效数据进行更新。
这样,通过对从外部数据源获取到的变化数据进行分析,确定出有效数据,根据变化数据确定出有效数据,实现对当前数据存储表中的有效数据分区进行更新,避免存储全量数据对存储空间造成浪费,能够节约分区资源,从而减少对数据存储空间的占用,节省了数据存储空间。
可选地,根据变化数据确定出失效数据,包括:将满足第二预设条件的变化数据确定为失效数据。
可选地,将满足第二预设条件的变化数据确定为失效数据,包括:将与变化数据相同的当前有效数据分区中的数据确定为失效数据。
可选地,当前有效数据分区中存储截至前日的有效数据。在一些实施例中,在2020年10月30日拉取从外部数据源中获取到的2020年10月29日的变化数据;将2020年10月29日的变化数据和截至2020年10月28日的当前有效数据分区中的数据进行比对,将与2020年10月29日的变化数据相同的截至2020年10月28日的当前有效数据分区中的数据确定为失效数据。
可选地,将满足第二预设条件的变化数据确定为失效数据,包括:将与当前有效数据分区中的数据不相同,且类型为删除数据的变化数据确定为失效数据。
在一些实施例中,在2020年10月30日拉取从外部数据源中获取到的2020年10月29日的变化数据;将2020年10月29日的变化数据和截至2020年10月28日的当前有效数据分区中的数据进行比对,在截至2020年10月28日的当前有效数据分区中的数据与2020年10月29日的变化数据不相同的情况下,将2020年10月29日的变化数据中类型为删除数据的变化数据确定为失效数据。
这样,通过对从外部数据源获取到的变化数据进行分析,确定出失效数据,根据变化数据确定出失效数据,实现对当前数据存储表中的有效数据分区进行更新,避免存储全量数据对存储空间造成浪费,能够节约分区资源,从而减少对数据存储空间的占用,节省了数据存储空间。
可选地,将有效数据和失效数据进行分区存储,包括:将有效数据存储在拉链表的有效数据分区,将失效数据存储在拉链表的失效数据分区。
可选地,有效数据分区为“YYYYMM99”分区,将有效数据存储在拉链表的“YYYYMM99”分区中;其中,YYYY表示年份,MM表示月份。例如,在“20201099”分区中存储2020年10月的有效数据。
可选地,失效分区为“YYYYMMDD”分区,将失效数据存储在拉链表的“YYYYMMDD”分区中;其中,YYYY表示年份,MM表示月份,DD表示日期,“YYYYMMDD”为进行数据计算的时间为YYYY年MM月DD日。可选地,在当日的“YYYYMMDD”分区中存储昨日的失效数据。例如,在“20201030”分区中存储2020年10月29日的失效数据,“20201030”为进行数据计算的时间为2020年10月30日。
这样,通过对从外部数据源获取到的变化数据进行分析,确定出有效数据和失效数据,通过将有效数据存储在拉链表的有效数据分区,将失效数据存储在拉链表的失效数据分区,避免存储全量数据对存储空间造成浪费,能够节约分区资源,从而减少对数据存储空间的占用,节省了数据存储空间。
可选地,将有效数据和失效数据进行分区存储,包括:将有效数据按照第一预设时间进行存储,将失效数据按照第二预设时间进行存储。
可选地,一天存储一次失效数据。可选地,每天产生一个失效分区来存储失效数据。可选地,每天产生一个“YYYYMMDD”分区存储昨日的失效数据。例如,在2020年10月30日产生一个失效分区“20201030”分区,在失效分区“20201030”分区中存储2020年10月29日的失效数据,在2020年10月31日产生一个失效分区“20201031”分区,在失效分区“20201031”分区中存储2020年10月30日的失效数据。
可选地,一个月存储一次有效数据。可选地,在每个月的第二天产生一个该月的有效分区,此时该月的有效分区中存储截至该月的第一天的有效数据,此后的每一天都将确定出截至前一天的有效数据,并覆盖前一天确定的有效数据,从而对该月的有效分区进行更新,直至本月结束。可选地,在每个月的第二天产生一个本月的有效分区“YYYYMM99”分区,此时本月的有效分区“YYYYMM99”分区中存储截至该月的第一天的有效数据,此后的每一天都将确定出截至前一天的有效数据,并覆盖前一天确定的有效数据,从而对本月的有效分区“YYYYMM99”分区进行更新,直至本月结束。在一些实施例中,在2020年10月2日产生2020年10月的有效分区“20201099”分区,此时有效分区“20201099”分区中存储截至2020年10月1日的有效数据;在2020年10月3日,在有效分区“20201099”分区存储截至2020年10月2日的有效数据,覆盖之前存储的有效数据,从而对10月的有效分区进行更新,直到2020年11月1日,有效分区“20201099”分区中存储2020年10月的有效数据。
这样,通过对从外部数据源获取到的变化数据进行分析,确定出有效数据和失效数据,按照预设的时间将有效数据存储在拉链表的有效数据分区,将失效数据存储在拉链表的失效数据分区,通过每天产生失效分区,每月产生一个有效分区,极大地减少了分区数量,能够合理地规划分区资源,减少分区资源的浪费,从而减少对数据存储空间的占用,节省了数据存储空间。
在一些实施例中,在2020年10月30日拉取从外部数据源中获取到的2020年10月29日的变化数据;将从外部数据源中获取到2020年10月29日的变化数据和当前有效数据分区中的数据进行比对,确定出有效数据和失效数据,从而对有效数据分区中的数据进行更新。可选地,当前有效数据分区中的数据存储在有效数据分区“20201099”分区中。可选地,使用主键id将变化数据和当前有效数据分区中的数据进行比对。可选地,通过以下方式确定出有效数据和失效数据,包括:将与2020年10月29日的变化数据相同的当前有效数据分区“20201099”分区中的数据确定为失效数据;将与当前有效数据分区“20201099”分区中的数据不相同,且类型为删除数据的变化数据确定为失效数据;将与当前有效数据分区“20201099”分区中的数据不相同,且类型不为删除数据的变化数据确定为有效数据;将与变化数据不相同的当前有效数据分区“20201099”分区中的数据确定为有效数据。将有效数据存储在有效数据分区“20201099”分区中,将失效数据存储在失效数据分区“20201029”分区中。
如表2所示,表2为对当前有效数据分区进行更新后的数据记录的示例表。
表2
这样,通过对从外部数据源获取到的变化数据进行分析,确定出有效数据和失效数据,通过将有效数据和失效数据进行分区存储,能够节约分区资源,从而减少对数据存储空间的占用,节省了数据存储空间。
在一些实施例中,对拉链表进行数据查询。可选地,通过Select*from t where p_end_date=‘20201099’查询最新的有效数据,查询结果如表3所示,表3是表2中查询到的最新的有效数据。
表3
可选地,通过条件p_end_date>‘批量日期’andp_end_date<=‘当月有效分区日期’andstart_dt<=‘批量日期’查询历史某天的数据情况。在一些实施例中,通过Select*fromtwherep_end_date>‘20200901’andp_end_date<=‘20200999’andstart_dt<=‘20200901’查询2020年9月1日的数据,查询结果如表4所示,表4是表2中查询到的2020年9月1日的数据。
表4
这样,通过每天产生失效分区,每月产生一个有效分区,极大地减少了分区数量,在一年为365天的情况下进行计算,总共产生365个失效分区和12个有效分区,极大地节约了分区资源,同时在查询历史某天的数据的情况下,能够直接对当月分区中的数据进行扫描,最多扫描32个分区数据就能查询到历史某天的数据,极大地降低了计算资源的占用减少了在数据检索的过程中耗费的时间,提高了数据检索的效率。通过对从外部数据源获取到的变化数据进行分析,确定出有效数据和失效数据,通过将有效数据和失效数据进行分区存储,既能满足反应数据的历史状态,能够节约分区资源,从而减少对数据存储空间的占用,节省了数据存储空间。
结合图2所示,本公开实施例提供一种用于拉链表的数据存储方法,包括:
步骤S201,从外部数据源获取变化数据。
步骤S202,将满足第一预设条件的变化数据确定为有效数据;将满足第二预设条件的变化数据确定为失效数据。
步骤S203,将有效数据按照第一预设时间存储在拉链表的有效数据分区,将失效数据按照第二预设时间存储在拉链表的失效数据分区。
可选地,将与当前有效数据分区中的数据不相同,且类型不为删除数据的变化数据确定为有效数据。可选地,当前有效数据分区中存储截至前日的有效数据。可选地,将当前有效数据分区中与变化数据不相同的数据确定为有效数据。可选地,一个月存储一次有效数据。可选地,将上一执行周期的有效数据与本执行周期的变化数据进行比对,确定出本执行周期的有效数据,将本执行周期的有效数据覆盖上一执行周期的有效数据。可选地,本执行周期的有效数据为截至昨日的有效数据,上一执行周期的有效数据为截至前日的有效数据,本执行周期的变化数据为截至昨日的增量数据。可选地,每天确定出截至昨日的有效数据,此后的每一天都将确定截至前一天的有效数据,并覆盖前一天确定的有效数据,从而对有效数据进行更新。可选地,一个月存储一次有效数据。可选地,在每个月的第二天产生一个该月的有效分区,此时该月的有效分区中存储截至该月的第一天的有效数据,此后的每一天都将确定出截至前一天的有效数据,并覆盖前一天确定的有效数据,从而对该月的有效分区进行更新,直至本月结束。可选地,在每个月的第二天产生一个本月的有效分区“YYYYMM99”分区,此时本月的有效分区“YYYYMM99”分区中存储截至该月的第一天的有效数据,此后的每一天都将确定出截至前一天的有效数据,并覆盖前一天确定的有效数据,从而对本月的有效分区“YYYYMM99”分区进行更新,直至本月结束。
可选地,将与变化数据相同的当前有效数据分区中的数据确定为失效数据。可选地,将与当前有效数据分区中的数据不相同,且类型为删除数据的变化数据确定为失效数据。可选地,一天存储一次失效数据。可选地,每天产生一个失效分区来存储失效数据。可选地,每天产生一个“YYYYMMDD”分区存储昨日的失效数据。
这样,通过对从外部数据源获取到的变化数据进行分析,确定出有效数据和失效数据,通过将有效数据和失效数据进行分区存储,减少了在数据检索的过程中耗费的时间,提高了数据检索的效率。
结合图3所示,本公开实施例提供一种设备,包括处理器(processor)100和存储有程序指令的存储器(memory)101。可选地,该设备还可以包括通信接口(CommunicationInterface)102和总线103。其中,处理器100、通信接口102、存储器101可以通过总线103完成相互间的通信。通信接口102可以用于信息传输。处理器100可以调用存储器101中的程序指令,以执行上述实施例的用于拉链表的数据存储方法。
此外,上述的存储器101中的程序指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器101作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令/模块。处理器100通过运行存储在存储器101中的程序指令/模块,从而执行功能应用以及数据处理,即实现上述实施例中用于拉链表的数据存储方法。
存储器101可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器101可以包括高速随机存取存储器,还可以包括非易失性存储器。
采用本公开实施例提供的设备,通过对从外部数据源获取到的变化数据进行分析,确定出有效数据和失效数据,通过将有效数据和失效数据进行分区存储,能够节约分区资源,从而减少对数据存储空间的占用,节省了数据存储空间,同时通过对从外部数据源获取到的变化数据进行分析,确定出有效数据和失效数据,通过将有效数据和失效数据进行分区存储,减少了在数据检索的过程中耗费的时间,提高了数据检索的效率。
本公开实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述用于拉链表的数据存储方法。
本公开实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述的用于拉链表的数据存储方法。
上述的计算机可读存储介质可以是暂态计算机可读存储介质,也可以是非暂态计算机可读存储介质。
本公开实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括一个或多个指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开实施例所述方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
采用本公开实施例提供的计算机可读存储介质,通过对从外部数据源获取到的变化数据进行分析,确定出有效数据和失效数据,通过将有效数据和失效数据进行分区存储,能够节约分区资源,从而减少对数据存储空间的占用,节省了数据存储空间。
以上描述和附图充分地示出了本公开的实施例,以使本领域的技术人员能够实践它们。其他实施例可以包括结构的、逻辑的、电气的、过程的以及其他的改变。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施例的部分和特征可以被包括在或替换其他实施例的部分和特征。而且,本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法或者设备中还存在另外的相同要素。本文中,每个实施例重点说明的可以是与其他实施例的不同之处,各个实施例之间相同相似部分可以互相参见。对于实施例公开的方法、产品等而言,如果其与实施例公开的方法部分相对应,那么相关之处可以参见方法部分的描述。
本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,可以取决于技术方案的特定应用和设计约束条件。所述技术人员可以对每个特定的应用来使用不同方法以实现所描述的功能,但是这种实现不应认为超出本公开实施例的范围。所述技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本文所披露的实施例中,所揭露的方法、产品(包括但不限于装置、设备等),可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例。另外,在本公开实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
附图中的流程图和框图显示了根据本公开实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。在附图中的流程图和框图所对应的描述中,不同的方框所对应的操作或步骤也可以以不同于描述中所披露的顺序发生,有时不同的操作或步骤之间不存在特定的顺序。例如,两个连续的操作或步骤实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
Claims (10)
1.一种用于拉链表的数据存储方法,其特征在于,包括:
获取变化数据;
根据所述变化数据确定出有效数据和失效数据;
将所述有效数据和失效数据进行分区存储。
2.根据权利要求1所述的方法,其特征在于,根据所述变化数据确定出有效数据,包括:
将满足第一预设条件的所述变化数据确定为有效数据。
3.根据权利要求2所述的方法,其特征在于,将满足第一预设条件的所述变化数据确定为有效数据,包括:
将与当前有效数据分区中的数据不相同,且类型不为删除数据的所述变化数据确定为有效数据。
4.根据权利要求1所述的方法,其特征在于,根据所述变化数据确定出失效数据,包括:
将满足第二预设条件的所述变化数据确定为失效数据。
5.根据权利要求4所述的方法,其特征在于,将满足第二预设条件的所述变化数据确定为失效数据,包括:
将与所述变化数据相同的当前有效数据分区中的数据确定为失效数据。
6.根据权利要求4所述的方法,其特征在于,将满足第二预设条件的所述变化数据确定为失效数据,包括:
将与当前有效数据分区中的数据不相同,且类型为删除数据的所述变化数据确定为失效数据。
7.根据权利要求1至6任一项所述的方法,其特征在于,将所述有效数据和失效数据进行分区存储,包括:
将所述有效数据存储在拉链表的有效数据分区,将所述失效数据存储在所述拉链表的失效数据分区。
8.根据权利要求1至6任一项所述的方法,其特征在于,将所述有效数据和失效数据进行分区存储,包括:
将所述有效数据按照第一预设时间进行存储,将所述失效数据按照第二预设时间进行存储。
9.一种设备,包括处理器和存储有程序指令的存储器,其特征在于,所述处理器被配置为在执行所述程序指令时,执行如权利要求1至8任一项所述的用于拉链表的数据存储方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令设置为执行如权利要求1至8任一项所述的用于拉链表的数据存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011402719.XA CN112527833A (zh) | 2020-12-04 | 2020-12-04 | 用于拉链表的数据存储方法、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011402719.XA CN112527833A (zh) | 2020-12-04 | 2020-12-04 | 用于拉链表的数据存储方法、设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112527833A true CN112527833A (zh) | 2021-03-19 |
Family
ID=74998332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011402719.XA Pending CN112527833A (zh) | 2020-12-04 | 2020-12-04 | 用于拉链表的数据存储方法、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112527833A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107526733A (zh) * | 2016-06-20 | 2017-12-29 | 咪咕互动娱乐有限公司 | 一种拉链表数据存储方法和装置 |
CN107679136A (zh) * | 2017-09-22 | 2018-02-09 | 上海携程商务有限公司 | 拉链表的存储方法及存储系统 |
CN109299093A (zh) * | 2018-09-17 | 2019-02-01 | 平安科技(深圳)有限公司 | Hive数据库中拉链表的更新方法、装置和计算机设备 |
CN110442578A (zh) * | 2019-07-30 | 2019-11-12 | 新华三大数据技术有限公司 | 拉链表更新方法、装置、服务器及计算机可读存储介质 |
-
2020
- 2020-12-04 CN CN202011402719.XA patent/CN112527833A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107526733A (zh) * | 2016-06-20 | 2017-12-29 | 咪咕互动娱乐有限公司 | 一种拉链表数据存储方法和装置 |
CN107679136A (zh) * | 2017-09-22 | 2018-02-09 | 上海携程商务有限公司 | 拉链表的存储方法及存储系统 |
CN109299093A (zh) * | 2018-09-17 | 2019-02-01 | 平安科技(深圳)有限公司 | Hive数据库中拉链表的更新方法、装置和计算机设备 |
CN110442578A (zh) * | 2019-07-30 | 2019-11-12 | 新华三大数据技术有限公司 | 拉链表更新方法、装置、服务器及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8126854B1 (en) | Using versioning to back up multiple versions of a stored object | |
US7551572B2 (en) | Systems and methods for providing variable protection | |
CN102016789B (zh) | 数据处理装置和处理数据的方法 | |
CN113111129B (zh) | 数据同步方法、装置、设备及存储介质 | |
CN104040481A (zh) | 用于融合、存储和检索增量式备份数据的方法和系统 | |
CN110245149B (zh) | 元数据的版本管理方法及装置 | |
CN110096509A (zh) | 大数据环境下实现历史数据拉链表存储建模处理的系统及方法 | |
CN112506870A (zh) | 数据仓库增量更新方法、装置及计算机设备 | |
CN111708895B (zh) | 一种知识图谱系统的构建方法及装置 | |
CN112948504A (zh) | 数据采集方法、装置、计算机设备和存储介质 | |
CN109522305B (zh) | 一种大数据去重方法及装置 | |
US20070094257A1 (en) | File management | |
CN112766390A (zh) | 用于确定训练样本的方法、装置及设备 | |
CN112527833A (zh) | 用于拉链表的数据存储方法、设备及计算机可读存储介质 | |
CN101065726A (zh) | 在基本系统和移动系统之间基于使用历史的内容交换 | |
JP3666907B2 (ja) | データベース用ファイル格納管理システム | |
CN114996272A (zh) | 用于生成组织结构树的方法、电子设备及可读存储介质 | |
CN113535727B (zh) | 信息系统的数据输出方法及数据输出装置、电子设备 | |
CN113760600B (zh) | 一种数据库备份方法、数据库还原方法和相关装置 | |
CN111898013B (zh) | 一种网站监测的方法及装置 | |
US7958090B2 (en) | Method, system, and computer program product for implementing back up history cleanup operations for a database management system | |
US20020120612A1 (en) | Document management system, document management method, and computer-readable storage medium including the same | |
JP3769775B2 (ja) | 分散リンク情報維持方法 | |
CN106649444B (zh) | 一种cae数据库系统获取cad数据的方法及装置 | |
CN117251448B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210319 |