数据压缩方法和数据查询方法、设备和介质与流程

文档序号:38201222发布日期:2024-06-03 13:53阅读:11来源:国知局
数据压缩方法和数据查询方法、设备和介质与流程

本技术实施例涉及数据存储,特别是涉及一种数据压缩方法和数据查询方法、设备和介质。


背景技术:

1、目前,企业的数据通常达到海量级别,为此每年需要承担高额的数据存储成本。

2、为了降低数据存储成本,目前常用的存储方式为冷存储方式。冷存储方式可以将数据存储在磁带等低价存储介质中。冷存储方式能够较好地起到降低数据存储成本的作用。

3、在实际应用中,若需要访问低价存储介质中的数据,则需要从低价存储介质中读取数据;而从低价存储介质中读取数据往往需要耗费较大的资源开销和时间成本。


技术实现思路

1、本技术实施例提供了一种数据压缩方法,能够降低压缩后数据的访问所耗费的资源开销和时间成本,且能够提高压缩后数据的访问效率。

2、相对应的,本技术实施例还提供了一种数据查询方法、装置、一种电子设备和一种存储介质,用以实现上述方法的实现及应用。

3、为了解决上述问题,本技术实施例公开了一种数据压缩方法,所述方法包括:

4、从数据原表的字段中获取压缩字段和非压缩字段;

5、根据所述数据原表中数据记录中压缩字段的字段内容,确定所述数据记录对应的关键字段的关键字段内容;

6、根据所述数据原表中数据记录、以及对应的关键字段内容,建立数据索引表;所述数据索引表包括:关键字段和非压缩字段;所述数据索引表中数据记录的数量等于所述数据原表中数据记录的数量;

7、根据所述数据原表中数据记录对应的关键字段内容,对所述数据原表中数据记录进行去重处理,以得到数据压缩表;所述数据压缩表包括:关键字段和压缩字段;所述去重处理用于删除关键字段内容对应的重复数据记录。

8、为了解决上述问题,本技术实施例公开了一种数据查询方法,所述方法包括:

9、接收查询请求;

10、根据所述查询请求,对数据索引表和数据压缩表进行查询,以得到对应的查询结果;

11、输出所述查询结果;

12、其中,从数据原表的字段中获取压缩字段和非压缩字段;根据所述数据原表中数据记录中压缩字段的字段内容,确定所述数据记录对应的关键字段的关键字段内容;根据所述数据原表中数据记录、以及对应的关键字段内容,建立数据索引表;所述数据索引表包括:关键字段和非压缩字段;所述数据索引表中数据记录的数量等于所述数据原表中数据记录的数量;根据所述数据原表中数据记录对应的关键字段内容,对所述数据原表中数据记录进行去重处理,以得到数据压缩表;所述数据压缩表包括:关键字段和压缩字段;所述数据压缩表中数据记录的数量等于所述数据原表中数据记录的数量。

13、为了解决上述问题,本技术实施例公开了一种数据压缩装置,所述装置包括:字段获取模块、关键字段内容确定模块、索引表建立模块和压缩表建立模块;

14、其中,字段获取模块,用于从数据原表的字段中获取压缩字段和非压缩字段;

15、关键字段内容确定模块,用于根据所述数据原表中数据记录中压缩字段的字段内容,确定所述数据记录对应的关键字段的关键字段内容;

16、索引表建立模块,用于根据所述数据原表中数据记录、以及对应的关键字段内容,建立数据索引表;所述数据索引表包括:关键字段和非压缩字段;所述数据索引表中数据记录的数量等于所述数据原表中数据记录的数量;

17、压缩表建立模块,用于根据所述数据原表中数据记录对应的关键字段内容,对所述数据原表中数据记录进行去重处理,以得到数据压缩表;所述数据压缩表包括:关键字段和压缩字段;所述去重处理用于删除关键字段内容对应的重复数据记录。

18、可选地,所述字段获取模块,具体用于根据所述数据原表的字段在数据记录中的出现信息、以及字段内容,从数据原表的字段中获取压缩字段。

19、可选地,所述关键字段内容确定模块具体包括:

20、转换模块,用于将所述数据原表中数据记录中压缩字段的字段内容转换为字符串:

21、拼接模块,用于对所述数据原表中数据记录中多个压缩字段的字符串进行拼接,以得到拼接字符串;

22、摘要计算模块,用于对所述拼接字符串进行摘要计算,以得到所述数据记录对应的关键字段的关键字段内容。

23、可选地,所述压缩表建立模块具体包括:

24、保留模块,用于若存在关键字段的关键字段内容相同的多条数据记录,则保留其中的一条数据记录。

25、可选地,所述数据原表包括:多个数据库快照分别对应的数据原表,所述压缩表建立模块具体包括:

26、写入模块,用于将时间在先的第一数据库快照中数据记录包含的压缩字段及其对应的关键字段,写入数据压缩表;

27、快照获取模块,用于按照所述数据库快照的时间从先到后的顺序,获取在所述第一数据库快照之后的第二数据库快照;

28、判断模块,用于根据所述第二数据库快照中数据记录对应的关键字段内容与所述数据压缩表中数据记录对应的关键字段内容之间的匹配度,判断是否将所述第二数据库快照中数据记录包含的压缩字段及其对应的关键字段写入数据压缩表。

29、可选地,所述装置还包括:

30、关联模块,用于对关键字段内容相同的数据索引表和数据压缩表中的数据记录进行关联,以得到关联数据结构。

31、为了解决上述问题,本技术实施例公开了一种数据查询装置,所述装置包括:接收模块、查询模块和输出模块。

32、其中,接收模块,用于接收查询请求;

33、查询模块,用于根据所述查询请求,对数据索引表和数据压缩表进行查询,以得到对应的查询结果;

34、输出模块,用于输出所述查询结果;

35、其中,从数据原表的字段中获取压缩字段和非压缩字段;根据所述数据原表中数据记录中压缩字段的字段内容,确定所述数据记录对应的关键字段的关键字段内容;根据所述数据原表中数据记录、以及对应的关键字段内容,建立数据索引表;所述数据索引表包括:关键字段和非压缩字段;所述数据索引表中数据记录的数量等于所述数据原表中数据记录的数量;根据所述数据原表中数据记录对应的关键字段内容,对所述数据原表中数据记录进行去重处理,以得到数据压缩表;所述数据压缩表包括:关键字段和压缩字段;所述数据压缩表中数据记录的数量等于所述数据原表中数据记录的数量。

36、可选地,所述查询模块具体包括:

37、关联模块,用于对关键字段内容相同的数据索引表和数据压缩表中的数据记录进行关联,以得到关联数据结构;

38、结构查询模块,用于根据所述查询请求,对关联数据结构进行查询,以得到对应的查询结果。

39、可选地,所述关联数据结构包括:对关键字段内容相同的数据索引表和数据压缩表中的数据记录包含的字段进行连接得到的视图;所述查询请求为包含所述视图的查询语句。

40、为了解决上述问题,本技术实施例公开了一种电子设备,包括:处理器;和存储器,其上存储有可执行代码,当所述可执行代码被执行时,使得所述处理器执行如上述实施例中任一项所述的方法。

41、为了解决上述问题,本技术实施例公开了一个或多个机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行如上述实施例中任一项所述的方法。

42、本技术实施例包括以下优点:

43、本技术实施例的技术方案中,将数据原表按照字段解析为数据索引表和数据压缩表。其中,数据索引表能够承载数据原表的全部数据记录,可以避免数据记录的缺失,而数据压缩表能够承载数据原表的压缩字段,并且其去重后的数据记录中包含标识该数据记录的关键字段。由于本技术实施例的数据索引表相对于数据原表减少了压缩字段对应的字段数量,以及本技术实施例的数据压缩表相对于数据原表减少了关键字段内容对应的重复数据记录;因此,本技术实施例能够实现压缩字段所对应重复数据记录的压缩,进而能够降低数据存储成本。

44、并且,在数据索引表能够承载数据原表的全部数据记录、以及数据压缩表能够承载数据原表的压缩字段、且其去重后的数据记录中包含标识该数据记录的关键字段的情况下,由于本技术实施例的数据索引表能够覆盖数据原表的全部数据记录、以及数据压缩表能够覆盖数据原表的压缩字段;这样,本技术实施例的数据索引表和数据压缩表能够覆盖数据原表的信息,访问数据索引表和数据压缩表即可实现针对数据原表的访问;因此,本技术实施例能够降低压缩后数据的访问所耗费的资源开销和时间成本,且能够提高压缩后数据的访问效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1