一种多源数据统一SQL提供数据服务的方法技术

技术编号:23431710 阅读:24 留言:0更新日期:2020-02-25 13:06
本发明专利技术提供了一种多源数据统一SQL提供数据服务的方法,包括数据标签管理、数据元标准管理、数据模型管理、数据实例化管理和数据服务管理。本发明专利技术实现了数据的标准化管理,并通过标准化后的SQL提供了异构数据的统一CRUD方法。克服了数据格式、定义混乱,不同能力水平的DBA对数据库架构方式不同引起的混乱,不同DSL整合的困难。解决了保持其他系统独立性的情况下外部数据和系统融合分析的问题。实现了多数据系统、多数据来源的数据统一管理,数据层的标准化、资产化和服务化。

A method of providing data service with multi-source data unified SQL

【技术实现步骤摘要】
一种多源数据统一SQL提供数据服务的方法
本专利技术属于数据治理、数据中台领域,涉及一种多源数据统一SQL提供数据的方法。
技术介绍
当前社会,数据量爆炸式增长,针对不同的系统与业务需求,也诞生了很多种不同的数据库,包括关系数据库、文档数据库、检索数据库、列式数据库和图数据库等。不同数据库因设计方式不同,其数据内容格式相互独立,无法供云应用平台(Saas)有效整合利用,使得数据中台只能提供有限的数据服务,而且当前众多数据库也存在着一定的学习使用成本,对于大部分程序员显然是难以全面掌握的。数据标准定义自由度大,导致了数据混乱,难以利用,冗余度高,数据还有可能存在版本的迭代。缺乏可视化页面系统进行统一的管理。不同数据库采用不同的引擎,对字段、格式、命名方法也千差万别,无法跨平台使用数据,所能提供的数据服务存在局限性。通过一种SQL语句可以拿到不同数据库的数据或将流式数据存储到合适的数据库中,是数据治理中的紧迫需求。现有的跨平台查询方法往往存在跨平台有限,查询效率低下,易用性差,开源的跨平台查询方式已经放弃维护等诸多问题。传统的数据架构采用分散式建设,运行过程中产生的数据质量低下,难以形成数据资产。随着大数据技术的发展,运用开放式的微服务架构,实现自动化部署、集中部署,并通过Kubernetes集成微服务平台更适应企业的需求。而这其中的当务之急,就是规范数据中台提供数据接口的方式,统一SQL形成数据服务是解决数据接口的最优选择。
技术实现思路
针对目前多源数据存在新建数据存储难以记录,已存在数据记录无法统一管理,数据无法资产化,传统跨平台数据获取方式可跨平台有限且效率低下等诸多问题。本专利技术提供一种多源数据统一SQL提供数据服务的方法,解决保持其他系统独立性的情况下将外部数据和系统融合分析的问题。可以通过数据服务直接获取多种不同数据源的数据,且充分利用多源数据库的性能,保证数据服务的执行效率。为实现上述专利技术的目的,本专利技术设计了一种多源数据统一SQL提供数据服务的方法,其中包括数据标准化处理的方法;数据标签管理方法;有限制的多源数据统一SQL查询防止多源数据不兼容;保证数据服务效率的拉取数据方法;已存在外部数据存储接入系统并提供服务的方法,具体实现过程如下。步骤1,首先进行数据标准化处理:对数据元标准管理和对数据模型标准管理,分别加入版本控制单元,形成标准化的数据元和数据模型,并通过独立于系统的数据标签管理对数据元和数据模型进行定位。步骤2:数据标签管理方法:给每一个数据元和数据模型,加入标签,用以描述与定位模型,所述的数据标签管理是通过行业与标准分类细化标签,形成树状结构,标签通过系统创建或是数据流转写入产生,采用严格的继承结构,加入数据元和数据模型项相同和相似判断,所述的数据元和数据模型的创建基于标签树的末端叶子节点,即子标签为空,所以数据元和数据模型有且至少有一个标签,而每一个末端叶子节点有且只有一种相同定义的数据元或数据类型;数据流转写入将数据标注标签、用户画像标签、统计加工标签和模型挖掘标签加入标签树,保证无论内部还是外部数据元和数据模型都由至少一个标签,由系统统一管理。步骤3:然后进行有限制的多源数据统一SQL查询,继承于关系数据库的SQL,在其中加入限制(例如,在复杂嵌套的情况下,映射数组类型,如果数组里每个元素又是复合文档,而复合文档又非json类型,在不提前加以转换的情况下,统一SQL向外部数据库的映射将无法建立;又如父子文档,本专利技术采用的表设计是范式结构,如果没有预设置关联字段通过join来表达父子关联关系,就无法支持父子层次归属,所以加以限制),用来防止多源数据在映射中可能存在不兼容的问题。同时还针对各种主流数据库数据映射方式,进行自动化的数据格式获取。步骤4:进一步地,为保证数据服务效率的拉取数据,采用聚合下推的方式获取数据服务需要的数据,创建外部表与外部数据库实体表映射关系,实现本地对外部数据库数据的访问,将所需要进行的运算下沉到外部数据库中进行,只将运算结果进行返回,充分利用外部数据库的性能。步骤5:最后,根据统一SQL在本地服务器直接生成Restful风格的接口提供数据服务,供客户端使用。进一步还包括将已存在的外部数据存储接入本系统并提供服务,外部数据库数据资产化,扫描分析外部数据库数据架构,提取数据模型和字段信息,自动化生成字段格式,结合数据标签系统,将外部数据库数据架构记录在数据元和数据模型中,再通过多源数据统一SQL的方式生成数据服务。其中,步骤1中所述的数据元标准管理:定义一种约定大于配置思想的命名规范,通过将不同行业和标准分类的数据元名称,放入不同的schema当中,在创建时确保数据元的唯一性,并同时保存数据元的中文名称、数据类型、数据格式、创建与更新时间等信息;引入版本控制单元,进行数据元标准的版本迭代,版本迭代内容为数据类型,只可做扩展迭代,不能做增限迭代,增限情况将重新根据命名规范生成新的数据元以满足系统要求;步骤1中数据模型标准管理:数据模型严格通过数据元组合生成,通过命名规范确保数据模型的唯一性,并同时保存数据模型的中文名称、描述、创建与更新时间等信息。版本控制单元同时控制数据模型的迭代,数据模型中数据元版本迭代将导致x.y版本类型y+1,而且数据模型可以增加数据元,不能减少数据元,增加数据元,将导致x.y版本x+1。最后将数据模型数据元信息、版本信息和创建修改时间存入特定schema当中。其中,步骤3中针对各种主流数据库数据映射方式包括外部关系型数据库统一SQL操作,将外部关系型数据库的类型多对一的映射到RDM当中;在进行DDL操作的时候,首先针对外部数据库创建外部表服务,然后采用RDM方式创建外部表映射到外部数据库的实体表,外部表的字段名称必须与外部数据库实体表的字段名称一致,外部实体表的字段名称来自于数据模型标准化数据元,所以只需要查schema中的信息,自动生成LSQL建表语句创建外部表,包括外部表的表名称和字段名称,这样就可以实现外部表与外部数据库实体表的关联,关联过程会自动检查关联成功与否。或者,只选择外部数据库实体表的部分字段来映射出系统外部表,减少冗余信息,增加外部表的运行效率。外部关系型数据库统一SQL操作采用数据类型映射方式DM,针对各种主流数据库数据映射方式是采用一套据库数据类型映射方式DM,采用有限类型扩展转置的方式,数字类型只采用int4与int8,浮点类型采用numeric,字符类型只采用varchar(32)与text,时间类型只采用timestamp等。关系型数据库字段类型为A,外部表创建字段类型为B,这里需要说明,映射并非存储,只是系统对外部数据库的对应关系,这样有效的节约了系统的存储空间。其中,步骤3中针对各种主流数据库数据映射方式包括外部非关系型数据库统一SQL操作:非关系型数据库对字段通常无定义,而使用key-value的形式来存储数据,通过创建数据模型时添加定义value类型并加以保存,添加的类型作为外部表的字段类型,符合DM映射方式。嵌套的本文档来自技高网...

【技术保护点】
1.一种多源数据统一SQL提供数据服务的方法,其特征在于,包括以下步骤:/n步骤1,首先进行数据标准化处理:对数据元标准管理和对数据模型标准管理,分别加入版本控制单元,形成标准化的数据元和数据模型,并通过独立于系统的数据标签管理对数据元和数据模型进行定位;/n步骤2:数据标签管理方法:给每一个数据元和数据模型,加入标签,用以描述与定位模型,所述的数据标签管理是通过行业与标准分类细化标签,形成树状结构,标签通过系统创建或是数据流转写入产生,采用严格的继承结构,加入数据元和数据模型项相同和相似判断,所述的数据元和数据模型的创建基于标签树的末端叶子节点,即子标签为空,所以数据元和数据模型有且至少有一个标签,而每一个末端叶子节点有且只有一种相同定义的数据元或数据类型;数据流转写入将数据标注标签、用户画像标签、统计加工标签和模型挖掘标签加入标签树,保证无论内部还是外部数据元和数据模型都由至少一个标签,由系统统一管理;/n步骤3:然后进行有限制的多源数据统一SQL查询,继承于关系数据库的SQL,在其中加入限制,用来防止多源数据在映射中可能存在不兼容的问题;同时还针对各种主流数据库数据映射方式,进行自动化的数据格式获取;/n步骤4:进一步地,为保证数据服务效率的拉取数据,采用聚合下推的方式获取数据服务需要的数据,创建外部表与外部数据库实体表映射关系,实现本地对外部数据库数据的访问,将所需要进行的运算下沉到外部数据库中进行,只将运算结果进行返回,充分利用外部数据库的性能;/n步骤5:最后,根据统一SQL在本地服务器直接生成Restful风格的接口提供数据服务,供客户端使用。/n...

【技术特征摘要】
1.一种多源数据统一SQL提供数据服务的方法,其特征在于,包括以下步骤:
步骤1,首先进行数据标准化处理:对数据元标准管理和对数据模型标准管理,分别加入版本控制单元,形成标准化的数据元和数据模型,并通过独立于系统的数据标签管理对数据元和数据模型进行定位;
步骤2:数据标签管理方法:给每一个数据元和数据模型,加入标签,用以描述与定位模型,所述的数据标签管理是通过行业与标准分类细化标签,形成树状结构,标签通过系统创建或是数据流转写入产生,采用严格的继承结构,加入数据元和数据模型项相同和相似判断,所述的数据元和数据模型的创建基于标签树的末端叶子节点,即子标签为空,所以数据元和数据模型有且至少有一个标签,而每一个末端叶子节点有且只有一种相同定义的数据元或数据类型;数据流转写入将数据标注标签、用户画像标签、统计加工标签和模型挖掘标签加入标签树,保证无论内部还是外部数据元和数据模型都由至少一个标签,由系统统一管理;
步骤3:然后进行有限制的多源数据统一SQL查询,继承于关系数据库的SQL,在其中加入限制,用来防止多源数据在映射中可能存在不兼容的问题;同时还针对各种主流数据库数据映射方式,进行自动化的数据格式获取;
步骤4:进一步地,为保证数据服务效率的拉取数据,采用聚合下推的方式获取数据服务需要的数据,创建外部表与外部数据库实体表映射关系,实现本地对外部数据库数据的访问,将所需要进行的运算下沉到外部数据库中进行,只将运算结果进行返回,充分利用外部数据库的性能;
步骤5:最后,根据统一SQL在本地服务器直接生成Restful风格的接口提供数据服务,供客户端使用。


2.根据权利要求1所述的多源数据统一SQL提供数据服务的方法,其特征在于,进一步还包括将已存在的外部数据存储接入本系统并提供服务,外部数据库数据资产化,扫描分析外部数据库数据架构,提取数据模型和字段信息,自动化生成字段格式,结合数据标签系统,将外部数据库数据架构记录在数据元和数据模型中,再通过多源数据统一SQL的方式生成数据服务。


3.根据权利要求1所述的多源数据统一SQL提供数据服务的方法,其特征在于,步骤1中所述的数据元标准管理:定义一种约定大于配置思想的命名规范,通过将不同行业和标准分类的数据元名称,放入不同的schema当中,在创建时确保数据元的唯一性,并同时保存数据元的中文名称、数据类型、数据格式、创建与更新时间信息;引入版本控制单元,进行数据元标准的版本迭代,版本迭代内容为数据类型,只可做扩展迭代,不能做增限迭代,增限情况将重新根据命名规范生成新的数据元以满足系统要求;步骤1中数据模型标准管理:数据模型严格通过数据元组合生成,通过命名规范确保数据模型的唯一性,并同时保存数据模型的中文名称、描述、创建与更新时间信息;版本控制单元同时控制数据模型的迭代,数据模型中数据元版本迭代将导致x.y版本类型y+1,而且数据模型可以增加数据元,不能减少数据元,增加数据元,将导致x.y版本x+1;最后将数据模型数据元信息、版本信息和创建修改时间存入特定schema当中。


4.根据权利要求1所述的多源数据统一SQL提供数据服务的方法,其特征在于,步骤3中针对各种主流数据库数据映射方式包括外部关系型数据库统一SQL操作,将外部关系型数据库的类型多对一的映射到RDM当中;在进行DDL操作的时候,首先针对外部数据库创建外部表服务,然后采用RDM方式创建外部表映射到外部数据库的实体表,外部表的字段名称必须与外部数据库实体表的字段名称一致,外部实体表的字段名称来自于数据模型标准化数据元,所以只需要查schema中的信息,自动生成LSQL建表语句创建外部表,包括外部表的表名称和字段名称,这样就可以实现外部表与外部数据库实体表的关联,关联过程会自动检查关联成功与否;或者,只选择外部数据库实体表的部分字段来映射出系统外部表,减少冗余信息,增加外部表的运行效率。

【专利技术属性】
技术研发人员:冯凯贵恒王元卓
申请(专利权)人:中科院计算技术研究所大数据研究院
类型:发明
国别省市:河南;41

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

1