CN109739484A - 一种资产关系模型构建系统、方法及存储介质 - Google Patents
一种资产关系模型构建系统、方法及存储介质 Download PDFInfo
- Publication number
- CN109739484A CN109739484A CN201811629801.9A CN201811629801A CN109739484A CN 109739484 A CN109739484 A CN 109739484A CN 201811629801 A CN201811629801 A CN 201811629801A CN 109739484 A CN109739484 A CN 109739484A
- Authority
- CN
- China
- Prior art keywords
- relationship
- assets
- sentence
- submodule
- parameter
- 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.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种资产关系模型构建系统、方法及存储介质,所述系统包括:数据库、资产关系管理模块和资产关系表示模块;所述资产关系管理模块包括语句构建引擎、关系对象子模块和关系业务接口子模块。关系对象子模块根据业务请求,构造和维护资产关系实例以及语句构建参数,所述语句构建引擎根据所述语句构建参数,生成关系实例操作语句,数据库执行所述关系实例操作语句。根据用户的业务请求生成关系实例操作语句并执行,因此可以实现根据用户需求动态地定义和使用资产关系,另外,基于语句构建引擎,通过语句构建参数,生成关系实例操作语句,规范了资产关系使用过程中语句的实现,增强了系统的安全性。
Description
技术领域
本发明涉及网络安全技术领域,尤其涉及一种资产关系模型构建系统、方法及存储介质。
背景技术
安全领域的资产管理业务中,对于资产的具体使用多是采用关联关系引用的方式,例如资产实例按类别分组,使用视图查看实例分布,资产组资产数量TOP排序、漏洞平均处理时间大于1天的资产责任人数量等。在这些资产的业务场景中,资产作为集中的数据核心库,为各种关系提供计算的依据。在现有技术方案中,资产底层使用关系型数据库存储,对于各类关联关系,一般均是在产品开发阶段按照客户需求直接定义,使用数据库的SQL语言构建组织,产品发布后,如果客户有新的关系需求,需要重新走一遍开发流程方可支持。
现有安全产品中,对于资产相关关系的理解和实现,是直接基于资产的关系型数据库存储方式,即当需要使用某种资产关系时,直接在资产的存储层次,通过SQL语句或者其他方式,获取相关数据后返回。换句话说,对客户所暴露的资产关系层,是直接构建于资产数据存储层之上的。现有技术直接依赖客户对资产关系的需求,具体关系具体构建,因此无法做到动态地定义和使用资产关系。
发明内容
本发明实施例提供了一种资产关系模型构建系统、方法及存储介质,用以解决现有技术中无法做到动态地定义和使用资产关系的问题。
本发明实施例提供了一种资产关系模型构建系统,所述系统包括:数据库、资产关系管理模块和资产关系表示模块;其中,所述资产关系管理模块包括语句构建引擎、关系对象子模块和关系业务接口子模块;
资产关系表示模块,用于提供使用和展示资产关系;
所述关系业务接口子模块,用于接收用户的资产关系业务请求,将所述业务请求传输至所述关系对象子模块;
所述关系对象子模块,用于根据所述业务请求,构造和维护资产关系实例以及语句构建参数,将所述语句构建参数传输至所述语句构建引擎;
所述语句构建引擎,用于根据所述语句构建参数,生成关系实例操作语句,将所述关系实例操作语句传输至数据库;
所述数据库,用于执行所述关系实例操作语句。
进一步地,所述关系业务接口子模块,用于对关系业务接口的封装;
所述关系业务接口至少包括:新增资产关系接口、消费资产关系接口、查询资产关系接口、删除资产关系接口、刷新资产关系接口、挂载资产关系接口和资产关系嵌套接口。
进一步地,所述关系对象子模块,具体用于确定资产关系实例中的关系介质、关系类型、标的集合和划分集合,根据所述关系介质、关系类型、标的集合和划分集合确定语句构建参数。
进一步地,所述关系对象子模块,具体用于根据所述业务请求,维护不同类型的资产关系实例;其中,所述不同类型的资产关系实例包括组件与资产的实例关系、组件与组件的对象关系和资产与资产的对象关系。
进一步地,所述关系对象子模块,还用于分别确定标的集合和划分集合的拓扑类型,根据所述标的集合、划分集合以及标的集合和划分集合的拓扑类型确定语句构建参数。
进一步地,所述拓扑类型包括以下任意一项或任意组合:随机分布、链式分布、树形分布和图形分布。
进一步地,所述关系对象子模块,还用于对标的集合进行聚合运算或聚合下钻运算;
所述聚合运算包括对散列分布的标的集合的计数、四则运算、条件判断筛选以及上述的复合运算得到聚合分布的标的集合;
所述聚合下钻运算包括将聚合分布的标的集合还原为散列分布的标的集合。
进一步地,所述关系对象子模块,具体用于复用或部分复用已有的资产关系。
进一步地,所述关系对象子模块,具体用于当接收到关系介质变更的指示信息时,获取变更的数据,查找与所述数据相关联的资产关系实例;针对每个资产关系实例,基于所述变更的数据构造语句构建参数,并传输至所述语句构建引擎;
所述语句构建引擎,具体用于根据所述语句构建参数,生成关系实例刷新语句,将所述关系实例刷新语句传输至所述数据库;
所述数据库,用于执行所述关系实例刷新语句。
进一步地,所述关系对象子模块,具体用于根据所述业务请求,确定挂载源对象、挂载目标对象和锚定对象;根据所述锚定对象,建立挂载源对象和挂载目标对象之间的映射,将所述挂载目标对象扩展为所述挂载源对象和挂载目标对象的并集。
本发明实施例提供了一种资产关系模型构建方法,所述方法包括:
接收用户的资产关系业务请求;
根据所述业务请求,构造和维护资产关系实例以及语句构建参数;
根据所述语句构建参数,生成关系实例操作语句,将所述关系实例操作语句传输至数据库,使所述数据库执行所述资产关系实例语句。
本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述方法步骤。
本发明实施例提供了一种资产关系模型构建系统、方法及存储介质,所述系统包括:数据库、资产关系管理模块和资产关系表示模块;其中,所述资产关系管理模块包括语句构建引擎、关系对象子模块和关系业务接口子模块;资产关系表示模块,用于提供使用和展示资产关系;所述关系业务接口子模块,用于接收用户的资产关系业务请求,将所述业务请求传输至所述关系对象子模块;所述关系对象子模块,用于根据所述业务请求,构造和维护资产关系实例以及语句构建参数,将所述语句构建参数传输至所述语句构建引擎;所述语句构建引擎,用于根据所述语句构建参数,生成关系实例操作语句,将所述关系实例操作语句传输至数据库;所述数据库,用于执行所述关系实例操作语句。
由于在本发明实施例中,资产关系模型构建系统还包括资产关系管理模块,资产关系管理模块包括语句构建引擎、关系对象子模块和关系业务接口子模块。关系对象子模块根据业务请求,构造和维护资产关系实例以及语句构建参数,所述语句构建引擎根据所述语句构建参数,生成关系实例操作语句,数据库执行所述关系实例操作语句。根据用户的业务请求生成关系实例操作语句并执行,因此可以实现根据用户需求动态地定义和使用资产关系,另外,基于语句构建引擎,通过语句构建参数,生成关系实例操作语句,规范了资产关系使用过程中语句的实现,增强了系统的安全性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1提供的资产关系模型构建系统结构示意图;
图2为本发明实施例6提供的资产关系模型初始化示意图;
图3为本发明实施例6提供的刷新资产关系流程图;
图4为本发明实施例7提供的挂载资产关系流程图;
图5为本发明实施例7提供的新增资产关系流程图;
图6为本发明实施例8提供的资产关系模型构建过程示意图。
具体实施方式
下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
实施例1:
图1为本发明实施例提供的资产关系模型构建系统结构示意图,所述系统包括:数据库11、资产关系管理模块12和资产关系表示模块13;其中,所述资产关系管理模块12包括语句构建引擎121、关系对象子模块122和关系业务接口子模块123;
资产关系表示模块13,用于提供使用和展示资产关系;
所述关系业务接口子模块123,用于接收用户的资产关系业务请求,将所述业务请求传输至所述关系对象子模块122;
所述关系对象子模块122,用于根据所述业务请求,构造和维护资产关系实例以及语句构建参数,将所述语句构建参数传输至所述语句构建引擎121;
所述语句构建引擎121,用于根据所述语句构建参数,生成关系实例操作语句,将所述关系实例操作语句传输至数据库11;
所述数据库11,用于执行所述关系实例操作语句。
如图1所示,在本发明实施例中,资产关系模型构建系统包括:数据库11、资产关系管理模块12和资产关系表示模块13。资产关系管理模块12构建于数据库11之上,资产关系表示模块13构建于资产关系管理模块12之上。资产关系管理模块12包括语句构建引擎121、关系对象子模块122和关系业务接口子模块123。其中,关系对象子模块122构建于语句构建引擎121之上,关系业务接口子模块123构建于关系对象子模块122之上。关系业务接口子模块123与资产关系表示模块13连接,语句构建引擎121与数据库11连接。
资产关系表示模块13暴露于客户,用于向客户提供使用和展示资产关系。关系业务接口子模块123可以接收用户的资产关系业务请求,该资产关系业务请求可以是新增一个资产关系、消费一个资产关系、刷新一个资产关系、嵌套资产关系等等。关系业务接口子模块123将业务请求传输至关系对象子模块122,关系对象子模块122通过解析业务请求,可以构造和维护资产关系实例以及语句构建参数。资产关系实例可以是资产数据与责任人的关系,或者资产数据与地理位置数据的关系等等。关系对象子模块122根据资产关系实例,可以确定语句构建参数。具体的,关系对象子模块122中可以保存资产关系实例与参数的对应关系,在确定出资产关系实例后,根据与参数的对应关系可以确定出语句构建参数。然后将语句构建参数输入语句构建引擎121,语句构建引擎121中预先构建有语句结构,语句构建引擎121将语句构建参数输入预先构建的语句结构中,生成关系实例操作语句。语句构建引擎121与数据库11连接,语句构建引擎121根据资产关系实例确定出关系实例操作语句后,将关系实例操作语句传输至数据库11。数据库11通过执行关系实例操作语句,生成资产关系实例关系表。
由于在本发明实施例中,资产关系模型构建系统还包括资产关系管理模块,资产关系管理模块包括语句构建引擎、关系对象子模块和关系业务接口子模块。关系对象子模块根据业务请求,构造和维护资产关系实例以及语句构建参数,所述语句构建引擎根据所述语句构建参数,生成关系实例操作语句,数据库执行所述关系实例操作语句。根据用户的业务请求生成关系实例操作语句并执行,因此可以实现根据用户需求动态地定义和使用资产关系,另外,基于语句构建引擎,通过语句构建参数,生成关系实例操作语句,规范了资产关系使用过程中语句的实现,增强了系统的安全性。
在本发明实施例中,所述数据库11,用于至少存储资产数据、地理位置数据、责任人数据、漏洞数据、情报数据、端口数据和时间戳数据。
由于本发明实施例提供的资产关系模型构建系统可以实现根据用户需求动态地定义和使用资产关系,因此可以扩展数据库存储数据的范围,除了现有技术中存储的资产数据、地理位置数据、责任人数据、端口数据和时间戳数据之外,还可以存储情报数据、脆弱性数据等外围相关数据。脆弱性数据可以是漏洞数据。
实施例2:
在上述实施例的基础上,在本发明实施例中,所述关系业务接口子模块123,用于对关系业务接口的封装;
所述关系业务接口至少包括:新增资产关系接口、消费资产关系接口、查询资产关系接口、删除资产关系接口、刷新资产关系接口、挂载资产关系接口和资产关系嵌套接口。
用户的资产关系业务请求可以是新增一个资产关系、消费一个资产关系、刷新一个资产关系、嵌套资产关系等等,关系业务接口子模块123通过对应的关系业务接口将业务请求传输至关系对象子模块122。例如,业务请求为新增资产关系,则通过新增资产关系接口将业务请求传输至关系对象子模块122;再例如,业务请求为消费资产关系,则通过消费资产关系接口将业务请求传输至关系对象子模块122等等。
关系对象子模块122根据接收到的业务请求构造和维护资产关系实例,并根据资产关系实例确定出语句构建参数。其中,关系对象子模块122中可以保存资产关系实例与语句构建参数的对应关系,在确定出资产关系实例后,根据与语句构建参数的对应关系可以确定出语句构建参数。然后将语句构建参数传输至语句构建引擎121。在本发明实施例中,语句构建引擎121包括但不限于是结构化查询语言(Structured Query Language,SQL)语句构建引擎。
语句构建引擎121根据接收到的语句构建参数,可以生成关系实例操作语句。其中,语句构建引擎121中可以预先构建资产关系实例对应的语句结构,将语句构建参数输入对应的语句结构,得到关系实例操作语句。然后将关系实例操作语句传输至数据库11,数据库11执行所述关系实例操作语句。从而实现根据用户需求动态地定义和使用资产关系。
实施例3:
在上述各实施例的基础上,在本发明实施例中,所述关系对象子模块122,具体用于确定资产关系实例中的关系介质、关系类型、标的集合和划分集合,根据所述关系介质、关系类型、标的集合和划分集合确定语句构建参数。
关系对象子模块122在确定出资产关系实例之后,具体可以确定出资产关系实例中的关系介质、关系类型、标的集合和划分集合,然后根据关系介质、关系类型、标的集合和划分集合确定语句构建参数。其中,关系对象子模块122中可以分别保存关系介质、关系类型、标的集合和划分集合与语句构建参数的对应关系,在确定出关系介质、关系类型、标的集合和划分集合后,根据与语句构建参数的对应关系可以确定出语句构建参数。
本发明实施例中的资产关系为一个或多个集合的一种结构或状态,具体指集合内单个实例间的异同或联系。常用典型的关系有散列分布、拓扑分布、聚合分布等。蕴藏关联关系的数据集合为关系介质。
在本发明实施例中,使用共同的关系介质数据集,得到A对象实例集合a按B对象实例集合b的一个划分或者映射结构。其中a称为标的集合、b称为划分集合。散列分布中每个分支中的a子集称为分支标的子集,b子集称为分支划分子集。例如,A对象为资产数据表,B对象为地理位置表,则实例集合a为资产数据表中所有的资产数据,实例集合b为地理位置表中所有地理位置数据。地理位置数据例如是全国的城市,北京、天津、上海等等。
在本发明实施例中,所述关系对象子模块122,具体用于根据所述业务请求,维护不同类型的资产关系实例类型;其中,所述不同类型的资产关系实例包括组件与资产的实例关系、组件与组件的对象关系和资产与资产的对象关系。
本发明实施例中的资产关系实例类型包括实例关系和对象关系。其中,实例关系为组件与资产的对应关系;对象关系为组件与组件的对应关系或资产与资产的对应关系。下面通过举例进行说明。
实例关系为:当A是资产对象,B是资产组件时,a对b的散列分布。例如,A为资产关系表,A中包括资产数据、地理位置数据和责任人数据,B为资产关系表中某列数据,例如是地理位置数据。则a对b的散列分布即为实例关系。对象关系为:当B和A无直接联系,是以资产实例集合为关系介质的两个组件对象,或者两个资产对象时,a对b或b对a的散列分布。例如,A为资产关系表中的资产数据,B为资产关系表中的地理位置数据,则a对b或b对a的散列分布即为对象关系。
实施例4:
在上述各实施例的基础上,在本发明实施例中,所述关系对象子模块122,还用于分别确定标的集合和划分集合的拓扑类型,根据所述标的集合、划分集合以及标的集合和划分集合的拓扑类型确定语句构建参数。
用户在输入业务请求时,可以携带标的集合和划分集合的拓扑类型,关系对象子模块122通过对业务请求进行解析,可以确定出标的集合、划分集合以及标的集合的拓扑类型和划分集合的拓扑类型。根据标的集合的拓扑类型和划分集合的拓扑类型,可以确定出拓扑类型对应的语句构建参数。关系对象子模块122中可以保存拓扑类型与语句构建参数的对应关系,在确定出拓扑类型后,根据与语句构建参数的对应关系可以确定出语句构建参数。
具体的,所述拓扑类型包括以下任意一项或任意组合:随机分布、链式分布、树形分布和图形分布。
不同的拓扑类型对应的语句构建参数也是不同的。
链式分布为散列分布中,划分集合b自身同质拓扑构成链时,a对b的散列分布类型,例如b为时间戳数据。
树形分布为散列分布中,划分集合b自身同质拓扑构成树时,a对b的散列分布类型,例如b为地理位置数据。
图形分布为散列分布中,划分集合b自身同质拓扑构成图时,a对b的散列分布类型,例如b为IP组网结构。
在本发明实施例中,关系对象子模块122分别确定标的集合和划分集合的拓扑类型,根据标的集合、划分集合以及标的集合和划分集合的拓扑类型确定语句构建参数。然后将语句构建参数传输至语句构建引擎121,语句构建引擎121根据语句构建参数,生成关系实例操作语句,将关系实例操作语句传输至数据库11。数据库11执行关系实例操作语句,便可以按照标的集合和划分集合的拓扑类型生成资产关系实例图。
下面对散列分布的操作方法进行说明。
例如实例关系DI,O对象实例集合o,作为标的集合,O对象的一个非标识属性K的实例集合k,作为划分集合。
划分查询(div_inquire):按照k中的某个实例,获取其相关的o子集。
标的查询(obj_inquire):按照o中的某个实例,获取其相关的k子集。
划分插入(div_insert):在已有关系中,增加一个K对象实例。
划分删除(div_delete):在已有关系中,删除一个K对象实例,及其上分布的O对象实例。
标的插入(obj_insert):在已有关系中,增加一个O对象实例,按其K属性实例到对应的k元素中增加o元素。
标的删除(obj_delete):在已有关系中,删除一个O对象实例,按其K属性实例到对应的k元素中删减o元素。
下面对同质拓扑关系的操作方法进行说明。
对同类实例集合,按其标识属性封装链、树、图的结构、存储并封装操作接口,主要方法有:
节点插入(insert):对已有关系,按节点增量式地构建,支持批量。
节点删除(delete):对已有关系,按节点增量式地构建,支持批量。
节点查询(inquire):按关系中的索引位置,获取对应的节点实例。
节点绑定(bind):按关系中的索引位置,配置对应的节点实例。
节点解绑(unbind):按关系中的索引位置,释放对应的节点实例。
其他链、树、图拓扑结构特有的操作方法可以采用现有的数据结构,例如:路径遍历、获取父节点/祖先集合/子节点/后代集合、指定位置插入/删除等。
在本发明实施例中,所述关系对象子模块122,还用于对标的集合进行聚合运算或聚合下钻运算;
所述聚合运算包括对散列分布的标的集合的计数、四则运算、条件判断筛选以及上述的复合运算得到聚合分布的标的集合;
所述聚合下钻运算包括将聚合分布的标的集合还原为散列分布的标的集合。
为了使生成的资产关系实例关系表精简,关系对象子模块122还用于对散列分布的标的集合进行聚合运算得到聚合分布的标的集合。聚合运算可以是对散列分布的标的集合的计数、四则运算、条件判断筛选以及上述的复合运算。另外,关系对象子模块122还用于对聚合分布的标的集合进行聚合下钻运算得到散列分布的标的集合。
实施例5:
在上述各实施例的基础上,在本发明实施例中,所述关系对象子模块122,具体用于复用或部分复用已有的资产关系。
关系对象子模块122在每次根据资产关系业务请求确定出资产关系实例,以及根据资产关系实例确定出语句构建参数后,可以将资产关系实例和语句构建参数对应保存至系统的关系注册表中。
关系对象子模块122当前根据资产关系业务请求确定出资产关系实例后,可以先查找关系注册表中是否存在该资产关系实例,如果存在,则不需要再根据该资产关系实例确定语句构建参数,直接复用关系注册表中已有的资产关系即可。
例如,关系对象子模块122当前根据资产关系业务请求确定出资产关系实例为资产和责任人的关系,经过查找,确定关系注册表中是否存在资产和责任人的关系,因此可以直接复用关系注册表中的资产和责任人的关系。也就是直接将关系注册表中的资产和责任人的关系对应的语句构建参数传输至语句构建引擎121。
另外,关系对象子模块122还可以部分复用已有的资产关系。例如,关系对象子模块122当前根据资产关系业务请求确定出资产关系实例为资产和责任人的关系,经过查找,确定关系注册表中虽然不存在资产和责任人的关系,但是存在资产和责任人、地理位置这三者的关系。此时可以部分复用资产和责任人、地理位置这三者的关系,也就是将资产和责任人、地理位置这三者的关系对应的语句构建参数中的资产和责任人的关系对应的语句构建参数传输至语句构建引擎121。
由于在本发明实施例中,对于已经存在的资产关系,可以直接用或部分复用已有的资产关系,从而可以节省资产关系生成的资源开销,降低了资源使用和成本。
实施例6:
在上述各实施例的基础上,在本发明实施例中,所述关系对象子模块122,具体用于当接收到关系介质变更的指示信息时,获取变更的数据,查找与所述数据相关联的资产关系实例;针对每个资产关系实例,基于所述变更的数据构造语句构建参数,并传输至所述语句构建引擎121;
所述语句构建引擎121,具体用于根据所述语句构建参数,生成关系实例刷新语句,将所述关系实例刷新语句传输至所述数据库11;
所述数据库11,用于执行所述关系实例刷新语句。
本发明实施例中提供了刷新资产关系的过程,在刷新资产关系之前,首先需要进行资产关系模型初始化。图2为本发明实施例提供的资产关系模型初始化示意图,如图2所示,首先启动语句构建引擎,构建系统关系注册表,然后初始化关系对象子模块。启动关系构建引擎,初始化同质拓扑对象库、映射关系对象库、关系业务对象和关系介质对象库。
图3为本发明实施例提供的刷新资产关系流程图,如图3所示,当识别到关系介质数据集变更,例如对象变化引起的实例增删改查等,周边检测服务向关系对象子模块中的关系构建引擎发送关系介质变更的指示信息。关系对象子模块获取变更的增量数据,并在系统注册表中查找与变更的数据相关联的资产关系实例。然后依次获取一个资产关系实例,使用变更增量数据构建范式化参数,然后参数传入语句构建引擎,生成关系实例操作语句。数据库执行关系实例操作语句。在本资产关系实例中记录或存储执行结果的关系数据,记录本关系实例的刷新时间及状态。在系统的关系注册表中增加一条注册记录,包括:关系名称、状态和刷新时间、范式化参数、关系数据存储位置等。然后再按照同样的方法刷新下一个关系实例,直到全部刷新完。
实施例7:
在上述各实施例的基础上,在本发明实施例中,所述关系对象子模块122,具体用于根据所述业务请求,确定挂载源对象、挂载目标对象和锚定对象;根据所述锚定对象,建立挂载源对象和挂载目标对象之间的映射,将所述挂载目标对象扩展为所述挂载源对象和挂载目标对象的并集。
图4为本发明实施例提供的挂载资产关系流程图,如图4所示,首先关系业务接口子模块123中的挂载资产关系接口驱动,例如通过接口调用,将挂载源对象B过锚定对象C扩展到挂载目标对象A,同时制定A、B的实例集合a、b。然后判断b中C与B实例的对应关系,如果是一对一或多对一,则关系对象子模块在a中以C的实例为索引,建立a与b实例间的映射,将a扩展至a与b的并集。在注册表查找以a作为关系介质的关系实例,判断是否查找到,如果未查找到,则进行以a为介质的关系新增流程,关系新增流程在后续进行说明。如果查找到,对每个关系实例循环,刷新实例的关系介质以及对关系增量的刷新。
图5为本发明实施例提供的新增资产关系流程图,如图5所示,首先用关系对象初始化一个关系实例,关系对象子模块中的关系构建引擎为关系实例命名。然后指定该实例的关系介质,默认的关系介质为资产数据,在嵌套时可以引用已有的关系数据。然后确定标的集合和关系类型。如果关系类型为实例关系,标的集合关系介质集合自身,也就是资产库标识属性对象,如果关系类型为对象关系,则需要选择关系介质集合中的一个属性对象。然后确定划分集合,在关系介质集合中选择一个对象属性,然后分别确定标的集合的拓扑类型和划分集合的拓扑类型。然后指定关系标的集合的聚合运算类型,算法集中包括集合实例计数、实例数据四则运算、条件筛选及复合运算,从中选择聚合运算类型。然后生成语句构建引擎的范式化参数,参数传入语句构建引擎,生成关系实例语句。数据库执行关系实例语句。然后在本关系实例中记录或存储执行结果的关系数据,记录本关系实例的刷新时间及状态。在系统的关系注册表中增加一条注册记录,包括:关系名称、状态和刷新时间、范式化参数、关系数据存储位置等。
实施例8:
图6为本发明实施例提供的资产关系模型构建过程示意图,该过程包括以下步骤:
S601:接收用户的资产关系业务请求。
S602:根据所述业务请求,构造和维护资产关系实例以及语句构建参数。
S603:根据所述语句构建参数,生成关系实例操作语句,将所述关系实例操作语句传输至数据库,使所述数据库执行所述资产关系实例语句。
资产关系模型构建系统包括:数据库、资产关系管理模块和资产关系表示模块。资产关系管理模块构建于数据库之上,资产关系表示模块构建于资产关系管理模块之上。资产关系管理模块包括语句构建引擎、关系对象子模块和关系业务接口子模块。其中,关系对象子模块构建于语句构建引擎之上,关系业务接口子模块构建于关系对象子模块之上。关系业务接口子模块与资产关系表示模块连接,语句构建引擎与数据库连接。
资产关系表示模块暴露于客户,用于向客户提供使用和展示资产关系。关系业务接口子模块可以接收用户的资产关系业务请求,该资产关系业务请求可以是新增一个资产关系、消费一个资产关系、刷新一个资产关系、嵌套资产关系等等。关系业务接口子模块将业务请求传输至关系对象子模块,关系对象子模块通过解析业务请求,可以构造和维护资产关系实例以及语句构建参数。资产关系实例可以是资产数据与责任人的关系,或者资产数据与地理位置数据的关系等等。关系对象子模块根据资产关系实例,可以确定语句构建参数。具体的,关系对象子模块中可以保存资产关系实例与参数的对应关系,在确定出资产关系实例后,根据与参数的对应关系可以确定出语句构建参数。然后将语句构建参数输入语句构建引擎,语句构建引擎中预先构建有语句结构,语句构建引擎将语句构建参数输入预先构建的语句结构中,生成关系实例操作语句。语句构建引擎与数据库连接,语句构建引擎根据资产关系实例确定出关系实例操作语句后,将关系实例操作语句传输至数据库。数据库通过执行关系实例操作语句,生成资产关系实例关系表。
由于在本发明实施例中,资产关系模型构建系统还包括资产关系管理模块,资产关系管理模块包括语句构建引擎、关系对象子模块和关系业务接口子模块。关系对象子模块根据业务请求,构造和维护资产关系实例以及语句构建参数,所述语句构建引擎根据所述语句构建参数,生成关系实例操作语句,数据库执行所述关系实例操作语句。根据用户的业务请求生成关系实例操作语句并执行,因此可以实现根据用户需求动态地定义和使用资产关系,另外,基于语句构建引擎,通过语句构建参数,生成关系实例操作语句,规范了资产关系使用过程中语句的实现,增强了系统的安全性。
实施例9:
在上述各实施例的基础上,本发明实施例还提供了一种计算机存储可读存储介质,所述计算机可读存储介质内存储有可由电子设备执行的计算机程序,当所述程序在所述电子设备上运行时,使得所述电子设备执行时实现如下步骤:
接收用户的资产关系业务请求;
根据所述业务请求,构造和维护资产关系实例以及语句构建参数;
根据所述语句构建参数,生成关系实例操作语句,将所述关系实例操作语句传输至数据库,使所述数据库执行所述资产关系实例语句。
基于同一发明构思,本发明实施例中还提供了一种计算机可读存储介质,由于处理器在执行上述计算机可读存储介质上存储的计算机程序时解决问题的原理与资产关系模型构建方法相似,因此处理器在执行上述计算机可读存储介质存储的计算机程序的实施可以参见方法的实施,重复之处不再赘述。
上述计算机可读存储介质可以是电子设备中的处理器能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器如软盘、硬盘、磁带、磁光盘(MO)等、光学存储器如CD、DVD、BD、HVD等、以及半导体存储器如ROM、EPROM、EEPROM、非易失性存储器(NANDFLASH)、固态硬盘(SSD)等。
在本发明实施例中提供的计算机可读存储介质内存储计算机程序,计算机程序被处理器执行时,实现接收用户的资产关系业务请求;根据所述业务请求,构造和维护资产关系实例以及语句构建参数;根据所述语句构建参数,生成关系实例操作语句,将所述关系实例操作语句传输至数据库,使所述数据库执行所述资产关系实例语句。由于资产关系模型构建系统还包括资产关系管理模块,资产关系管理模块包括语句构建引擎、关系对象子模块和关系业务接口子模块。关系对象子模块根据业务请求,构造和维护资产关系实例以及语句构建参数,所述语句构建引擎根据所述语句构建参数,生成关系实例操作语句,数据库执行所述关系实例操作语句。根据用户的业务请求生成关系实例操作语句并执行,因此可以实现根据用户需求动态地定义和使用资产关系,另外,基于语句构建引擎,通过语句构建参数,生成关系实例操作语句,规范了资产关系使用过程中语句的实现,增强了系统的安全性。
本发明实施例提供了一种资产关系模型构建系统、方法及存储介质,所述系统包括:数据库、资产关系管理模块和资产关系表示模块;其中,所述资产关系管理模块包括语句构建引擎、关系对象子模块和关系业务接口子模块;资产关系表示模块,用于提供使用和展示资产关系;所述关系业务接口子模块,用于接收用户的资产关系业务请求,将所述业务请求传输至所述关系对象子模块;所述关系对象子模块,用于根据所述业务请求,构造和维护资产关系实例以及语句构建参数,将所述语句构建参数传输至所述语句构建引擎;所述语句构建引擎,用于根据所述语句构建参数,生成关系实例操作语句,将所述关系实例操作语句传输至数据库;所述数据库,用于执行所述关系实例操作语句。
由于在本发明实施例中,资产关系模型构建系统还包括资产关系管理模块,资产关系管理模块包括语句构建引擎、关系对象子模块和关系业务接口子模块。关系对象子模块根据业务请求,构造和维护资产关系实例以及语句构建参数,所述语句构建引擎根据所述语句构建参数,生成关系实例操作语句,数据库执行所述关系实例操作语句。根据用户的业务请求生成关系实例操作语句并执行,因此可以实现根据用户需求动态地定义和使用资产关系,另外,基于语句构建引擎,通过语句构建参数,生成关系实例操作语句,规范了资产关系使用过程中语句的实现,增强了系统的安全性。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (12)
1.一种资产关系模型构建系统,其特征在于,所述系统包括:数据库、资产关系管理模块和资产关系表示模块;其中,所述资产关系管理模块包括语句构建引擎、关系对象子模块和关系业务接口子模块;
资产关系表示模块,用于提供使用和展示资产关系;
所述关系业务接口子模块,用于接收用户的资产关系业务请求,将所述业务请求传输至所述关系对象子模块;
所述关系对象子模块,用于根据所述业务请求,构造和维护资产关系实例以及语句构建参数,将所述语句构建参数传输至所述语句构建引擎;
所述语句构建引擎,用于根据所述语句构建参数,生成关系实例操作语句,将所述关系实例操作语句传输至数据库;
所述数据库,用于执行所述关系实例操作语句。
2.如权利要求1所述的系统,其特征在于,所述关系业务接口子模块,用于对关系业务接口的封装;
所述关系业务接口至少包括:新增资产关系接口、消费资产关系接口、查询资产关系接口、删除资产关系接口、刷新资产关系接口、挂载资产关系接口和资产关系嵌套接口。
3.如权利要求1所述的系统,其特征在于,所述关系对象子模块,具体用于确定资产关系实例中的关系介质、关系类型、标的集合和划分集合,根据所述关系介质、关系类型、标的集合和划分集合确定语句构建参数。
4.如权利要求3所述的系统,其特征在于,所述关系对象子模块,具体用于根据所述业务请求,维护不同类型的资产关系实例;其中,所述不同类型的资产关系实例包括组件与资产的实例关系、组件与组件的对象关系和资产与资产的对象关系。
5.如权利要求3所述的系统,其特征在于,所述关系对象子模块,还用于分别确定标的集合和划分集合的拓扑类型,根据所述标的集合、划分集合以及标的集合和划分集合的拓扑类型确定语句构建参数。
6.如权利要求5所述的系统,其特征在于,所述拓扑类型包括以下任意一项或任意组合:随机分布、链式分布、树形分布和图形分布。
7.如权利要求3所述的系统,其特征在于,所述关系对象子模块,还用于对标的集合进行聚合运算或聚合下钻运算;
所述聚合运算包括对散列分布的标的集合的计数、四则运算、条件判断筛选以及上述的复合运算得到聚合分布的标的集合;
所述聚合下钻运算包括将聚合分布的标的集合还原为散列分布的标的集合。
8.如权利要求1所述的系统,其特征在于,所述关系对象子模块,具体用于复用或部分复用已有的资产关系。
9.如权利要求1所述的系统,其特征在于,所述关系对象子模块,具体用于当接收到关系介质变更的指示信息时,获取变更的数据,查找与所述数据相关联的资产关系实例;针对每个资产关系实例,基于所述变更的数据构造语句构建参数,并传输至所述语句构建引擎;
所述语句构建引擎,具体用于根据所述语句构建参数,生成关系实例刷新语句,将所述关系实例刷新语句传输至所述数据库;
所述数据库,用于执行所述关系实例刷新语句。
10.如权利要求1所述的系统,其特征在于,所述关系对象子模块,具体用于根据所述业务请求,确定挂载源对象、挂载目标对象和锚定对象;根据所述锚定对象,建立挂载源对象和挂载目标对象之间的映射,将所述挂载目标对象扩展为所述挂载源对象和挂载目标对象的并集。
11.一种资产关系模型构建方法,其特征在于,所述方法包括:
接收用户的资产关系业务请求;
根据所述业务请求,构造和维护资产关系实例以及语句构建参数;
根据所述语句构建参数,生成关系实例操作语句,将所述关系实例操作语句传输至数据库,使所述数据库执行所述资产关系实例语句。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求11所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811629801.9A CN109739484B (zh) | 2018-12-28 | 2018-12-28 | 一种资产关系模型构建系统、方法及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811629801.9A CN109739484B (zh) | 2018-12-28 | 2018-12-28 | 一种资产关系模型构建系统、方法及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109739484A true CN109739484A (zh) | 2019-05-10 |
CN109739484B CN109739484B (zh) | 2022-04-05 |
Family
ID=66362094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811629801.9A Active CN109739484B (zh) | 2018-12-28 | 2018-12-28 | 一种资产关系模型构建系统、方法及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109739484B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111221560A (zh) * | 2019-11-14 | 2020-06-02 | 北京神州绿盟信息安全科技股份有限公司 | 一种资源管理方法、装置和电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101339559A (zh) * | 2008-07-18 | 2009-01-07 | 北京航空航天大学 | 一种数据持久化实现方法 |
CN103177016A (zh) * | 2011-12-22 | 2013-06-26 | 北京新媒传信科技有限公司 | 关系型数据库访问方法和装置 |
CN104598223A (zh) * | 2014-12-30 | 2015-05-06 | 北京华为数字技术有限公司 | 一种网络建模语言解析方法及装置 |
US20180357734A1 (en) * | 2017-06-12 | 2018-12-13 | Ole Media Management (Gp) Inc. | Scalable computing systems and methods for intellectual property rights and royalty management |
-
2018
- 2018-12-28 CN CN201811629801.9A patent/CN109739484B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101339559A (zh) * | 2008-07-18 | 2009-01-07 | 北京航空航天大学 | 一种数据持久化实现方法 |
CN103177016A (zh) * | 2011-12-22 | 2013-06-26 | 北京新媒传信科技有限公司 | 关系型数据库访问方法和装置 |
CN104598223A (zh) * | 2014-12-30 | 2015-05-06 | 北京华为数字技术有限公司 | 一种网络建模语言解析方法及装置 |
US20180357734A1 (en) * | 2017-06-12 | 2018-12-13 | Ole Media Management (Gp) Inc. | Scalable computing systems and methods for intellectual property rights and royalty management |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111221560A (zh) * | 2019-11-14 | 2020-06-02 | 北京神州绿盟信息安全科技股份有限公司 | 一种资源管理方法、装置和电子设备 |
CN111221560B (zh) * | 2019-11-14 | 2023-10-03 | 绿盟科技集团股份有限公司 | 一种资源管理方法、装置和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109739484B (zh) | 2022-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Aggarwal et al. | A survey of uncertain data algorithms and applications | |
CN106547796B (zh) | 数据库的执行方法及装置 | |
Guo et al. | Fast clustering-based anonymization approaches with time constraints for data streams | |
CN105528367B (zh) | 基于开源大数据对时间敏感数据的存储和近实时查询方法 | |
CN106933833B (zh) | 一种基于空间索引技术的位置信息快速查询方法 | |
CN102214176B (zh) | 超大维表的切分与表连接方法 | |
US11768825B2 (en) | System and method for dependency analysis in a multidimensional database environment | |
US8880511B2 (en) | Database query optimization and cost estimation | |
JP2018506775A (ja) | トランザクションアクセスパターンに基づいた結合関係の識別 | |
US10592153B1 (en) | Redistributing a data set amongst partitions according to a secondary hashing scheme | |
WO2022241813A1 (zh) | 一种基于图压缩的图数据库构建方法、装置及相关组件 | |
Min et al. | Symmetric continuous subgraph matching with bidirectional dynamic programming | |
Goyal et al. | Cross platform (RDBMS to NoSQL) database validation tool using bloom filter | |
Jianmin et al. | An improved join‐free snowflake schema for ETL and OLAP of data warehouse | |
Peng et al. | Efficient hop-constrained st simple path enumeration | |
Theeten et al. | Chive: Bandwidth optimized continuous querying in distributed clouds | |
CN113704248B (zh) | 一种基于外置索引的区块链查询优化方法 | |
CN111859441A (zh) | 一种缺失数据的匿名方法、存储介质 | |
CN109739484A (zh) | 一种资产关系模型构建系统、方法及存储介质 | |
Balaji et al. | Distributed graph path queries using spark | |
CN106339432A (zh) | 一种按查询内容进行负载均衡的系统及其方法 | |
Grasmann et al. | Integration of skyline queries into spark sql | |
Ganti et al. | MP-trie: Fast spatial queries on moving objects | |
Shan et al. | Top-$ k $ Subgraph Query Based on Frequent Structure in Large-Scale Dynamic Graphs | |
Papalkar et al. | Issues of concern in storage system of IoT based big data |
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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building Applicant after: NSFOCUS Technologies Group Co.,Ltd. Applicant after: NSFOCUS TECHNOLOGIES Inc. Address before: 100089 Beijing city Haidian District Road No. 4 North wa Yitai three storey building Applicant before: NSFOCUS INFORMATION TECHNOLOGY Co.,Ltd. Applicant before: NSFOCUS TECHNOLOGIES Inc. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |