掌桥专利:专业的专利平台
掌桥专利
首页

数据存储方法、装置、计算机存储介质及计算机程序产品

文献发布时间:2023-06-19 18:27:32


数据存储方法、装置、计算机存储介质及计算机程序产品

技术领域

本申请属于数据存储技术领域,尤其涉及一种数据存储方法、装置、计算机存储介质及计算机程序产品。

背景技术

业务系统通常会提供大量指标数据,以用于作空间计算或者数据计算,并将统计、计算结果展示给用户,或者,用于作为系统的底座数据,为系统提供数据支撑。

传统方式一般采用关系型数据库(如oracle、mysql等)对指标数据进行存储,然而该方式的存储逻辑复杂,计算渲染效率低,会带来指标数据入库难、查询难、不能动态支持指标属性拓展、动态增加表难以维护等一系列问题。

发明内容

有鉴于此,本申请提供一种数据存储方法、装置、计算机存储介质及计算机程序产品,以解决传统的关系型数据库存储方式存在的指标入库难、查询难、不能动态支持指标属性拓展等缺陷中的至少部分不足,规整用户的指标数据底座,更好地支撑业务系统建设。

具体方案如下:

一种数据存储方法,包括:

获取待存储数据;

按预设的指标项元素模板,确定所述待存储数据对应于各指标项元素的元素数据;

生成包含所述待存储数据对应于各指标项元素的元素数据的指标项,得到所述待存储数据对应的目标指标项;

基于预设的非关系型数据存储结构,存储所述目标指标项包含的数据。

可选的,所述按预设的指标项元素模板,确定所述待存储数据对应于各指标项元素的元素数据,包括:

按预设的指标项元素模板,提取所述待存储数据对应于指标基本属性、指标维度、指标值、计算规则中至少部分元素的元素数据。

其中,所述指标维度用于对指标信息从特定特征角度进行描述,所述指标基本属性为基于预先配置的元数据和字典表构建而成,所述元数据用于指示指标项所需的基本属性,所述字典表用于存储不同指标项对应所需的不同指标维度和/或不同基本属性下的关键字。

可选的,所述基于预设的非关系型数据存储结构,存储所述目标指标项包含的数据,包括:

基于在文档型非关系型数据库存储结构中预设的多种不同层级节点,分级存储所述目标指标项的标识、所述目标指标项包含的各指标项元素,及各指标项元素对应的元素数据;

基于在所述文档型非关系型数据库存储结构中预设的关系节点,存储所述目标指标项对应的不同层级节点间的关联关系。

可选的,所述方法,还包括:

在存储所述目标指标项包含的数据时,将所述目标指标项与其相关的指标项组织成对应的目录进行存储。

可选的,所述将所述目标指标项与其相关的指标项组织成对应的目录进行存储,包括:

将所述目标指标项对应的分级存储结构挂接在所述目标指标项所属指标体系的相应体系节点下,以将所述目标指标项与其所属指标体系中的各已有指标项组织成对应的目录进行存储;

其中,所述指标体系中的各已有指标项为与所述目标指标项相关的指标项。

可选的,所述多种不同层级节点包括层级依次降低的表格节点、字段节点和字段值说明节点。

可选的,所述方法,还包括:

为字典表中的相应关键字添加对应的校验规则,以基于对应的校验规则对关键字的数值进行校验。

一种数据存储装置,包括:

获取单元,用于获取待存储数据;

确定单元,用于按预设的指标项元素模板,确定所述待存储数据对应于各指标项元素的元素数据;

生成单元,用于生成包含所述待存储数据对应于各指标项元素的元素数据的指标项,得到所述待存储数据对应的目标指标项;

存储单元,用于基于预设的非关系型数据存储结构,存储所述目标指标项包含的数据

一种计算机可读介质,其上存储有计算机程序,所述计算机程序包含用于执行如上文任一项所述的方法的程序代码。

10、一种计算机程序产品,其特征在于,其包括承载在非暂态计算机可读介质上的计算机程序,所述计算机程序包含用于执行如上文任一项所述的方法的程序代码。

综上所述,本申请提供的数据存储方法、装置、计算机存储介质及计算机程序产品,获得待存储数据后,按预设的指标项元素模板,确定待存储数据对应于各指标项元素的元素数据,生成包含待存储数据对应于各指标项元素的元素数据的指标项,得到待存储数据对应的目标指标项,并基于预设的非关系型数据存储结构,存储所述目标指标项包含的数据。本申请通过动态构建待存储数据对应的多元素维度的指标项,并采用非关系型数据存储结构,对目标指标项进行存储,可有效解决传统的关系型数据库存储方式存在的指标入库难、查询难、不能动态支持指标属性拓展、动态增加表难以维护等问题,能够规整用户的指标数据底座,更好地支撑业务系统建设。

附图说明

结合附图并参考以下具体实施方式,本申请各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。

图1是本申请提供的数据存储方法的流程示意图;

图2是本申请提供的字典管理的一个示例性功能界面;

图3是本申请提供的字典管理中时间粒度维度下的各关键字示例;

图4是本申请提供的时间粒度维度下关键字“年”的示例性管理功能界面;

图5是本申请提供的基于元数据管理功能进行指标项基本属性构建的示例性功能界面;

图6是本申请提供的基于指标项元素模板提取待存储数据的各指标项元素数据的一个示例;

图7是本申请提供的对指标项/指标体系按非关系型数据存储结构进行存储的一个示例;

图8是本申请提供的数据存储装置的组成结构图。

具体实施方式

下面将参照附图更详细地描述本申请的实施例。虽然附图中显示了本申请的某些实施例,然而应当理解的是,本申请可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本申请。应当理解的是,本申请的附图及实施例仅用于示例性作用,并非用于限制本申请的保护范围。

本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。

需要注意,本申请中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。

需要注意,本申请中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。

本申请实施例提供一种数据存储方法、装置、计算机存储介质及计算机程序产品,用于通过提出并实现一种基于非关系型数据存储结构进行指标数据存储的方案,来解决传统的关系型数据库存储方式存在的指标入库难、查询难、不能动态支持指标属性拓展等问题,以规整用户的指标数据底座,更好地支撑业务系统建设。

参见图1所示的数据存储方法流程图,本申请提供的数据存储方法包括以下处理流程:

步骤101、获取待存储数据。

待存储数据,可以是但不限于业务系统提供的待存储指标数据,具体可以是用于作空间计算或数据计算的相关指标数据,或者,用于作为系统底座信息,相应为系统提供数据支撑的相关指标数据,不作限制。

待存储数据具体为非结构化的指标数据,示例性的,例如:【常住人口城镇化率,在**市,2035年远景目标值是75%】、【轨道交通站点800米半径服务覆盖率:xxx】等。

步骤102、按预设的指标项元素模板,确定所述待存储数据对应于各指标项元素的元素数据。

本申请实施例预先提出并定义了以下一系列基本概念,以支持基于非关系型数据存储结构的指标数据存储:

字典管理,元数据,指标维度,指标项,指标体系,指标值。

其中,字典管理用于解决指标数据字典值的存储与管理问题,通过字典表存储各指标项目需使用的诸如单位、时间、地区以及其他维度或自定义维度的关键字,且还可以存储各指标项目基本属性下的关键字,并对其进行管理。

可选的,字典管理还支持为字典表中的相应关键字添加对应的校验规则,以支持基于校验规则对所对应关键字的数值进行校验。

参见图2,提供了字典管理的一个示例性功能界面,包括但不限于基于字典表的计量单位、时间粒度、地区划分、用地分类、业务、功能等各维度下的关键字配置、存储与管理功能。

如图3所示,进一步提供了时间粒度维度下的各关键字示例。图4则提供了对时间粒度维度下的关键字“年”这一字段的管理功能界面,基于该功能界面对应的管理功能,可以实现动态展示指标值的单位维度下“年”这一单位字段的相关信息。

元数据用于构建指标项的基本属性,具体可通过对应的元数据管理功能进行指标项基本属性的构建与维护,如图5所示,进而实现动态构建指标项。

指标维度用于对指标信息从特定特征角度进行描述,以描述指标在相应特征角度/维度有哪些属性。

指标项即是指标项目,为指标的基本单位。指标值是基于指标项目对不同指标维度关联的指标值。

比如,【常住人口城镇化率,在**市,2035年远景目标值是75%】,该数据对应的指标项为【常住人口城镇化率】,包含空间维度【**市】、时间维度【2035年远景目标值】,以及指标值【75】,单位【%】。

指标体系用于将需要关联的指标项组织成一个目录,不同的业务系统需要参与计算的指标项及其对应的指标值有所差异,可以通过指标体系来加以定义。

基于定义的上述一系列基本概念,进一步设定指标项包含的各组成元素。其中,指标项包含指标值这一组成元素,除此之外,还可以包括但不限于基本属性、维度及计算规则等组成元素,其中属性由字典表和元数据共同构建。基本属性可以包括固定属性和动态扩展属性,以支持通过动态增加所需的属性字段,实现指标项属性的动态扩展。

为便于针对待存储数据动态构建其所对应的指标项,本申请实施例预先制定了提供有指标项的各组成元素的指标项元素模板,当获取待存储数据后,可基于该模板,提取待存储数据对应于模板中各指标项元素的元素数据,如提取指标基本属性、指标维度、指标值、计算规则等各指标元素对应的元素数据。参见图6,提供了基于指标项元素模板,提取【轨道交通站点800米半径服务覆盖率:xxx】这一待存储数据的各指标项元素数据的一个示例。

步骤103、生成包含所述待存储数据对应于各指标项元素的元素数据的指标项,得到所述待存储数据对应的目标指标项。

在基于指标项元素模板,完成待存储数据的各指标项元素数据的提取后,则可生成待存储数据对应的目标指标项,所生成的目标指标项对应包含待存储数据各组成元素的元素数据,如待存储数据的基本属性、指标维度、指标值、计算规则等等。

步骤104、基于预设的非关系型数据存储结构,存储所述目标指标项包含的数据。

可选的,本申请采用文档型非关系型数据库存储结构,对目标指标项包含的数据进行存储,也即,本申请实施例中,非关系型数据存储结构为非关系型数据库存储结构document。

本申请预先在文档型非关系型数据库存储结构中预设多种不同层级节点,包括但不限于层级依次降低的表格节点、字段节点和字段值说明节点。其中,表格节点是为多数据对象设置的节点,多数据对象即指包含多种数据的对象,可以是但不限于指标体系、指标项(指标项目)、字典(字典表)等等,字段节点是为指标属性、指标维度或字典表下的关键字字段设置的节点,字段值说明节点则用于存储字段对应的取值。

同时,还在文档型非关系型数据库存储结构中预设有关系节点,用于存储指标体系、指标项、基本属性、维度、字典等之间的关系,包括但不限于包含、拥有、属于、依赖等关系,例如,某指标体系包含某指标项以及包含对应的体系版本,某指标体系属于某体系类型,某指标项拥有某些指标值类型,某指标项拥有某些属性,某属性基于某元数据构建,某元数据依赖某个字典等等。

相应的,在得到待存储数据对应的目标指标项后,本申请基于在文档型非关系型数据库存储结构中预设的表格、字段和字段值说明等不同层级节点,分级存储目标指标项的标识、目标指标项包含的各指标项元素,及各指标项元素对应的元素数据,除此之外,还基于预设的关系节点,存储目标指标项对应的不同层级节点间的关联关系,以此实现对待存储数据的动态指标项构建,及对所构建指标项的非关系型数据结构存储。

例如,首先将目标指标项构建为一个表格节点,采用该表格节点存储目标指标项的标识,然后采用多个字段节点分别存储目标指标项的各基本属性/维度下的不同关键字字段,以及采用多个字段值说明节点分别存储不同关键字字段的取值等,并基于关系节点构建与存储目标指标项对应的各层级节点间的关联关系,如表格节点与其各属性/维度下的字段节点间的关联关系,以及各字段节点与其字段值说明节点间的关联关系等,除此之外,还可以进一步构建属性与元数据、字典等间的依赖关系。

另外,可选的,在存储目标指标项所包含的数据时,可以将目标指标项与其相关的指标项组织成对应的目录进行存储。

其中,具体可通过将目标指标项对应的分级存储结构挂接在其所属指标体系的相应体系节点下,来实现将目标指标项与其所属指标体系中的各已有指标项组织成对应的目录进行存储;容易理解,目标指标项所属指标体系中的各已有指标项构成与目标指标项相关的指标项。

参见图7,提供了基于上述的非关系型数据存储结构,对指标项、指标体系进行存储的一个示例。与传统技术的关系型数据库存储方式相比,本申请实施例提供的非关系型数据存储结构,更利于指标的入库及查询,且可通过向指标项元素模板中动态增加所需的属性字段,支持指标项属性的动态扩展,以及可通过向非关系型数据库存储结构document挂接所需表格的分级存储结构,进行数据库表的动态增加与维护,有效解决了传统关系型数据库中指标入库难、查询难、不能动态支持指标属性拓展、动态增加表难以维护等问题。

综上所述,本申请提供的数据存储方法,在获得待存储数据后,按预设的指标项元素模板,确定待存储数据对应于各指标项元素的元素数据,生成包含待存储数据对应于各指标项元素的元素数据的指标项,得到待存储数据对应的目标指标项,并基于预设的非关系型数据存储结构,存储所述目标指标项包含的数据。本申请通过动态构建待存储数据对应的多元素维度的指标项,并采用非关系型数据存储结构,对目标指标项进行存储,可有效解决传统的关系型数据库存储方式存在的指标入库难、查询难、不能动态支持指标属性拓展、动态增加表难以维护等问题,能够规整用户的指标数据底座,更好地支撑业务系统建设。

对应于上述的数据存储方法,本申请还提供一种数据存储装置,该装置的组成结构如图8所示,包括:

获取单元10,用于获取待存储数据;

确定单元20,用于按预设的指标项元素模板,确定所述待存储数据对应于各指标项元素的元素数据;

生成单元30,用于生成包含所述待存储数据对应于各指标项元素的元素数据的指标项,得到所述待存储数据对应的目标指标项;

存储单元40,用于基于预设的非关系型数据存储结构,存储所述目标指标项包含的数据

在一实施方式中,确定单元20,具体用于:

按预设的指标项元素模板,提取所述待存储数据对应于指标基本属性、指标维度、指标值、计算规则中至少部分元素的元素数据。

其中,所述指标维度用于对指标信息从特定特征角度进行描述,所述指标基本属性为基于预先配置的元数据和字典表构建而成,所述元数据用于指示指标项所需的基本属性,所述字典表用于存储不同指标项对应所需的不同指标维度和/或不同基本属性下的关键字。

在一实施方式中,存储单元40,具体用于:

基于在文档型非关系型数据库存储结构中预设的多种不同层级节点,分级存储所述目标指标项的标识、所述目标指标项包含的各指标项元素,及各指标项元素对应的元素数据;

基于在所述文档型非关系型数据库存储结构中预设的关系节点,存储所述目标指标项对应的不同层级节点间的关联关系。

在一实施方式中,存储单元40,还用于:

在存储所述目标指标项包含的数据时,将所述目标指标项与其相关的指标项组织成对应的目录进行存储。

在一实施方式中,存储单元40,在将所述目标指标项与其相关的指标项组织成对应的目录进行存储时,具体用于:

将所述目标指标项对应的分级存储结构挂接在所述目标指标项所属指标体系的相应体系节点下,以将所述目标指标项与其所属指标体系中的各已有指标项组织成对应的目录进行存储;

其中,所述指标体系中的各已有指标项为与所述目标指标项相关的指标项。

在一实施方式中,所述多种不同层级节点包括层级依次降低的表格节点、字段节点和字段值说明节点。

在一实施方式中,上述装置还包括:规则配置单元,用于为字典表中的相应关键字添加对应的校验规则,以基于对应的校验规则对关键字的数值进行校验。

对于本申请实施例提供的数据存储装置而言,由于其与上文方法实施例提供的数据存储方法相对应,所以描述的比较简单,相关相似之处请参见上文方法实施例的说明即可,此处不再详述。

本申请还提供一种计算机可读介质,其上存储有计算机程序,所述计算机程序包含用于执行如上文方法实施例提供的数据存储方法的程序代码。

在本申请的上下文中,计算机可读介质(机器可读介质)可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

需要说明的是,本申请上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。

上述计算机可读介质可以是电子设备中所包含的;也可以是单独存在,而未装配入电子设备中。

本申请还提供一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,所述计算机程序包含用于执行如上文方法实施例提供的数据存储方法的程序代码。

特别地,根据本申请的实施例,上文各参考流程图描述的过程可以被实现为计算机软件程序。在这样的实施例中,该计算机程序可以通过通信装置从网络上被下载和安装,或者从存储装置被安装,或者从ROM被安装。在该计算机程序被处理装置执行时,执行本申请实施例的方法中限定的上述功能。

需要说明,尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本申请的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的申请范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中申请的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

技术分类

06120115576684