一种多维数据存储方法及装置制造方法及图纸

技术编号:28035040 阅读:23 留言:0更新日期:2021-04-09 23:17
本公开实施例公开了多维数据存储方法及装置,包括将多维数据中所有第一维度的成员确定为行索引,得到数据表的行坐标,包括定义所述第一维度所有成员对应的一个行索引键,以及定义所述第一维度所有成员的行索引值,将多维数据中剩余多个维度中每一个维度的成员确定为列索引,得到数据表的列坐标,包括定义剩余N个维度中每一个维度下的所有成员对应的一个列索引键,得到N个列索引键的集合,以及定义剩余维度中每一个维度的每一个成员的列索引值。可灵活适应多维度组合,无需按照特定的主键顺序对数据进行排列解决了现有技术中配置过程繁琐的技术问题。

【技术实现步骤摘要】
一种多维数据存储方法及装置
本公开涉及数据存储
,具体涉及到一种多维数据的存储方法及装置。
技术介绍
维,观察数据的特定角度,分析数据时一类属性,属性集合构成一个维,例如,如数据的时间维、数据的地理维等。维的成员,维的一个取值,是数据项在某维中位置的描述。例如,某年某月某日是时间维上位置的描述。存储多维度数据主要是通过对所有计算维度进行冗余,不断横向扩展关系型数据库中的字段来实现。采用这种方式会产生大量的冗余数据,每增加一个计算维度,数据量将程指数级上涨,并且需要额外的配置信息对目标数据所用到的维度进行存储。还通过按顺序嵌套组合不同维度主键来定位多维数据。采用这种方式由于其按顺序对维度主键进行优化整合,读取数据的时候也必须按照主键顺序来进行,因此同样需要额外的配置信息对目标数据等用到的维度进行存储。
技术实现思路
本公开的主要目的在于提供一种多维数据存储方法,以解决数据存储配置繁琐问题。为了实现上述目的,根据本公开的第一方面,提供了一种多维数据存储方法,包括:将多维数据中所有第一维度的成员确定为行索引,得到数据表的行坐标,包括:定义所述第一维度所有成员对应的一个行索引键,以及定义所述第一维度所有成员的行索引值,其中,所述行索引值被定义为第一一维数组;将多维数据中剩余多个维度中每一个维度的成员确定为列索引,得到数据表的列坐标,包括:定义剩余N个维度中每一个维度下的所有成员对应的一个列索引键,得到N个列索引键的集合,以及定义剩余维度中每一个维度的每一个成员的列索引值,其中,剩余维度中每一个维度的每一个成员的列索引值被定义为第二一维数组;基于所述数据表中的行坐标和所述数据表的列坐标,将目标数据进行对应存储。可选地,在将多维数据中所有第一维度成员确定为行索引,得到数据表的行坐标之前,所述方法还包括:比较多维数据中每个维度成员的数量的大小;将数量最多的成员所对应的维度确定为所述第一维度。可选地,将多维数据中剩余多个维度中每一个维度的成员确定为列索引包括:定义第二维度的成员的列索引键,得到第二维度的所有成员对应的一个第一列索引键;定义第三维度的成员的列索引键,得到第三维度的所有成员对应的一个第二列索引键;定义第二维度的每一个成员的第一列索引值,其中,所述每一个成员的第一列索引值被定义为第三一维数组,所述第三一维数组中的元素为数据表中的列坐标;定义第二维度的每一个成员的第一列索引值,其中,所述第二维度的每一个成员的第一列索引值被定义为第三一维数组;定义第三维度的每一个成员的第二列索引值,其中,所述第三维度的每一个成员的第一列索引值被定义为第四一维数组。可选地,基于所述数据表中的行坐标和所述数据表的列坐标,将目标数据进行对应存储包括:获取所述目标数据对应的第一维度成员信息和剩余维度成员信息;基于所述第一维度成员信息确定目标数据在数据表中的行坐标;基于所述剩余维度成员信息确定目标数据在数据表中的列坐标;基于所述数据表中的行坐标和所述数据表中的列坐标,将所述目标数据定义为二维数组。根据本公开的第二方面,提供了一种多维数据存储装置,包括:第一确定单元,将多维数据中所有第一维度的成员确定为行索引,得到数据表的行坐标,包括:定义所述第一维度所有成员对应的一个行索引键,以及定义所述第一维度所有成员的行索引值,其中,所述行索引值被定义为第一一维数组;第二确定单元,将多维数据中剩余多个维度中每一个维度的成员确定为列索引,得到数据表的列坐标,包括:定义剩余N个维度中每一个维度下的所有成员对应的一个列索引键,得到N个列索引键的集合,以及定义剩余维度中每一个维度的每一个成员的列索引值,其中,剩余维度中每一个维度的每一个成员的列索引值被定义为第二一维数组;存储单元,基于所述数据表中的行坐标和所述数据表的列坐标,将目标数据进行对应存储。可选地,装置还包括:比较单元,比较多维数据中每个维度成员的数量的大小;第三确定单元,将数量最多的成员所对应的维度确定为所述第一维度。可选地,第二确定单元包括:第一定义模块,定义第二维度的成员的列索引键,得到第二维度的所有成员对应的一个第一列索引键;第二定义模块,定义第三维度的成员的列索引键,得到第三维度的所有成员对应的一个第二列索引键;第三定义模块,定义第二维度的每一个成员的第一列索引值,其中,所述每一个成员的第一列索引值被定义为第三一维数组,所述第三一维数组中的元素为数据表中的列坐标;第四定义模块,定义第二维度的每一个成员的第一列索引值,其中,所述第二维度的每一个成员的第一列索引值被定义为第三一维数组;第五定义模块定义第三维度的每一个成员的第二列索引值,其中,所述第三维度的每一个成员的第一列索引值被定义为第四一维数组。可选地,存储单元进一步被配置成包括:获取模块,获取所述目标数据对应的第一维度成员信息和剩余维度成员信息;第一确定模块,基于所述第一维度成员信息确定目标数据在数据表中的行坐标;第二确定模块,基于所述剩余维度成员信息确定目标数据在数据表中的列坐标;第六定义模块,基于所述数据表中的行坐标和所述数据表中的列坐标,将所述目标数据定义为二维数组。根据本公开的第三方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,所述计算机指令用于使所述计算机执行第一方面任意一项实施例所述的多维数据存储方法。根据本公开的第四方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器执行第一方面任意一项实施例所述的多维数据存储方法。本公开实施例多维数据存储方法,包括将多维数据中所有第一维度的成员确定为行索引,得到数据表的行坐标,包括定义所述第一维度所有成员对应的一个行索引键,以及定义所述第一维度所有成员的行索引值,将多维数据中剩余多个维度中每一个维度的成员确定为列索引,得到数据表的列坐标,包括定义剩余N个维度中每一个维度下的所有成员对应的一个列索引键,得到N个列索引键的集合,以及定义剩余维度中每一个维度的每一个成员的列索引值。将多维数据简化为二维存储结构,从而可灵活适应多维度组合,无需按照特定的主键顺序对数据进行排列;用一种与顺序无关的主键组合进行查询,无需额外的配置数据,进而解决了现有技术中配置过程繁琐的技术问题。附图说明为了更清楚地说明本公开具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是根据本公开实施例的数据存储方法;图2是根据本公开实施例的数据存储方法的应用场景图;图3是根据本公开实施例的数据存储装置示意图;图4是根据本公开实施例的电子设备的示意图。具体实施方式为了使本
的人本文档来自技高网
...

【技术保护点】
1.一种多维数据存储方法,其特征在于,包括:/n将多维数据中所有第一维度的成员确定为行索引,得到数据表的行坐标,包括:定义所述第一维度所有成员对应的一个行索引键,以及定义所述第一维度所有成员的行索引值,其中,所述行索引值被定义为第一一维数组;/n将多维数据中剩余多个维度中每一个维度的成员确定为列索引,得到数据表的列坐标,包括:定义剩余N个维度中每一个维度下的所有成员对应的一个列索引键,得到N个列索引键的集合,以及定义剩余维度中每一个维度的每一个成员的列索引值,其中,剩余维度中每一个维度的每一个成员的列索引值被定义为第二一维数组;/n基于所述数据表中的行坐标和所述数据表的列坐标,将目标数据进行对应存储。/n

【技术特征摘要】
1.一种多维数据存储方法,其特征在于,包括:
将多维数据中所有第一维度的成员确定为行索引,得到数据表的行坐标,包括:定义所述第一维度所有成员对应的一个行索引键,以及定义所述第一维度所有成员的行索引值,其中,所述行索引值被定义为第一一维数组;
将多维数据中剩余多个维度中每一个维度的成员确定为列索引,得到数据表的列坐标,包括:定义剩余N个维度中每一个维度下的所有成员对应的一个列索引键,得到N个列索引键的集合,以及定义剩余维度中每一个维度的每一个成员的列索引值,其中,剩余维度中每一个维度的每一个成员的列索引值被定义为第二一维数组;
基于所述数据表中的行坐标和所述数据表的列坐标,将目标数据进行对应存储。


2.根据权利要求1所述的多维数据存储方法,其特征在于,在将多维数据中所有第一维度成员确定为行索引,得到数据表的行坐标之前,所述方法还包括:
比较多维数据中每个维度成员的数量的大小;
将数量最多的成员所对应的维度确定为所述第一维度。


3.根据权利要求1所述的多维数据存储方法,其特征在于,将多维数据中剩余多个维度中每一个维度的成员确定为列索引包括:
定义第二维度的成员的列索引键,得到第二维度的所有成员对应的一个第一列索引键;
定义第三维度的成员的列索引键,得到第三维度的所有成员对应的一个第二列索引键;
定义第二维度的每一个成员的第一列索引值,其中,所述每一个成员的第一列索引值被定义为第三一维数组,所述第三一维数组中的元素为数据表中的列坐标;
定义第二维度的每一个成员的第一列索引值,其中,所述第二维度的每一个成员的第一列索引值被定义为第三一维数组;
定义第三维度的每一个成员的第二列索引值,其中,所述第三维度的每一个成员的第一列索引值被定义为第四一维数组。


4.根据权利要求1所述的多维数据存储方法,其特征在于,基于所述数据表中的行坐标和所述数据表的列坐标,将目标数据进行对应存储包括:
获取所述目标数据对应的第一维度成员信息和剩余维度成员信息;
基于所述第一维度成员信息确定目标数据在数据表中的行坐标;
基于所述剩余维度成员信息确定目标数据在数据表中的列坐标;
基于所述数据表中的行坐标和所述数据表中的列坐标,将所述目标数据定义为二维数组。


5.一种多维数据存储装置,其特征在于,包括:
第一确定单元,将多维数据中所有第一维度的成员确定为行索引,得到数据表的行坐标,包括:定义所述第一维度所有成员对应的一个行索引键,以及定义所述第一维度所有成员的行索引值,其中,所述行索引值...

【专利技术属性】
技术研发人员:张翔
申请(专利权)人:海腾保险代理有限公司
类型:发明
国别省市:安徽;34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1