一种基于搜索引擎和关系型数据库实现动态建模的管理系统技术方案

技术编号:31738862 阅读:19 留言:0更新日期:2022-01-05 16:16
本发明专利技术公开了一种基于搜索引擎和关系型数据库实现动态建模的管理系统,包括以关系模型来组织数据的关系型数据库和按数据内容进行全文检索的搜索引擎,以及以下各组件:基础模型管理组件提供面向关系型数据库的基础模型统一操作;动态模型管理组件提供面向关系型数据库的动态模型统一操作;数据操作组件提供面向关系型数据库和搜索引擎数据写入的统一操作;数据搜索优化组件提供面向两种数据管理系统的业务对象数据的统一搜索;模型同步一致性管理组件提供关系型数据库中的基础模型以及动态模型同搜索引擎数据管理系统的同步。本发明专利技术通过提供联合关系型数据库和搜索引擎使用,解决了针对多属性关键字查询匹配的问题。解决了针对多属性关键字查询匹配的问题。解决了针对多属性关键字查询匹配的问题。

【技术实现步骤摘要】
一种基于搜索引擎和关系型数据库实现动态建模的管理系统


[0001]本专利技术属于应用系统
,涉及一种基于搜索引擎和关系型数据库实现动态建模的管理系统。

技术介绍

[0002]企业级应用系统构建依赖于大量业务模型、模型关系和对应的数据管理,模型和数据采用结构化数据方式持久化在关系型数据库,现有技术条件下应用系统访问关系型数据库技术方案:1)采用SQL操作语言编写的脚本实现业务模型和模型关系的创建、修改和搜索;2)采用SQL操作语言编写的脚本实现业务数据和数据关系的操作和搜索;3)应用系统采用对象和模型映射方式,实现应用系统实体模型和数据库模型的操作。
[0003]现有技术条件下应用系统访问关系型数据库方案存在如下问题:
[0004]应用系统业务变化涉及到业务模型变化,现有技术下需要关系型数据库物理模型修改,应用系统实体模型需要代码调整和部署,对象实体模型和物理模型映射关系需要重新配置,无法实现无代码配置方式响应变化。
[0005]企业级应用系统业务对象建模,传统方式下大多数采用关系型数据库实现,针对以下两个实际场景分别采用的解决技术方案如下:
[0006]当系统正式上线运行后,业务需求的变更会触发业务模型及模型间关系的修改,一般通过采用关系型数据库结构变更与预留冗余字段相结合的方式实现,然后修改应用系统代码并需要编译后重新部署。此传统技术实现方式在面向工业领域的复杂数据关系管理等应用场景下存在的问题:频繁变更的业务需求导致的模型变化,无法实现的无代码修改或者配置方式快速响应。/>[0007]目前企业级应用系统在实现相关业务数据查询功能的时候,基于关系型数据库,需要使用通过搜索条件匹配对应的属性字段值进行实现。此种解决方案存在的问题:搜索条件匹配方式单一,无法满足一个关键字匹配多个属性条件的查询以及查询搜索的效率低下。

技术实现思路

[0008]本专利技术解决的技术问题在于提供一种基于搜索引擎和关系型数据库实现动态建模的管理系统,通过动态配置扩展业务模型类型和业务属性、通过快速配置部署方式快速响应模型调整,实现应用搜索引擎解决关键字快速搜索。
[0009]本专利技术是通过以下技术方案来实现:
[0010]一种基于搜索引擎和关系型数据库实现动态建模的管理系统,包括以关系模型来组织数据的关系型数据库和按数据内容进行全文检索的搜索引擎,以及以下各组件:
[0011]基础模型管理组件,对基础模型进行分服务、分应用进行管理,根据输入的基础模型和模型关系的定义文件;在关系型数据库中生成基础模型和模型关系的属性记录,以及相互之间的关联关系;为关系型数据库提供基础模型的统一操作;
[0012]动态模型管理组件,根据基于基础模型输入的动态模型、动态属性的定义文件,在关系型数据库中生成动态模型以及动态属性的记录;并继承于基础类型的表结构,生成用于存储动态模型类型定义、动态属性定义的表达式;为关系型数据库提供动态模型的统一操作;
[0013]数据操作组件,为关系型数据库和搜索引擎提供数据写入的统一操作,是在将业务与数据存储到结构型数据库的同时,同步到搜索引擎数据库中;并保证关系型数据库和搜索引擎的数据库中的数据相一致;
[0014]数据搜索优化组件,为关系型数据库和搜索引擎提供业务对象数据的统一搜索;
[0015]模型同步一致性管理组件,基于关系型数据库的基础模型结构以及动态模型和属性数据,为关系型数据库与搜索引擎提供包括基础模型、动态模型在内的数据同步;
[0016]数据同步完整性补偿组件,为关系型数据库与搜索引擎提供同步数据同步一致操作。
[0017]所述的基础模型管理组件提供的统一操作包括:单一基础模型的数据处理和多基础模型之间关联关系处理;并提供针对基础模型的新增、修改、删除、查询、导出、导入,以及物理表结构创建、表结构更新、表间约束更新和删除;
[0018]所述基础模型的模型关系包括:通过基础模型的主

外键方式实现的1: N关系,以及基于关系表定义的Source

Target实现的M:N关系。
[0019]所述基础模型管理组件还提供基础模型信息的代码生成工具。
[0020]所述基础模型管理组件对基础模型进行分服务、分应用进行管理为:
[0021]当需要新增业务模型或者修改业务模型,首先判断添加的模型是基础模型,还是动态的模型类型;
[0022]若当添加或者变更的基础模型为已存在的基础模型以及属性,则使用 SQL脚本更新数据库结构,并且更新基础模型管理组件的实体模型代码以映射对应的数据库结构;在服务重新部署后生效;
[0023]若添加或者变更的基础模型为动态类型和属性,在记录动态模型数据和属性数据到数据之后,不需要更新就将新添加和变动的模型类型和属性在业务环境中启用。
[0024]所述基础模型管理组件包括以下功能接口:
[0025]Create APP,用于创建管理模型的容器;
[0026]Create Base Model,用于创建基础模型,以及基础模型中的基础属性;
[0027]Create Base Property,用于创建基础模型的基础属性;
[0028]Create Link,用于创建多模型之间对应的关联关系;
[0029]Alter,用于修改基础模型和属性的信息;
[0030]Delete,用于删除基础模型和基础属性的信息;
[0031]Search,用于查询基础模型和基础属性的信息;
[0032]Export,用于导出模型的信息;
[0033]Import,用于为目标环境导入模型信息;
[0034]Generate Update File,用于生成更新数据结构和实现代码文件。
[0035]所述的动态模型管理组件提供的统一操作包括:创建基于基础模型的动态模型,以及为基础模型创建动态类型和动态属性,并支持动态类型的层级结构的创建;
[0036]所述动态模型,是继承于基础模型的定义与关系定义而形成的子模型,面向关系型数据库是以JSON格式存在于基础模型的一个属性,面向搜索引擎是与基础类型以平行方式作为索引存在。
[0037]所述动态模型管理组件包括以下功能接口:
[0038]Create Dynamic Model,基于基础模型类型创建动态模型类型;
[0039]Create Dynamic Property,基于基础模型或者动态模型创建动态属性;
[0040]Create Extra Property,为模型创建扩展属性,利用动态属性实现模型间的关联关系;
[0041]Alter,修改动态模型类型和动态属性;
[0042]Delete,删除动态模型类型和动态属性;
[0043]Search,用于查看动态模型类型,动态属性和扩展属性信息。
[0044]所述的模型同步一致性管理组件,通过以本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于搜索引擎和关系型数据库实现动态建模的管理系统,其特征在于,包括以关系模型来组织数据的关系型数据库和按数据内容进行全文检索的搜索引擎,以及以下各组件:基础模型管理组件,对基础模型进行分服务、分应用进行管理,根据输入的基础模型和模型关系的定义文件;在关系型数据库中生成基础模型和模型关系的属性记录,以及相互之间的关联关系;为关系型数据库提供基础模型的统一操作;动态模型管理组件,根据基于基础模型输入的动态模型、动态属性的定义文件,在关系型数据库中生成动态模型以及动态属性的记录;并继承于基础类型的表结构,生成用于存储动态模型类型定义、动态属性定义的表达式;为关系型数据库提供动态模型的统一操作;数据操作组件,为关系型数据库和搜索引擎提供数据写入的统一操作,是在将业务与数据存储到结构型数据库的同时,同步到搜索引擎数据库中;并保证关系型数据库和搜索引擎的数据库中的数据相一致;数据搜索优化组件,为关系型数据库和搜索引擎提供业务对象数据的统一搜索;模型同步一致性管理组件,基于关系型数据库的基础模型结构以及动态模型和属性数据,为关系型数据库与搜索引擎提供包括基础模型、动态模型在内的数据同步;数据同步完整性补偿组件,为关系型数据库与搜索引擎提供同步数据同步一致操作。2.如权利要求1所述的基于搜索引擎和关系型数据库实现动态建模的管理系统,其特征在于,所述的基础模型管理组件提供的统一操作包括:单一基础模型的数据处理和多基础模型之间关联关系处理;并提供针对基础模型的新增、修改、删除、查询、导出、导入,以及物理表结构创建、表结构更新、表间约束更新和删除;所述基础模型的模型关系包括:通过基础模型的主

外键方式实现的1:N关系,以及基于关系表定义的Source

Target实现的M:N关系。所述基础模型管理组件还提供基础模型信息的代码生成工具。3.如权利要求2所述的基于搜索引擎和关系型数据库实现动态建模的管理系统,其特征在于,所述基础模型管理组件对基础模型进行分服务、分应用进行管理为:当需要新增业务模型或者修改业务模型,首先判断添加的模型是基础模型,还是动态的模型类型;若当添加或者变更的基础模型为已存在的基础模型以及属性,则使用SQL脚本更新数据库结构,并且更新基础模型管理组件的实体模型代码以映射对应的数据库结构;在服务重新部署后生效;若添加或者变更的基础模型为动态类型和属性,在记录动态模型数据和属性数据到数据之后,不需要更新就将新添加和变动的模型类型和属性在业务环境中启用。4.如权利要求1、2或3所述的基于搜索引擎和关系型数据库实现动态建模的管理系统,其特征在于,所述基础模型管理组件包括以下功能接口:Create APP,用于创建管理模型的容器;Create Base Model,用于创建基础模型,以及基础模型中的基础属性;Create Base Property,用于创建基础模型的基础属性;Create Link,用于创建多模型之间对应的关联关系;Alter,用于修改基础模型和属性的信息;
Delete,用于删除基础模型和基础属性的信息;Search,用于查询基础模型和基础属性的信息;Export,用于导出模型的信息;Import,用于为目标环境导入模型信息;Generate Update File,用于生成更新数据结构和实现代码文件。5.如权利要求1所述的基于搜索引擎和关系型数据库实现动态建模的管理系统,其特征在于,所述的动态模型管理组件提供的统一操作包括:创建基于基础模型的动态模型,以及为基础模型创建动态类型和动态属性,并支持动态类型的层级结构的创建;所述动态模型,是继承于基础模型的定义与关系定义而形成...

【专利技术属性】
技术研发人员:李鹏李帮贵李丹
申请(专利权)人:西安阳易信息技术有限公司
类型:发明
国别省市:

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

1