一种数据模型的生成方法及装置与流程

文档序号:17862457发布日期:2019-06-11 22:57阅读:223来源:国知局
一种数据模型的生成方法及装置与流程

本申请涉及数据库技术领域,尤其涉及一种数据模型的生成方法及装置。



背景技术:

移动通信网络性能管理是移动通信网络管理系统的核心功能。移动通信网络管理系统通过多个网络接口从各网元中采集网元性能数据,并将从各网元采集的网元性能数据分别存储在各网元对应的基础数据模型中,进一步地,还可以通过对各网元对应的基础数据模型进行计算以及汇聚处理,最终生成可供网络管理系统使用的性能分析报表。

目前,现有构建基础数据模型时多采用人工建模的方式。首先,需要根据性能数据规范文档中记录的性能数据规范格式,人工建立模型字段,构建基础数据模型。然而在移动通信网络中一个网元的性能数据往往会达到几十到上百的规模,针对每个网元的性能数据均需要人工建立模型字段,建模过程十分复杂且繁琐,需耗费大量工作量,且很容易出现模型字段建立错误的情况。并且,人工构建的基础数据模型常常为最细粒度级别的数据模型,后续还需经过多次计算以及汇聚处理,才能生成上层报表级别的数据模型,每一次对基础数据模型进行计算或汇聚处理时,都需要人工地根据上层应用报表需求,确认不同基础数据模型的关联关系,并选择相应的模型计算算法或汇聚算法,这使得各基础数据模型的计算以及汇聚过程也需耗费大量工作量。

由此可见,现有技术中采用人工建模的方式构建网络管理系统的数据模型,不仅需要耗费大量人力,建模效率较低,而且建模过程的出错几率也较高。



技术实现要素:

本申请提供一种数据模型的生成方法及装置,用以解决现有技术中采用人工建模的方式构建网络管理系统的数据模型,不仅需要耗费大量人力,建模效率较低,而且建模过程的出错几率也较高的问题。

本申请提供的技术方案如下:

第一方面,一种数据模型的生成方法,包括:

基于预先存储的性能数据规范文档包含的性能数据的定义信息,构建各性能数据的数据定义结构体,其中,每个性能数据的数据定义结构体描述了该性能数据归属的粒度信息,所述粒度信息包括网元粒度;

将所述粒度信息符合预设条件的数据定义结构体进行合并后得到数据实体定义结构体;

基于所述性能数据规范文档中包含的各网元之间的拓扑关系,构建用于描述各网元之间的拓扑关系的拓扑关联结构体,并建立所述拓扑关联结构体与具有拓扑关系的各网元分别对应的数据实体定义结构体之间的第一映射关系;

基于所述拓扑关联结构体描述的各网元之间的拓扑关系,将与所述拓扑关联结构体具有第一映射关系的数据实体定义结构体进行合并后生成基础数据模型。

进一步地,所述将所述粒度信息符合预设条件的数据定义结构体进行合并后得到数据实体定义结构体,具体包括:

确定数据定义结构体进行合并时所采用的最小粒度信息;

根据各性能数据的数据定义结构体描述的性能数据归属的粒度信息,从所述各性能数据的数据定义结构体中选定具有所述最小粒度信息的性能数据对应的数据定义结构体;

将归属同一所述最小粒度信息的数据定义结构体归并至选定的具有所述最小粒度信息的性能数据对应的数据定义结构体中,得到数据实体定义结构体。

进一步地,所述基于所述拓扑关联结构体描述的各网元之间的拓扑关系,将与所述拓扑关联结构体具有第一映射关系的数据实体定义结构体进行合并后生成基础数据模型,具体包括:

按照各网元之间的拓扑关系由低到高的顺序,将与所述拓扑关联结构体具有第一映射关系的数据实体定义结构体中,对应的网元为低级别的数据实体定义结构体合并到对应的网元为高级别的数据实体定义结构体中,得到基础数据模型。

进一步地,所述方法还包括:

基于所述性能数据规范文档中包含的性能数据之间的关联信息,构建用于描述关联数据的数据关联结构体;其中,所述关联信息中包括具有关联关系的各性能数据的标识信息、用于表征关联关系的计算公式,所述关联数据为所述具有关联关系的各性能数据通过所述计算公式进行计算后得到的;

建立所述数据关联结构体与具有关联关系的各性能数据分别对应的第一数据定义结构体之间的第二映射关系;

在生成基础数据模型之后,所述方法还包括:

确定所述第一数据定义结构体归属的基础数据模型;

将与所述第一数据定义结构体具有所述第二映射关系的数据关联结构体归并至确定的基础数据模型中,得到关联数据模型。

进一步地,所述方法还包括:

按照预设的数据汇聚信息,构建数据汇聚结构体,所述数据汇聚结构体描述了数据实体定义结构体的汇聚维度、汇聚模式以及汇聚时所采用的汇聚公式;

在将所述粒度信息符合预设条件的数据定义结构体进行合并后得到数据实体定义结构体之后,所述方法还包括:

确定与所述数据汇聚结构体描述的汇聚维度相匹配的第一数据实体定义结构体,并建立所述数据汇聚结构体与所述第一数据实体定义结构体之间的第三映射关系;

按照所述数据汇聚结构体描述的汇聚模式以及所述数据汇聚结构体描述的汇聚公式,将与所述数据汇聚结构体具有第三映射关系的第一数据定义结构体进行汇聚后生成汇聚数据模型。

进一步地,所述数据汇聚结构体描述的汇聚模式包括:

将所述第一数据定义结构体按照所述汇聚维度的任意组合进行汇聚;或者

从所述第一数据定义结构体中选择出第二数据定义结构体,所述第二数据定义结构体按照从所述汇聚维度中选择出的固定汇聚维度进行汇聚,所述第一数据定义结构体中除所述第二数据定义结构体之外的第三数据定义结构体按照所述汇聚维度的任意组合进行汇聚;或者

将所述第一数据定义结构体按照由用户设定的所述汇聚维度的组合方式进行汇聚。

进一步地,所述汇聚数据模型为宽表形式。

进一步地,所述每个性能数据的数据定义结构体还描述了该性能数据的标识信息;

在生成基础数据模型之后,所述方法还包括:

采集各网元的性能数据文件,并解析采集的性能数据文件归属的粒度信息;

从采集的性能数据文件中读取性能数据,并将读取的性能数据的标识信息转化为生成的基础数据模型可识别的标准性能数据的标识信息;

将采集的性能数据文件归属的粒度信息、以及转换的标准性能数据的标识信息分别与生成的基础数据模型中表征粒度信息的字段以及表征性能数据的标识信息的字段进行匹配;

将匹配成功的性能数据文件存储在生成的基础数据模型中。

进一步地,所述方法还包括:

在确定预先存储的性能数据规范文档或预设的数据汇聚信息存在更新之后,根据预先存储的性能数据规范文档中更新的内容,更改数据定义结构体、拓扑关联结构体和数据关联结构体中一种或多种;或者

根据预设的数据汇聚信息中更新的内容,更改数据汇聚结构体。

第二方面,一种数据模型的生成装置,该装置包括:

构建模块,用于基于预先存储的性能数据规范文档包含的性能数据的定义信息,构建各性能数据的数据定义结构体,其中,每个性能数据的数据定义结构体描述了该性能数据归属的粒度信息,所述粒度信息包括网元粒度;

第一生成模块,用于将所述粒度信息符合预设条件的数据定义结构体进行合并后得到数据实体定义结构体;

处理模块,用于基于所述性能数据规范文档中包含的各网元之间的拓扑关系,构建用于描述各网元之间的拓扑关系的拓扑关联结构体,并建立所述拓扑关联结构体与具有拓扑关系的各网元分别对应的数据实体定义结构体之间的第一映射关系;

第二生成模块,用于基于所述拓扑关联结构体描述的各网元之间的拓扑关系,将与所述拓扑关联结构体具有第一映射关系的数据实体定义结构体进行合并后生成基础数据模型。

进一步地,所述第一生成模块具体用于:

确定数据定义结构体进行合并时所采用的最小粒度信息;

根据各性能数据的数据定义结构体描述的性能数据归属的粒度信息,从所述各性能数据的数据定义结构体中选定具有所述最小粒度信息的性能数据对应的数据定义结构体;

将归属同一所述最小粒度信息的数据定义结构体归并至选定的具有所述最小粒度信息的性能数据对应的数据定义结构体中,得到数据实体定义结构体。

进一步地,所述第二生成模块具体用于:

按照各网元之间的拓扑关系由低到高的顺序,将与所述拓扑关联结构体具有第一映射关系的数据实体定义结构体中,对应的网元为低级别的数据实体定义结构体合并到对应的网元为高级别的数据实体定义结构体中,得到基础数据模型。

进一步地,所述构建模块,还用于:

基于所述性能数据规范文档中包含的性能数据之间的关联信息,构建用于描述关联数据的数据关联结构体;其中,所述关联信息中包括具有关联关系的各性能数据的标识信息、用于表征关联关系的计算公式,所述关联数据为所述具有关联关系的各性能数据通过所述计算公式进行计算后得到的;

所述处理模块,还用于:

建立所述数据关联结构体与具有关联关系的各性能数据分别对应的第一数据定义结构体之间的第二映射关系;在所述第二生成模块生成基础数据模型之后,确定所述第一数据定义结构体归属的基础数据模型;

所述第二生成模块,还用于:

将与所述第一数据定义结构体具有所述第二映射关系的数据关联结构体归并至确定的基础数据模型中,得到关联数据模型。

进一步地,所述构建模块还用于:

按照预设的数据汇聚信息,构建数据汇聚结构体,所述数据汇聚结构体描述了数据实体定义结构体的汇聚维度、汇聚模式以及汇聚时所采用的汇聚公式;

所述处理模块还用于:

在所述第一生成模块将所述粒度信息符合预设条件的数据定义结构体进行合并后得到数据实体定义结构体之后,确定与所述数据汇聚结构体描述的汇聚维度相匹配的第一数据实体定义结构体,并建立所述数据汇聚结构体与所述第一数据实体定义结构体之间的第三映射关系;

所述第二生成模块还用于:

按照所述数据汇聚结构体描述的汇聚模式以及所述数据汇聚结构体描述的汇聚公式,将与所述数据汇聚结构体具有第三映射关系的第一数据定义结构体进行汇聚后生成汇聚数据模型。

进一步地,所述数据汇聚结构体描述的汇聚模式包括:

将所述第一数据定义结构体按照所述汇聚维度的任意组合进行汇聚;或者

从所述第一数据定义结构体中选择出第二数据定义结构体,所述第二数据定义结构体按照从所述汇聚维度中选择出的固定汇聚维度进行汇聚,所述第一数据定义结构体中除所述第二数据定义结构体之外的第三数据定义结构体按照所述汇聚维度的任意组合进行汇聚;或者

将所述第一数据定义结构体按照由用户设定的所述汇聚维度的组合方式进行汇聚。

进一步地,所述汇聚数据模型为宽表形式。

进一步地,所述每个性能数据的数据定义结构体还描述了该性能数据的标识信息;

所述装置还包括:

采集模块,用于在所述第二生成模块生成基础数据模型之后,采集各网元的性能数据文件,并解析采集的性能数据文件归属的粒度信息;

转换模块,用于从采集的性能数据文件中读取性能数据,并将读取的性能数据的标识信息转化为生成的基础数据模型可识别的标准性能数据的标识信息;

匹配模块,用于将采集的性能数据文件归属的粒度信息、以及转换的标准性能数据的标识信息分别与生成的基础数据模型中表征粒度信息的字段以及表征性能数据的标识信息的字段进行匹配;

存储模块,用于将匹配成功的性能数据文件存储在生成的基础数据模型中。

进一步地,所述装置还包括:

更新模块,用于在确定预先存储的性能数据规范文档或预设的数据汇聚信息存在更新之后,根据预先存储的性能数据规范文档中更新的内容,更改数据定义结构体、拓扑关联结构体和数据关联结构体中一种或多种;或者根据预设的数据汇聚信息中更新的内容,更改数据汇聚结构体。

第三方面,一种电子设备,包括:一个或多个处理器;以及一个或多个计算机可读介质,所述可读介质上存储有用于执行数据模型的生成方法的程序,其中,所述程序被所述一个或多个处理器执行时,实现如第一方面任一所述的方法的步骤。

第四方面,一个或多个计算机可读介质,所述可读介质上存储有用于执行数据模型的生成方法的程序,其中,所述程序被一个或多个处理器执行时,使得处理器执行如第一方面任一所述的方法。

本申请实施例的有益效果如下:通过解析预先存储的性能数据规范文档中包含的性能数据的定义信息,可以自动构建各性能数据的数据定义结构体,进而可以根据各数据定义结构体中描述的各性能数据的粒度信息,自动将粒度信息符合预设条件的数据定义结构体进行合并,得到数据实体定义结构体,进一步地,还可通过解析性能数据规范文档中包含的各网元之间的拓扑关系,自动构建拓扑关联结构体,并建立拓扑关联结构体与具有拓扑关系的各网元分别对应的数据实体定义结构体之间的第一映射关系,进而可以将具有第一映射关系的两类结构体进行合并,得到基础数据模型。由此可见,本申请可以自动抽取性能数据规范文档中包含的性能数据的定义信息以及各网元之间的拓扑关系并构建对应的结构体,以及自动将满足一定条件的结构体进行合并最终得到基础数据模型,建模过程无需用户参与,大大减少了人工构建模型字段的工作量,提高了建模效率,并且也避免了人工构建模型时可能出现的错误。

附图说明

图1为本申请实施例提供的一种用于生成数据模型的系统总体架构图;

图2为本申请实施例提供的一种生成基础数据模型的方法的流程示意图;

图3为本申请实施例提供的一种生成关联数据模型的方法的流程示意图;

图4为本申请实施例提供的一种生成汇聚数据模型的方法的流程示意图;

图5为本申请实施例提供的一种存储性能数据文件的方法的流程示意图;

图6为本申请实施例提供的一种数据模型的生成装置的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,并不是全部的实施例。基于本申请实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

本申请针对现有方案中采用人工建模的方式所存在的问题,提供了一种自动化生成数据模型的方案,只需用户配置好数据模型中需存储的各性能数据分别对应的性能数据规范文档,并规定好数据模型的设计方法文档,后续,可以自动化地解析性能数据规范文档中定义的内容并生成对应的数据定义结构体、拓扑关联结构体等与性能数据相关的其它结构体,同时也可以解析数据模型的设计方法文档中包含的设计方法并生成模型设计结构体,由模型设计结构体来指导数据定义结构体以及与性能数据相关的其它结构体之间进行整合和汇聚,最终自动化地输出所需的数据模型。

首先,参照图1所示,为本申请实施例提供一种用于生成数据模型的系统总体架构图,具体包括:模型解析模块、模型构建模块、适配验证模块以及采集解析模块。

模型解析模块可读取和解析预先存储的性能数据规范文档中描述的内容以及数据模型的设计方法文档中描述的设计方法,并生成相应的模型结构体。具体的,模型解析模块可分为三个子模块:数据定义解析模块、数据关联解析模块、以及设计模式解析模块。

其中,数据定义解析模块,主要用于实现对各性能数据文档中包含的各性能数据的定义信息进行解析,并构建各性能数据的数据定义结构体,并且还能进一步生成数据实体定义结构体。

数据关联解析模块,主要用于实现对各性能数据文档中包含的各网元之间的拓扑关系、各性能数据之间的关联关系进行解析,并构建拓扑关联结构体以及数据关联结构体等,生成的拓扑关联结构体和数据关联结构体等可与数据定义结构体建立映射关系。

设计模式解析模块,主要用于解析数据模型的设计方法文档中包含的设计方法,进而可构建用于描述数据实体定义结构体的构建策略的第一模型设计结构体、用于描述各数据实体定义结构体的汇聚策略的第二模型设计结构体、以及用于描述数据模型的生成策略的第三模型设计结构体等。

模型构建模块可以依据模型解析模块中设计模式解析模块构建的各类模型设计结构体中描述的各类方法,对模型解析模块中数据定义解析模块以及数据关联解析模块中构建的各类结构体进行合并或汇聚,生成可供上层系统使用的各类数据模型,如基础数据模型、关联数据模型、汇聚数据模型等。

采集解析模块主要用于采集网络中各网元的性能数据文件,并解析性能数据文件中记录的数据等。

适配验证模块主要用于将采集解析模块中采集到的原始性能数据文件转换为标准数据文件,进而与模型构建模块中生成的数据模型进行适配处理等。

另外,该系统中还可以包括结构化查询语言(structuredquerylanguage,sql)适配模块,该sql适配模块可以生成数据模型可识别的sql语句,用于存取数据、查询、更新数据模型的相关内容。

下面,结合对上述用于生成数据模型的系统总体架构的描述,对本申请实施例提供的数据模型的生成方法进行详细介绍。

参照图2所示,为本申请实施例提供的生成基础数据模型的方法的流程示意图,具体包括:

步骤201:基于预先存储的性能数据规范文档包含的性能数据的定义信息,构建各性能数据的数据定义结构体,其中,每个性能数据的数据定义结构体描述了该性能数据归属的粒度信息,所述粒度信息包括网元粒度。

其中,性能数据规范文档的数量可以为至少一个,每个性能数据规范文档中可以包含有一个或多个性能数据的定义信息,定义信息具体可包括性能数据的标识信息,性能数据描述的网元信息、时间信息、地域信息等。

其中,可以根据从性能数据规范中解析出的性能数据的定义信息,构建性能数据的数据定义结构体。所述数据定义结构体中除了描述性能数据归属的粒度信息以外,还可以描述性能数据的标识信息等。其中,所述粒度信息中还可以包括空间粒度等,所述空间粒度可以是基于定义信息中包括的地域信息确定出的。当然,实际应用时,还可以根据业务需求,配置其它类型的信息,本申请对此并不限定。

步骤202:将所述粒度信息符合预设条件的数据定义结构体进行合并后得到数据实体定义结构体。

本申请实施例中,各性能数据对应的数据定义结构体可以根据设计模式解析模块中生成的第一模型设计结构体中描述的数据实体定义结构体的构建策略来进行合并,得到数据实体定义结构体。其中,合并后得到数据实体定义结构体中可以包含合并前各数据定义结构体的信息,比如各数据定义结构体中描述的性能数据的标识信息、网元粒度、时间粒度等信息,并且,可以将合并前各数据定义结构体分别对应的粒度信息中最粗粒度的粒度信息作为合并后得到的数据实体定义结构体对应的粒度信息。

具体的,构建策略可以包括同网元归并、基于最小粒度信息进行归并。

同网元归并可以为将各性能数据对应的数据定义结构体中描述的网元粒度信息相同的数据定义结构体合并到一起。比如,若性能数据1对应的数据定义结构体a描述了移动性管理实体(mobilitymanagemententity,mme)网元的信息,即数据定义结构体a归属的网元粒度为mme,同样,性能数据2对应的数据定义结构体b也描述了网元mme的信息,即数据定义结构体b归属的网元粒度也为mme,那么,采用同网元归并的方式,可将数据定义结构体a和b进行合并得到数据实体定义结构体,同时,合并前的数据定义结构体a和b可以不再保留。

基于最小粒度信息进行归并,可以理解为确定出各数据定义结构体进行合并时所采用的最小粒度信息,将各性能数据对应的数据定义结构体中归属同一最小粒度信息的数据定义结构体归并至具有所述最小粒度信息的性能数据对应的数据定义结构体中。其中,最小粒度信息可以为最小网元粒度或者最小时间粒度,还可以为最小网元粒度和最小时间粒度的组合。当然,实际应用时,粒度信息还可以包括空间粒度等,相应地,也可以选择任一种或多种粒度的组合,确定对应的最小粒度信息。

比如,以最小粒度信息为最小网元粒度为例,假设性能数据3~5分别对应的数据定义结构体c~e归属的网元粒度分别为mmefunction、eprpdyns6amme、eprpdyns11mme,其中,eprpdyns6amme和eprpdyns11mme相对mmefunction均为归属于mmefunction的更低级别的粒度,那么,若将mmefunction定义为最小粒度信息,则可以将eprpdyns6amme和eprpdyns11mme分别对应的数据定义结构体d、e归并到mmefunction对应的数据定义结构体c中,得到网元粒度为mmefunction的数据实体定义结构体。同时,合并前的数据定义结构体d、e可以不再保留。

另外,本申请实施例中还可以将上述提供的两种方式相结合,具体的,可以先采用同网元归并方式对各性能数据对应的数据定义结构体进行合并,再采用基于最小粒度信息进行归并的方式,对数据定义结构体进行更粗粒度的合并。

步骤203:基于所述性能数据规范文档中包含的各网元之间的拓扑关系,构建用于描述各网元之间的拓扑关系的拓扑关联结构体,并建立所述拓扑关联结构体与具有拓扑关系的各网元分别对应的数据实体定义结构体之间的第一映射关系。

步骤204:基于所述拓扑关联结构体描述的各网元之间的拓扑关系,将与所述拓扑关联结构体具有第一映射关系的数据实体定义结构体进行合并后生成基础数据模型。

由于上述步骤202中指出数据实体定义结构体可以对应着网元粒度,而各网元之间存在着继承、包含等拓扑关系,故可以根据拓扑关联结构体中描述的各网元之间的拓扑关系,将具有拓扑关系的各网元分别对应的数据实体定义结构体进行合并。

然而在生成拓扑关联结构体时只能获知各网元之间的拓扑关系,并且,生成的拓扑关联结构体可以有多个,为了能够确定出每个拓扑关联结构体可以用来指导哪些数据实体定义结构体进行合并,本申请中首先将每个拓扑关联结构体与具有该拓扑关联结构体描述的拓扑关系的各网元分别对应的数据实体定义结构体之间建立第一映射关系,进一步的,在生成基础数据模型时,就可以针对任一拓扑关联结构体,可以将与该拓扑关联结构具有第一映射关系的数据实体定义结构体进行合并,得到基础数据模型。

具体的,可以按照各网元之间的拓扑关系由低到高的顺序,将与该拓扑关联结构体具有第一映射关系的数据实体定义结构体中,对应的网元为低级别的数据实体定义结构体合并到对应的网元为高级别的数据实体定义结构体中,得到基础数据模型。

比如,对于mme网元来说,存在从me(管理实体,managedelement)到mmefunction再到eprpdyns6amme和eprpdyns11mme两个接口的包含关系,因此可建立me->mmefunction->eprpdyns6amme的拓扑关联结构体以及me->mmefunction->eprpdyns11mme的拓扑关联结构体,由于在上例中已知指出eprpdyns6amme和eprpdyns11mme对应的数据定义结构体可以合并到mmefunction对应的数据定义结构体中,进一步的,还可按照拓扑关联结构体中指示的拓扑关系,将me对应的数据定义结构体以及mmefunction对应的数据定义结构体与拓扑关联结构体建立第一映射关系,进而可以将mmefunction对应的数据定义结构体合并到me对应的数据定义结构体中,得到基础数据模型。

在具体实施时,对于拓扑关联结构体中描述的各网元之间拓扑关系比较复杂,层级比较多的情况,在由对应的网元为低级别的数据实体定义结构体合并到对应的网元为高级别的数据实体定义结构体时,可以不将对应的网元为低级别的数据实体定义结构体统一汇聚到对应的网元为最高级别的数据定义结构体中,可以将拓扑关系划分为若干个层级(比如,对于各网元之间的拓扑关系为a->b->c->d->e->f的情况,可以划分为a->b->c、d->e->f这两个层级),然后分别根据每个层级中描述的网元的拓扑关系,进行数据定义结构体的合并,具体合并过程可参照上文中阐述的内容,这里不再详细说明。

由此可见,本申请可以自动抽取性能数据规范文档中包含的性能数据的定义信息以及各网元之间的拓扑关系并构建对应的结构体,以及自动将满足一定条件的结构体进行合并最终得到基础数据模型,建模过程无需用户参与,大大减少了人工构建模型字段的工作量,提高了建模效率,并且也避免了人工构建模型时可能出现的错误。

本申请实施例中,考虑到各性能数据对应的数据定义结构体之间不仅存在粒度信息之间的关联,并且各性能数据本身也存在着关联,因此,在构建基础模型的基础上,还可以进一步生成关联数据模型。

下面,对本申请实施例提供的生成关联数据模型的方法进行介绍,可参照图3所示的流程示意图,具体包括以下步骤:

需要说明的是,具体实施时,本申请实施例中步骤301与上述步骤201在执行顺序上可以不分先后,步骤302可以在上述步骤201执行完成后进行。进一步地,后续步骤303~步骤304可以在上述步骤204执行完成之后,即在生成基础数据模型之后,执行步骤303~步骤304。

步骤301:基于性能数据规范文档中包含的性能数据之间的关联信息,构建用于描述关联数据的数据关联结构体。

其中,所述关联信息中包括具有关联关系的各性能数据的标识信息、用于表征关联关系的计算公式等。所述关联数据为所述具有关联关系的各性能数据通过所述计算公式进行计算后得到的。

具体的,各性能数据之间的关联关系的形式可以包括单表关联和多表关联两种。单表关联可以指同一性能数据规范文档中归属的粒度信息相同的性能数据之间的关联,多表关联可以指不同性能数据规范文档中归属的粒度信息不相同的性能数据之间的关联。其中,对于具有单表关联的性能数据,在经过用于表征关联关系的计算公式进行计算处理后,生成的关联数据可以为与具有单表关联的性能数据归属的粒度信息相同的新的性能数据;对于具有多表关联的性能数据,在经过用于表征关联关系的计算公式进行计算处理后,生成的关联数据可以为与具有多表关联的性能数据归属的粒度信息不相同的新的性能数据。

步骤302:建立所述数据关联结构体与具有关联关系的各性能数据分别对应的第一数据定义结构体之间的第二映射关系。

由于不同的性能数据之间可能存在着不同的关联关系,故生成的数据关联结构体也可能有多个,为了能够确定出每个数据关联结构体可以用于指导哪些数据定义结构体进行合并,本申请中,首先将每个数据关联结构体与具有该数据关联结构体描述的关联关系的各性能数据分别对应的数据定义结构体之间建立第二映射关系。

步骤303:确定所述第一数据定义结构体归属的基础数据模型。

步骤304:将与所述第一数据定义结构体具有所述第二映射关系的数据关联结构体归并至确定的基础数据模型中,得到关联数据模型。

本申请实施例中,由于生成的基础数据模型是由数据实体定义结构体合并后得到的,而数据实体定义结构体是由数据定义结构体合并后得到的,因此,基础数据模型中可以包含有构成该基础数据模型的数据定义结构体中描述的信息,相应的,在确定出第一数据定义结构体后,也可以确定出所述第一数据定义结构体归属的基础数据模型。

进一步,可以将数据关联结构体归并至确定的基础数据模型中,得到关联数据模型,所述关联数据模型中不仅可以用于存储基本的性能数据,还可以自动生成并存储具有关联关系的性能数据经过计算公式进行计算处理后得到的关联数据,避免了人工地梳理基本的性能数据的关联关系以及计算关联指标的过程,提升了建模效率。

本申请实施例中,在将粒度信息符合预设条件的数据定义结构体进行合并后得到数据实体定义结构体之后,还可以根据设计模式解析模块中生成的第二模型设计结构体中描述的各数据实体定义结构体的汇聚策略,对各数据实体定义结构体进行汇聚,得到汇聚数据模型。

下面,对本申请实施例提供的生成汇聚数据模型的方法进行介绍,可参照图4所示的流程示意图,具体包括以下步骤:

需要说明的是,具体实施时,本申请实施例中步骤401与上述步骤201在执行顺序上可以不分先后,后续步骤402~步骤403可以在上述步骤202执行完成后再执行,也即在得到数据实体定义结构体之后,执行步骤402~步骤403。

步骤401:按照预设的数据汇聚信息,构建数据汇聚结构体,所述数据汇聚结构体描述了数据实体定义结构体的汇聚维度、汇聚模式以及汇聚时所采用的汇聚公式。

其中,所述数据汇聚结构体描述的汇聚维度包括网元、时间、空间等维度,并且这些维度可以分别映射至数据实体定义结构体中相应的网元字段、时间字段、空间字段等。比如,以汇聚维度为时间为例,可以将时间中的天维度和月维度,均映射至数据实体定义结构体中的“开始时间”的字段。

所述数据汇聚结构体描述的汇聚模式主要包括全连接模式、主连接模式、自定义连接模式。关于每种模式下的数据实体定义结构体的汇聚方式,将在后文中进行具体介绍。

所述数据汇聚结构体描述的汇聚时所采用的汇聚公式可以为默认汇聚公式或者特殊汇聚公式。若在进行汇聚处理时,没有单独配置特殊汇聚公式,则可以采用默认汇聚公式进行汇聚。具体的,默认汇聚公式包括求和、取平均、取最大、取最小、计数等。特殊汇聚公式可根据需求自定义符合sql标准的公式。

步骤402:确定与所述数据汇聚结构体描述的汇聚维度相匹配的第一数据实体定义结构体,并建立所述数据汇聚结构体与所述第一数据实体定义结构体之间的第三映射关系。

具体的,可以将所述数据汇聚结构体中描述的汇聚维度与各数据实体定义结构体中描述的粒度信息进行匹配,比如,将汇聚维度中的网元维度与各数据实体定义结构体归属的网元粒度进行匹配,确定出与数据汇聚结构体描述的汇聚维度相匹配的第一数据定义结构体,并且,可以建立数据汇聚结构体与第一数据实体定义结构体之间的第三映射关系。

步骤403:按照所述数据汇聚结构体描述的汇聚模式以及所述数据汇聚结构体描述的汇聚公式,将与所述数据汇聚结构体具有第三映射关系的第一数据定义结构体进行汇聚后生成汇聚数据模型。

具体的,若所述汇聚结构体描述的汇聚模式为全连接模式,则可以将所述第一数据定义结构体按照所述汇聚维度的任意组合进行汇聚;

若所述汇聚结构体描述的汇聚模式为主连接模式,则可以从所述第一数据定义结构体中选择出第二数据定义结构体,所述第二数据定义结构体按照从所述汇聚维度中选择出的固定汇聚维度进行汇聚,并且,所述第一数据定义结构体中除所述第二数据定义结构体之外的第三数据定义结构体按照所述汇聚维度的任意组合进行汇聚;

若所述汇聚结构体描述的汇聚模式为自定义连接模式,则可以将所述第一数据定义结构体按照由用户设定的所述汇聚维度的组合方式进行汇聚。

具体的,所述第一数据定义结构体在进行汇聚时所采用的汇聚公式可以采用默认汇聚公式,也可以采用特殊汇聚公式,本申请对此并不做限定。

另外,若设计模式解析模块中生成的第二模型设计结构体中描述的各数据实体定义结构体的汇聚策略中指示汇聚数据模型采用宽表形式,则可以在基本的数据实体定义结构体的基础上汇聚生成一个大而全的宽表,基于此宽表再进一步生成上级汇聚数据模型。若不采用宽表形式,则直接由基本的数据实体定义结构体分别独立生成汇聚数据模型。

另外,具体实施时,模型构建模块在生成基础数据模型、关联数据模型或汇聚数据模型之后,还可以进一步检测生成的数据模型是否符合指定数据库模式,在确定符合后,可输出最终的数据模型。

本申请实施例中,在生成基础数据模型之后,可以将采集解析模块采集到的各网元的性能数据文件中记录的数据相应的存储在基础数据模型中,具体可参照图5所示的方法流程图:

步骤501:采集各网元的性能数据文件,并解析采集的性能数据文件归属的粒度信息。

其中,所述粒度信息可以包括网元粒度、时间粒度等。

具体的,针对每个性能数据文件,可以解析性能数据文件中包含的网元信息字段,并基于各网元之间的资源拓扑关系,确定该性能数据文件归属的最细粒度的网元粒度。还可以解析性能数据文件中包含的时间信息字段,获取该性能数据文件归属的时间粒度。

步骤502:从采集的性能数据文件中读取性能数据,并将读取的性能数据的标识信息转化为生成的基础数据模型可识别的标准性能数据的标识信息。

其中,所述标识信息可以为性能数据的名称、编号等。由于采集的性能数据文件中的标识信息可能并不是以统一的格式定义的,因此,还可将性能数据的标识信息进行转换,将其转换为基础数据模型中预先规定好的标准性能数据的标识信息,以便基础数据模型能够识别出该性能数据。

步骤503:将采集的性能数据文件归属的粒度信息、以及转换的标准性能数据的标识信息分别与生成的基础数据模型中表征粒度信息的字段以及表征性能数据的标识信息的字段进行匹配。

步骤504:将匹配成功的性能数据文件存储在生成的基础数据模型中。

具体的,可以将性能数据文件归属的网元粒度、时间粒度以及转换的标准性能数据的标识信息与生成的基础数据模型中表征网元粒度的字段、表征时间粒度的字段以及表征性能数据的标识信息的字段进行逐一匹配,从整体上分析性能数据文件是否能够适配生成的基本数据模型,若匹配成功,则可将性能数据文件存储在生成的基础数据模型中。

此外,本申请实施例中,由于性能数据规范文档会存在版本更新的情况,当性能数据规范文档进行版本更新时,可以确定性能数据规范文档中更新的内容,并基于更新的内容,更改数据定义结构体、拓扑关联结构体和数据关联结构体中一种或多种。并且,当由于业务需求,需要对预设的数据汇聚信息进行更新时,也可以根据预设的数据汇聚信息中更新的内容,更改数据汇聚结构体。在将各结构体更新为最新版本之后,仍然可以参照上述给出的建模流程,自动化地生成各类数据模型。

需要说明的是,对本申请实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。

基于同一申请构思,本申请实施例中还提供了一种与数据模型的生成方法对应的数据模型的生成装置,由于该装置解决问题的原理与本申请实施例中数据模型的生成方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。

参照图6所示,为本申请实施例提供的一种数据模型的生成装置的结构示意图,所述装置具体包括:

构建模块61,用于基于预先存储的性能数据规范文档包含的性能数据的定义信息,构建各性能数据的数据定义结构体,其中,每个性能数据的数据定义结构体描述了该性能数据归属的粒度信息,所述粒度信息包括网元粒度;

第一生成模块62,用于将所述粒度信息符合预设条件的数据定义结构体进行合并后得到数据实体定义结构体;

处理模块63,用于基于所述性能数据规范文档中包含的各网元之间的拓扑关系,构建用于描述各网元之间的拓扑关系的拓扑关联结构体,并建立所述拓扑关联结构体与具有拓扑关系的各网元分别对应的数据实体定义结构体之间的第一映射关系;

第二生成模块64,用于基于所述拓扑关联结构体描述的各网元之间的拓扑关系,将与所述拓扑关联结构体具有第一映射关系的数据实体定义结构体进行合并后生成基础数据模型。

进一步地,所述第一生成模块62具体用于:

确定数据定义结构体进行合并时所采用的最小粒度信息;

根据各性能数据的数据定义结构体描述的性能数据归属的粒度信息,从所述各性能数据的数据定义结构体中选定具有所述最小粒度信息的性能数据对应的数据定义结构体;

将归属同一所述最小粒度信息的数据定义结构体归并至选定的具有所述最小粒度信息的性能数据对应的数据定义结构体中,得到数据实体定义结构体。

进一步地,所述第二生成模块64具体用于:

按照各网元之间的拓扑关系由低到高的顺序,将与所述拓扑关联结构体具有第一映射关系的数据实体定义结构体中,对应的网元为低级别的数据实体定义结构体合并到对应的网元为高级别的数据实体定义结构体中,得到基础数据模型。

进一步地,所述构建模块61,还用于:

基于所述性能数据规范文档中包含的性能数据之间的关联信息,构建用于描述关联数据的数据关联结构体;其中,所述关联信息中包括具有关联关系的各性能数据的标识信息、用于表征关联关系的计算公式,所述关联数据为所述具有关联关系的各性能数据通过所述计算公式进行计算后得到的;

所述处理模块63,还用于:

建立所述数据关联结构体与具有关联关系的各性能数据分别对应的第一数据定义结构体之间的第二映射关系;在所述第二生成模块生成基础数据模型之后,确定所述第一数据定义结构体归属的基础数据模型;

所述第二生成模块64,还用于:

将与所述第一数据定义结构体具有所述第二映射关系的数据关联结构体归并至确定的基础数据模型中,得到关联数据模型。

进一步地,所述构建模块61还用于:

按照预设的数据汇聚信息,构建数据汇聚结构体,所述数据汇聚结构体描述了数据实体定义结构体的汇聚维度、汇聚模式以及汇聚时所采用的汇聚公式;

所述处理模块63还用于:

在所述第一生成模块将所述粒度信息符合预设条件的数据定义结构体进行合并后得到数据实体定义结构体之后,确定与所述数据汇聚结构体描述的汇聚维度相匹配的第一数据实体定义结构体,并建立所述数据汇聚结构体与所述第一数据实体定义结构体之间的第三映射关系;

所述第二生成模块64还用于:

按照所述数据汇聚结构体描述的汇聚模式以及所述数据汇聚结构体描述的汇聚公式,将与所述数据汇聚结构体具有第三映射关系的第一数据定义结构体进行汇聚后生成汇聚数据模型。

进一步地,所述数据汇聚结构体描述的汇聚模式包括:

将所述第一数据定义结构体按照所述汇聚维度的任意组合进行汇聚;或者

从所述第一数据定义结构体中选择出第二数据定义结构体,所述第二数据定义结构体按照从所述汇聚维度中选择出的固定汇聚维度进行汇聚,所述第一数据定义结构体中除所述第二数据定义结构体之外的第三数据定义结构体按照所述汇聚维度的任意组合进行汇聚;或者

将所述第一数据定义结构体按照由用户设定的所述汇聚维度的组合方式进行汇聚。

进一步地,所述汇聚数据模型为宽表形式。

进一步地,所述每个性能数据的数据定义结构体还描述了该性能数据的标识信息;

所述装置还包括:

采集模块65,用于在所述第二生成模块生成基础数据模型之后,采集各网元的性能数据文件,并解析采集的性能数据文件归属的粒度信息;

转换模块66,用于从采集的性能数据文件中读取性能数据,并将读取的性能数据的标识信息转化为生成的基础数据模型可识别的标准性能数据的标识信息;

匹配模块67,用于将采集的性能数据文件归属的粒度信息、以及转换的标准性能数据的标识信息分别与生成的基础数据模型中表征粒度信息的字段以及表征性能数据的标识信息的字段进行匹配;

存储模块68,用于将匹配成功的性能数据文件存储在生成的基础数据模型中。

进一步地,所述装置还包括:

更新模块69,用于在确定预先存储的性能数据规范文档或预设的数据汇聚信息存在更新之后,根据预先存储的性能数据规范文档中更新的内容,更改数据定义结构体、拓扑关联结构体和数据关联结构体中一种或多种;或者根据预设的数据汇聚信息中更新的内容,更改数据汇聚结构体。

本申请实施例还提供一种电子设备,包括:一个或多个处理器;以及一个或多个计算机可读介质,所述可读介质上存储有用于执行数据模型的生成方法的程序,其中,所述程序被所述一个或多个处理器执行时,实现如上述数据模型的生成方法中任一所述的方法的步骤。

本申请实施例还提供一个或多个计算机可读介质,所述可读介质上存储有用于执行数据模型的生成方法的程序,其中,所述程序被一个或多个处理器执行时,使得处理器执行如上述数据模型的生成方法中任一所述的方法。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、装置(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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