从概念数据模型生成软件工件制造技术

技术编号:28767389 阅读:17 留言:0更新日期:2021-06-09 10:52
本文公开了用于从单个概念数据模型生成可跨不同平台操作的软件工件的系统、方法和计算机程序产品实施方式。可以使用元数据增强概念数据模型,元数据允许创建平台特定的逻辑数据模型,其中包括用于创建可部署软件工件的附加元数据。组织可以随后修改概念数据模型,并且可以跨所有集成平台更新和重新部署所有相关软件工件。这种概念数据模型还促进描述组织技术基础设施中数据实体的文档的创建,数据交换系统使用的映射文件的创建,以及从多个数据存储中跨数据环境收集数据的整合查询的处理。存储中跨数据环境收集数据的整合查询的处理。存储中跨数据环境收集数据的整合查询的处理。

【技术实现步骤摘要】
【国外来华专利技术】从概念数据模型生成软件工件
[0001]相关申请的交叉引用
[0002]本申请要求于2019年8月27日提交的标题为GENERATING SOFTWARE ARTIFACTS FROM A CONCEPTUAL DATA MODEL的美国专利申请第16/552,755的优先权,其出于所有目的通过引用并入本文。

技术介绍

[0003]组织可采用代表组织技术系统中使用的信息的数据模型。数据模型用作抽象概念,该抽象概念允许组织更好地管理、控制和组织数据,改善和增强系统之间的通信并创建更好文档。当将表达与任何特定的物理存储实施或解决方案解耦时,组织可使用实体关系图、XML架构或限定体系结构的其他合适结构来构建和表达这些数据模型。这些数据模型可以用作为组织内工程师提供有价值的参考,并且此外,可以在服务于各种用例的各种编程环境中部署、利用和使用。
附图说明
[0004]并入本文并构成说明书的一部分的附图,示出了本公开的实施方式。并且与说明书一起用来进一步解释本公开的原理,使本领域技术人员能够进行和使用实施方式。
[0005]图1是根据一些实施方式的包括概念数据模型的环境的框图。
[0006]图2是根据一些实施方式的包括数据建模工具的体系结构的框图。
[0007]图3示出了根据一些实施方式的基于概念数据模型创建软件工件的方法的流程图。
[0008]图4示出了根据一些实施方式的基于概念数据模型生成开发人员文档的方法的流程图。
[0009]图5是可用于实施各种实施方式的示例计算机系统。r/>[0010]在附图中,相似的附图标记通常表示相同或相似的元件。另外,通常附图标记的最左边的数字表示该附图标记首次出现。
具体实施方式
[0011]本文提供了用于从单个概念数据模型生成可跨不同平台操作的软件工件的系统、装置、设备、方法和/或计算机程序产品实施方式、和/或其组合和子组合。
[0012]概念数据模型可表示在组织技术环境中使用的数据。这样的技术环境可以包括利用、结合以及取决于各种类型数据的各种软件应用程序、系统和工具。软件应用程序可以在不同的平台上运行并且可以在不同的环境中托管,并且软件应用程序所使用的数据存储在不同的数据存储中(如数据库、数据湖、文本文件等)。概念数据模型可以在集中的位置跨这些数据源对数据进行分类和映射。组织可以使用合适的数据建模技术、接口或工具来创建这样的概念数据模型,并且本领域的技术人员将理解,通常存在广泛的技术来创建数据模型。
[0013]组织可以在一个或多个云服务平台中、上、和/或跨一个或多个云服务平台来容纳、存储和访问数据。这些平台可提供各种功能和不同的存储机制来容纳组织的数据。与其他平台相比,这种平台可能具有优点和缺点,并且因此,不同的平台可能更适合组织所使用的特定数据驱动的应用程序。因此,组织可以跨其技术环境使用多个云服务平台。组织还可以在例如数据中心、托管设施、办公室等内部管理的服务器上,容纳数据并运行应用程序,在下文的公开中,该服务器也可以称为平台。
[0014]平台可以容纳各种存储机制。例如,一些平台可以提供/包括关系数据库、图形数据库、柱列数据库、内存数据库、NoSQL数据库、键值存储、数据湖或其他合适的存储机制来存储数据。此外,可以提供多种解决方案、产品、方法等来满足或提供这些存储机制。例如,组织可能能够在特定平台上的特定关系数据库之间进行选择。
[0015]组织可以创建描述跨这些平台和数据存储机制的应用程序和数据的概念数据模型。概念数据模型提供的抽象概念提供了多个实际的好处。例如,概念数据模型可以用作组织内工程师的参考。一旦被开发,组织还可以在各种编程环境和用例中使用概念数据模型。例如,组织可以使用概念数据模型来创建、部署和维护物理实体(例如,实际表、文件等)、逻辑数据模型和物理数据模型。组织可以创建软件工件(software artifacts),例如数据定义语言(DDL)脚本和数据操作语言(DML)脚本,用于跨数据环境实例化、创建和维护这些实体。
[0016]然而,当组织利用多个平台时,每个平台可能具有软件工件必须遵守的特有要求和协议。组织可能需要开发大量的软件工件,以覆盖这些平台中使用的每个集成平台和存储机制。此外,当概念数据模型可能频繁地以任何方式更改时(例如在添加新字段的软件更新期间),组织可能必须手动修改和更新现有的软件工件,并跨每个平台重新部署所有软件工件。对于使用许多平台和存储机制的组织,创建和维护软件工件可能会非常繁重。没有任何旧数据建模技术或系统可以提供减轻这种负担的解决方案。
[0017]因此,存在利用单一概念数据模型的需求,该概念数据模型促进了跨不同平台生成多个逻辑数据模型,以促进创建跨所有集成平台和数据存储可操作的软件工件。通过从单个概念数据模型,生成跨所有集成平台实例化和维护数据环境所需的全部软件工件,组织可以更好地从集中位置管理其数据环境,使对集成软件应用程序的发布软件更新自动化,并且最终节省时间、金钱和资源。
[0018]图1是根据一些实施方式的包括概念数据模型的环境100的框图。本文中的任何操作可以由图表中的任意类型的结构(诸如模块或专用设备),以硬件、软件或其任意组合来执行。环境100可包括概念数据模型110、数据模型字典112、数据模型图114、第一元数据116、平台120、逻辑数据模型130、第二元数据132、物理数据模型140、部署工具150、安装脚本152、填充脚本154和文档156。
[0019]概念数据模型110可以是描述数据环境的数据模型。概念数据模型110可表示由软件应用程序使用的数据,或者跨组织利用的平台存储的数据。概念数据模型110可表示在没有参考物理设备、体系结构细节、实施细节、存储特性等的情况下组织的数据,并且因此是数据实体的逻辑表示。组织可使用任意合适的数据建模技术或工具(例如XML文档,建模语言或合适的设计工具)创建概念数据模型110。概念数据模型110可促进创建跨平台120和其中提供的不同存储机制的软件工件,例如,安装脚本152、填充脚本154和文档156。通过仅维
护概念数据模型110,组织可以避免维护每个平台特有的逻辑数据模型、组织技术环境内集成的每个存储机制特有的物理数据模型、以及下文要详细描述的用于管理数据环境的软件工件。概念数据模型110可包括数据模型字典112、数据模型图114和第一元数据116。
[0020]数据模型字典112可以是组织技术系统内存在的数据实体的文本或其他合适的语法描述。这样的实体可包括数据库表、文档、文件、数据湖等。数据模型字典112可包括实体名称、数据类型、字段宽度或尺寸、排序、实体之间的关系以及描述数据实体或元素的物理属性的其他合适的信息。在一些实施方式中,数据模型字典112可以是ASCII文本文件、XML文件或其他合适的文本定义文件。可以使用合适的数据建模工具、编辑器、工具包等,来创建和维护数据模型字典112。在一个实施方式中,可以从实体关系图(ERD)或其他视觉表示中的信息或者本文档来自技高网...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种计算机实施的方法,包括:由一个或多个处理器定义概念数据模型,所述概念数据模型包括实体、多个平台和描述所述多个平台中每个平台的部署要求的第一元数据;由所述一个或多个处理器,基于所述概念数据模型和用于所述多个平台中每个平台的所述第一元数据,创建逻辑数据模型,所述逻辑数据模型包括描述存储机制和存储特定实体定义的部署要求的第二元数据;由所述一个或多个处理器,基于所述第二元数据和所述存储特定实体定义,来生成用于所述多个平台中每个平台的安装脚本和数据填充脚本;以及由所述一个或多个处理器,使用所述安装脚本和所述数据填充脚本,将所述实体部署到所述多个平台中的每个平台中。2.根据权利要求1所述的方法,还包括:由所述一个或多个处理器,接收对所述概念数据模型的更改;由所述一个或多个处理器,基于所述更改和所述概念数据模型,为所述多个平台中的每个平台创建更新的安装脚本和更新的数据填充脚本;以及由所述一个或多个处理器,使用所述更新的安装脚本和所述更新的数据填充脚本,将所述实体重新部署到所述多个平台中的每个平台中。3.根据权利要求1所述的方法,生成所述数据填充脚本还包括:由所述一个或多个处理器,确定与所述实体相对应的实体类型;由所述一个或多个处理器,基于所述第一元数据和所述实体类型获得随机化数据;以及由所述一个或多个处理器,创建数据填充脚本,以使用所述随机化数据为所述多个平台中每个平台填充所述实体。4.根据权利要求1所述的方法,还包括:由所述一个或多个处理器,确定与所述实体相对应的实体类型;以及由所述一个或多个处理器,基于所述第一元数据和所述实体类型创建文档,其中所述文档描述所述实体和所述实体类型。5.根据权利要求1所述的方法,还包括:由所述一个或多个处理器,基于所述概念数据模型创建映射文件。6.根据权利要求1所述的方法,还包括:由所述一个或多个处理器,向查询代理公开所述概念数据模型以处理整合查询。7.根据权利要求1所述的方法,其中所述概念数据模型还包括第二实体以及所述实体与所述第二实体之间的关系。8.一种系统,包括:存储器;以及至少一个处理器,耦接到所述存储器并且被配置为:定义概念数据模型,所述概念数据模型包括实体、多个平台和描述所述多个平台中每个平台的部署要求的第一元数据;基于所述概念数据模型和用于所述多个平台中每个平台的所述第一元数据,创建逻辑数据模型,所述逻辑数据模型包括描述存储机制和存储特定实体定义的部署要求的第二元
数据;基于所述第二元数据和所述存储特定实体定义,来生成用于所述多个平台中每个平台的安装脚本和数据填充脚本;以及使用所述安装脚本和所述数据填充脚本,将所述实体部署到所述多个平台中的每个平台中。9.根据权利要求8所述的系统,所述至少一个处理器还被配置为:接收对所述概念数据模型的更改;基于所述更改和所述概念数据模型,为所述多个平台中的每个平台创建更新的...

【专利技术属性】
技术研发人员:L
申请(专利权)人:易享信息技术有限公司
类型:发明
国别省市:

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

1