数据表的创建方法、装置、设备及存储介质

文档序号:191230 发布日期:2021-11-02 浏览:34次 >En<

阅读说明:本技术 数据表的创建方法、装置、设备及存储介质 (Data table creating method, device, equipment and storage medium ) 是由 李立彪 王煜 焦江昆 于 2021-07-30 设计创作,主要内容包括:本申请提供一种数据表的创建方法、装置、设备及存储介质,其中,数据表的创建方法包括步骤:当接收到数据表的创建请求时,获取预先配置的数据表模型;根据用户针对所述数据表模型所选择的配置信息以及输入的表名主体,生成目标数据表的数据表名;获取针对所述目标数据表的填充信息;将所述填充信息输入至所述目标数据表的相应字段中。本申请能够创建规范统一的数据表,进而建立规范的数仓,并减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率。另一方面,本申请能够降低数仓维护成本和数据使用成本。(The application provides a method, a device, equipment and a storage medium for creating a data table, wherein the method for creating the data table comprises the following steps: when a data table creation request is received, a pre-configured data table model is obtained; generating a data table name of a target data table according to configuration information selected by a user aiming at the data table model and an input table name main body; acquiring filling information aiming at the target data table; and inputting the filling information into a corresponding field of the target data table. The method and the device can create the standard and uniform data table, further establish the standard number bins, reduce communication cost among the number bin developers, and improve development efficiency of the number bin developers. On the other hand, the method and the device can reduce the maintenance cost of the data warehouse and the use cost of the data.)

数据表的创建方法、装置、设备及存储介质

技术领域

本申请涉及计算机技术领域,具体而言,涉及一种数据表的创建方法、装置、设备及存储介质。

背景技术

目前互联网行业的大数据应用中,数据建模只承载快速建表功能,没有对建表的标准提供支持,存在数仓维护成本高和数据使用成本高的缺点。

发明内容

本申请实施例的目的在于提供一种数据表的创建方法、装置、设备及存储介质,用以得到规范的数仓,并减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率、降低数仓维护成本和数据使用成本。

为此本申请第一方面公开一种数据表的创建方法,所述方法包括:

当接收到数据表的创建请求时,获取预先配置的数据表模型;

根据用户针对所述数据表模型所选择的配置信息以及输入的表名主体,生成目标数据表的数据表名;

获取针对所述目标数据表的填充信息;

将所述填充信息输入至所述目标数据表的相应字段中。

本申请第一方面的方法能够辅助数仓开发人员创建命名规范统一的数据表,进而使得数仓的数据表能够便于阅读理解,进而使得一数仓开发人员能够快速理解并操作其他数仓开发人员创建的数据表,减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率,尤其是,随着大数据的爆发式增长,每天新增的数据又数不胜数,数仓团队在组织这些数据,新建或修改表的频率越来越高,但是数仓团队成员众多,业务错综复杂这一情形下,或者随着人员变动,数仓开发人员A可能对已经离职的数仓开发人员B之前开发的数据表没有理解清楚这一情形下,或者新入职的数仓开发人员C刚入职并不能理解现有数仓开发人员开发的数据表这一情形下,能够减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率、降低数仓维护成本和数据使用成本。

另一方面,由于本申请第一方面方法还能够根据填充信息自动填充目标数据表,进而可进一步提高数仓开发人员开发效率。

相比而言,现有的行业解决方案只提供的根据模型快速建表功能,未能解决表名规范问题,尤其随着业务的变动需要建立大量的数据表的情况下,由于表名不规范,导致开发人员之间的沟通效率,另一方面,由于现有技术无法实现自动建立数据表,进而降低了开发人员的效率。

在本申请第一方面中,作为一种可选的实施方式,在所述获取预先配置的数据表模型之前,所述方法还包括:

获取若干个主题并形成主题库;

获取若干针对数据表所解决问题的描述词并形成字典;

根据预设的层级配置信息,将所述主题库中的至少一个所述主题与所述字典中的至少一个所述描述词进行组合,并得到所述数据表模型。

在本可选的实施方式中,通过根据层级配置信息将主题库的主题与描述词进行组合,可构成一数据表命名规范。

在本申请第一方面中,作为一种可选的实施方式,所述获取针对所述目标数据表的填充信息,包括:

根据所述目标数据表的主题,和/或,所述目标数据表的描述词匹配引用数据表;

对所述引用数据表进行解析,至少得到所述引用数据表的字段信息;

将所述引用数据表的字段信息作为所述填充信息。

本可选的实施方式能够通过根据目标数据表的主题,和/或,所述目标数据表的描述词匹配引用数据表,并对引用数据表进行解析,进而能够得到引用数据表的字段信息,从而能够将引用数据表的字段信息作为填充信息。

在本申请第一方面中,作为一种可选的实施方式,所述获取针对所述目标数据表的填充信息,包括:

获取用户输入的数据库操作数据;

对所述数据库操作数据进行解析,得到所述填充信息。

本可选的实施方式能够通过获取用户输入的数据库操作数据,进而通过数据库操作数据进行解析,得到填充信息。

在本申请第一方面中,作为一种可选的实施方式,所述获取针对所述目标数据表的填充信息,包括:

获取用户输入的查询条件;

根据所述查询条件对历史数据表填充信息库进行模糊搜索,得到所述填充信息,其中,所述历史数据表填充信息库基于所述历史数据表在创建时保存的字段信息生成。

本可选的实施方式,能够基于历史数仓在创建时保存的填充信息,和用户输入的查询条件,进行模糊搜索,得到填充信息。例如,用户输入“u”,经过模糊搜索后,得到字段“user ID”。

本申请第二方面公开一种数据表的创建装置,所述装置包括:

第一获取模块,用于当接收到数据表的创建请求时,获取预先配置的数据表模型;

生成模块,用于根据用户针对所述数据表模型所选择的配置信息以及输入的表名主体,生成目标数据表的数据表名;

第二获取模块,用于获取针对所述目标数据表的填充信息;

填充模块,用于将所述填充信息输入至所述目标数据表的相应字段中。

本申请第二方面的装置,能够辅助数仓开发人员创建命名规范统一的数据表,进而使得数仓的数据表能够便于阅读理解,进而使得一数仓开发人员能够快速理解并操作其他数仓开发人员创建的数据表,减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率,尤其是,随着大数据的爆发式增长,每天新增的数据又数不胜数,数仓团队在组织这些数据,新建或修改表的频率越来越高,但是数仓团队成员众多,业务错综复杂这一情形下,或者随着人员变动,数仓开发人员A可能对已经离职的数仓开发人员B之前开发的数据表没有理解清楚这一情形下,或者新入职的数仓开发人员C刚入职并不能理解现有数仓开发人员开发的数据表这一情形下,能够减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率、降低数仓维护成本和数据使用成本。

另一方面,由于本申请第二方面的装置还能够根据填充信息自动填充目标数数据表,进而可进一步提高数仓开发人员开发效率。

相比而言,现有的行业解决方案只提供的根据模型快速建表功能,未能解决表名规范问题,尤其随着业务的变动需要建立大量的数据表的情况下,由于表名不规范,导致开发人员之间的沟通效率,另一方面,由于现有技术无法实现自动建立数据表,进而降低了开发人员的效率。

在本申请第二方面中,作为一种可选的实施方式,所述装置还包括:

第三获取模块,用于获取若干个主题并形成主题库;

第四获取模块,用于获取若干针对数据表所解决问题的描述词并形成字典;

层级配置模块,用于根据预设的层级配置信息,将所述主题库中的至少一个所述主题与所述字典中的至少一个所述描述词进行组合,并得到所述数据表模型。

在本可选的实施方式中,通过根据层级配置信息将主题库的主题与描述词进行组合,可构成一数据表命名规范。

在本申请第二方面中,作为一种可选的实施方式,所述第二获取模块,包括:

匹配子模块,用于根据所述目标数据表的主题,和/或,所述目标数据表的描述词匹配引用数据表;

解析子模块,用于对所述引用数据表进行解析,至少得到所述引用数据表的字段信息;

关联子模块,用于将所述引用数据表的字段信息作为所述填充信息。本可选的实施方式能够通过根据目标数据表的主题,和/或,所述目标数据表的描述词匹配引用数据表,并对引用数据表进行解析,进而能够得到引用数据表的字段信息,从而能够将引用数据表的字段信息作为填充信息。

本申请第三方面公开一种数据表的创建设备,所述设备包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算可读指令被所述处理器执行时,执行本申请第一方面公开的数据表的创建方法。

本申请第三方面的设备,能够辅助数仓开发人员创建命名规范统一的数据表,进而使得数仓的数据表能够便于阅读理解,进而使得一数仓开发人员能够快速理解并操作其他数仓开发人员创建的数据表,减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率,尤其是,随着大数据的爆发式增长,每天新增的数据又数不胜数,数仓团队在组织这些数据,新建或修改表的频率越来越高,但是数仓团队成员众多,业务错综复杂这一情形下,或者随着人员变动,数仓开发人员A可能对已经离职的数仓开发人员B之前开发的数据表没有理解清楚这一情形下,或者新入职的数仓开发人员C刚入职并不能理解现有数仓开发人员开发的数据表这一情形下,能够减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率、降低数仓维护成本和数据使用成本。另一方面,本申请的设备可进一步提高数仓开发人员开发效率。

本申请第四方面公开一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被调用时,执行本申请第一方面公开的数据表的创建方法。

本申请第四方面的存储介质,能够辅助数仓开发人员创建命名规范统一的数据表,进而使得数仓的数据表能够便于阅读理解,进而使得一数仓开发人员能够快速理解并操作其他数仓开发人员创建的数据表,减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率,尤其是,随着大数据的爆发式增长,每天新增的数据又数不胜数,数仓团队在组织这些数据,新建或修改表的频率越来越高,但是数仓团队成员众多,业务错综复杂这一情形下,或者随着人员变动,数仓开发人员A可能对已经离职的数仓开发人员B之前开发的数据表没有理解清楚这一情形下,或者新入职的数仓开发人员C刚入职并不能理解现有数仓开发人员开发的数据表这一情形下,能够减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率、降低数仓维护成本和数据使用成本。另一方面,本申请的设备可进一步提高数仓开发人员开发效率。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1是本申请实施例一公开的一种数据表的创建方法的流程示意图;

图2是现有的行业解决方案的流程示意图;

图3是本申请实施例一公开的一种数据表的创建方法的框架设计示意图;

图4是本申请实施例二公开的一种数据表的创建方法的流程示意图;

图5是本申请实施例三公开的一种数据表的创建方法的流程示意图;

图6是本申请实施例四公开的一种数据表的创建方法的流程示意图;

图7是本申请实施例五公开的一种数据表的创建装置的结构示意图;

图8是本申请实施例六公开的一种数据表的创建设备的结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。

实施例一

请参阅图1,图1是本申请实施例公开的一种数据表的创建方法的流程示意图。如图1所示,本申请实施例的数据表的创建方法包括以下步骤:

101、当接收到数据表的创建请求时,获取预先配置的数据表模型;

102、根据用户针对数据表模型所选择的配置信息以及输入的表名主体,生成目标数据表的数据表名;

103、获取针对目标数据表的填充信息;

104、将填充信息输入至目标数据表的相应字段中。

在本申请实施例中,作为一个示例,用户(开发员)可以通过点击数据表创建按钮,以触发数据表创建事件,此时数据表创建事件被终端设备检测到并作为目标数据表的创建请求,其中,用户可在点击数据创建按钮后,选择数据表模型的配置信息。

进一步地,数据表模型的配置信息包括目标数据表的主题、描述词,其中,目标数据表主题用于概括目标数据表中的数据是描述“客户域”,“事件域”,"财务域"中的任一业务数据,又例如,目标数据表的主题用于描述业务线A,业务线B等站业务领域。

在本申请实施例中,在创建数据表时,由于目标数据表的表名中的词语是用户基于数据表模型选择,进而用户选用词语的规范通过数据表模型进行约束,这样一来,通过步骤101-104,能够辅助数仓开发人员创建规范统一的数据表,使得数据表能够便于阅读理解,进而使得一数仓开发人员能够快速理解并操作其他数仓开发人员创建的数据表,减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率,尤其是,随着大数据的爆发式增长,每天新增的数据又数不胜数,数仓团队在组织这些数据,新建或修改表的频率越来越高,但是数仓团队成员众多,业务错综复杂这一情形下,或者随着人员变动,数仓开发人员A可能对已经离职的数仓开发人员B之前开发的分层表没有理解清楚这一情形下,或者新入职的数仓开发人员C刚入职并不能理解现有数仓开发人员开发的分层表这一情形下,能够减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率,降低数仓维护成本和数据使用成本。

另一方面,由于本申请实施例中的方法还能够根据填充信息自动填充目标数据表,进而可进一步提高数仓开发人员开发效率。

然而与本申请实施例的方法相比,现有的行业解决方案(如图2所示)只提供的根据模型快速建表功能,未能解决表名规范问题,尤其随着业务的变动需要建立大量的数据表的情况下,由于表名不规范,导致开发人员之间的沟通效率,另一方面,由于现有技术无法实现自动建立数据表,进而降低了开发人员的效率。

在本申请实施例中,目标数据表的表名中可以使用到多个词语,例如目标数据表的表名可以是“client_finance”这类由字符“client”组成,其中,多个词语之间的命名顺序也通过数据表模型进行约束,进而进一步规范目标数据表。

在本申请实施例中,填充信息可以包括字段名称、字段类型、字段备注中,也可以包括除字段名称、字段类型、字段备注之外的数据表信息。

在本申请实施例中,在配置时,用户可在数据表模型中选择主题、描述词,并输入表名主体,进而通过JSON(JavaScript Object Notation,JSON,对象简谱)格式将主题与描述词、表名主体进行组合,进而在执行创建目标数据表时,将该JSON数组作为输入数据,从而依据该输入数据创建目标数据。

在本申请实施例中,主题与描述词的组合方式有多种,其中,每一种主题与描述词的组合方式对应一种场景,例如在A1场景中,B主题与描述词C固定关联,或在A2场景中,B1主题和B2主题与描述词关联,其中B2是主题B1的子主题。

进一步地,在一些实施方式中,当用户在数据表模型中选择主题和描述词,本申请实施例的方法还包括以下步骤:

根据描述词获取描述词关联的词根中文、词根描述中的一种;

以及,在将主题与描述词、表名主体进行组合时,加入词根中文、词根描述中的一种的词语并形成JSON数组。

在本申请实施例中,为得到数据表模型,在获取预先配置的数据表模型之前,本申请实施例的方法还包括以下步骤:

获取若干个主题并形成主题库;

获取若干针对数据表所解决问题的描述词并形成字典;

根据预设的层级配置信息,将主题库中的至少一个主题与字典中的至少一个描述词进行组合,并得到数据表模型。

在本可选的实施方式中,进一步可选地,主题从企业信息系统中的数据进行综合、归类和分析后自动得到,例如通过对企业中的业务信息进行分析可以将业务划分为3个类别,每个类别对应一个主题。进一步地,在主题库中,两个主题可以存在层级关系,即一个大类主题中向下关联若干子主题,这样一来,若干个主题以目录树的形式进行关联,进而当用户选定一大类主题时,可快速选定该大类主题下的子主题,进而提高数据表创建效率。

在本可选的实施方式,进一步可选地,主题库具有新增,修改,删除,移动等功能,例如可删除主题库中的一个主题,或者移动主题在目录树中的节点位置,以改变主题层级关系。

在本可选的实施方式中,字典中包括数据表所解决问题的描述词,例如对于分区字段,用dt来表示按日进行分区,mt来表示按月进行分区,用di来表示按照天进行增量,用hf来表示按照小时进行全量。另一方面,字典中还包括词根中文、词根描述、创建人、创建时间、修改时间,其中,词根中文、词根描述、创建人、创建时间、修改时间与词根简称关联,这样一来在用户在创建数据表时,就能够了解与词根简称相关的信息。需要说明是,词根简称指的是数据表所解决问题的描述词。

在本可选的实施方式中,进一步可选地,本申请实施例的方法还包括以下步骤:

接收用户针对字典的编辑请求;

根据编辑请求编辑字典中的词根中文、词根描述、创建人、创建时间、修改时间与词根简称中的一种信息。

在本申请实施例中,字典还具有可编辑功能,这样一来,用户可方便快捷地对字典进行更新维护。

在本可选的实施方式中,进一步可选地,本申请实施例的方法还包括以下步骤:

接收用户针对字典的删除请求;

根据编辑请求删除字典中的词根中文、词根描述、创建人、创建时间、修改时间与词根简称中的一种信息。

在本申请实施例中,字典还具有可编辑功能,这样一来,用户可方便快捷地对字典进行更新维护。

在本申请实施例中,如图3所示,本申请实施例的方法还包括步骤:将目标数据表存在模型库中,即如图3所示,通过表模型管理将目标数据表存在模型库中,这样一来,可便于后续需要创建相同的数据表时,能够通过表模型管理引用模型库中的数据表。

在本申请实施例中,可选地,在步骤103:获取针对目标数据表的填充信息之后,本申请实施例的方法还包括以下步骤:

根据主题、描述词、表名主体判断模型库中是否存在相同的数据表,若是,则将相同的数据表作为目标数据表。

在本申请实施例中,通过先判断模型库中是否存在相同的数据表,可避免在模型库中存在相同的数据表的前提下,重复执行数据表创建操作,从而降低由执行数据库语句而导致的性能消耗。

在本申请实施例中,可选地,在步骤104:将填充信息输入至目标数据表的相应字段中之前,本申请实施例的方法还包括以下步骤:

判断用户是否输入填充信息,若是则根据用户输入的填充信息填充目标数据表。

在本申请实施例中,通过判断用户是否有手动输入填充信息,可优先根据用户手动输入的填充信息填充目标数据表。需要说明的是,用户输入的填充信息不同于用户输入的数据库操作数据,其中,用户输入的填充信息不需要经过解析既能得到填充信息。

在本申请实施例中,在步骤101:获取预先配置的数据表模型之后,步骤102:根据用户针对数据表模型所选择的配置信息以及输入的表名主体,生成目标数据表的数据表名之前,本申请实施例的方法还包括以下步骤:

判断主题与描述词存在关联关系,若不存在则生成修改提示展示修改提示,以使得数仓开发人员能够根据提示重新选择主题或重新选择描述词。

在本申请实施例中,通过判断主题与描述词存在关联关系,能够进一步增强主题与描述词关联度,使得创建的目标数据表的命名更加规范。

在本申请实施例中,在步骤104:将填充信息输入至目标数据表的相应字段中之后,本申请实施例的方法还可以包括:

获取用户针对目标数据表设置的操作权限字符;

将操作权限字符与主题、描述词关联。

在本申请实施例中,通过获取用户针对目标数据表设置的操作权限字符,进而能够将操作权限字符与主题、描述词关联,进而使得其他数仓开发人员能够快速了解该目标数据表的操作要求,避免误操作。进一步地,操作权限字符可以是修改、新增、删除、查询中的一种或两种以上。

需要说明的是,在本申请实施例,数据表的创建方法对应的执行主体可以是移动终端,也可以是台式终端,例如,本申请实施例的数据表的创建方法可以由苹果手机执行,也可以是台式电脑执行。再需要说明的是,本申请实施例的数据表的创建方法还可以由其他具有计算、通信功能的电子设备执行,本申请实施例对此不作赘述。

实施例二

请参阅图4,图4是本申请实施例公开的一种数据表的创建方法的流程示意图。如图4所示,本申请实施例的数据表的创建方法可以包括步骤:

201、当接收到数据表的创建请求时,获取预先配置的数据表模型;

202、根据用户针对数据表模型所选择的配置信息以及输入的表名主体,生成目标数据表的数据表名;

203、根据目标数据表的主题,和/或,目标数据表的描述词匹配引用数据表;

204、对引用数据表进行解析,至少得到引用数据表的字段信息;

205、将引用数据表的字段信息作为填充信息;

206、将填充信息输入至目标数据表的相应字段中。

本可选的实施方式能够通过根据目标数据表的主题,和/或,目标数据表的描述词匹配引用数据表,并对引用数据表进行解析,进而能够得到引用数据表的字段信息,从而能够将引用数据表的字段信息作为填充信息。需要说明的是,引用数据表的schema信息包含有引用数据表的字段信息,因此通过解析引用数据表的schema信息能够得到引用数据表的字段信息。

需要说明的是,关于步骤201、步骤202、步骤206的说明请参考本申请实施例一中的步骤101、步骤102、步骤104的详细说明,本申请实施对此不作赘述。

实施例三

请参阅图5,图5是本申请实施例公开的一种数据表的创建方法的流程示意图。如图5所示,本申请实施例的数据表的创建方法可以包括步骤:

301、当接收到数据表的创建请求时,获取预先配置的数据表模型;

302、根据用户针对数据表模型所选择的配置信息以及输入的表名主体,生成目标数据表的数据表名;

303、获取用户输入的查询条件;

304、根据查询条件对历史数据表填充信息库进行模糊搜索,得到填充信息,其中,历史数据表填充信息库基于历史数据表在创建时保存的字段信息生成;

305、将填充信息输入至目标数据表的相应字段中。

本可选的实施方式能够基于历史数据表在创建时保存的填充信息,和用户输入的查询条件,进行模糊搜索,得到填充信息。

需要说明的是,关于步骤301、步骤302、步骤305的说明请参考本申请实施例一中的步骤101、步骤102、步骤104的详细说明,本申请实施对此不作赘述。

实施例四

请参阅图6,图6是本申请实施例公开的一种数据表的创建方法的流程示意图。如图6所示,本申请实施例的数据表的创建方法可以包括步骤:

401、当接收到数据表的创建请求时,获取预先配置的数据表模型;

402、根据用户针对数据表模型所选择的配置信息以及输入的表名主体,生成目标数据表的数据表名;

403、获取用户输入的数据库操作数据;

404、对数据库操作数据进行解析,得到填充信息;

405、将填充信息输入至目标数据表的相应字段中。

本可选的实施方式能够通过获取用户输入的数据库操作数据,进而通过数据库操作数据进行解析,得到填充信息。

需要说明的是,用户输入的数据库操作数据是HQL(Hive SQL)格式的数据,进而对该数据进行解析后可以得到填充信息。

需要说明的是,关于步骤401、步骤402、步骤405的说明请参考本申请实施例一中的步骤101、步骤102、步骤104的详细说明,本申请实施对此不作赘述。

实施例五

请参阅图7,图7是本申请实施例公开的一种数据表的创建装置的结构示意图。如图7所示,本申请实施例的数据表的创建装置包括以下功能模块:

第一获取模块501,用于当接收到数据表的创建请求时,获取预先配置的数据表模型;

生成模块502,用于根据用户针对数据表模型所选择的配置信息以及输入的表名主体,生成目标数据表的数据表名;

第二获取模块503,用于获取针对目标数据表的填充信息;

填充模块504,用于将填充信息输入至目标数据表的相应字段中。

在本申请实施例中,作为一个示例,用户(开发员)可以通过点击数据表创建按钮,以触发数据表创建事件,此时数据表创建事件被终端设备检测到并作为目标数据表的创建请求,其中,用户可在点击数据创建按钮后,选择数据表模型的配置信息。

进一步地,数据表模型的配置信息包括目标数据表的主题、描述词,其中,目标数据表主题用于概括目标数据表中的数据是描述“客户域”,“事件域”,"财务域"中的任一业务数据,又例如,目标数据表的主题用于描述业务线A,业务线B等站业务领域。

在本申请实施例中,在创建数据表时,由于目标数据表的表名中的词语是用户基于数据表模型选择,进而用户选用词语的规范通过数据表模型进行约束,这样一来,就能够辅助数仓开发人员创建规范统一的数据表,数据表能够便于阅读理解,进而使得一数仓开发人员能够快速理解并操作其他数仓开发人员创建的数据表,减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率,尤其是,随着大数据的爆发式增长,每天新增的数据又数不胜数,数仓团队在组织这些数据,新建或修改表的频率越来越高,但是数仓团队成员众多,业务错综复杂这一情形下,或者随着人员变动,数仓开发人员A可能对已经离职的数仓开发人员B之前开发的分层表没有理解清楚这一情形下,或者新入职的数仓开发人员C刚入职并不能理解现有数仓开发人员开发的分层表这一情形下,能够减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率,降低数仓维护成本和数据使用成本。

另一方面,由于本申请实施例中的装置还能够根据填充信息自动填充目标数据表,进而可进一步提高数仓开发人员开发效率。

然而与本申请实施例的方法相比,现有的行业解决方案(如图2所示)只提供的根据模型快速建表功能,未能解决表名规范问题,尤其随着业务的变动需要建立大量的数据表的情况下,由于表名不规范,导致开发人员之间的沟通效率,另一方面,由于现有技术无法实现自动建立数据表,进而降低了开发人员的效率。

在本申请实施例中,目标数据表的表名中可以使用到多个词语,例如目标数据表的表名可以是“client_finance”这类由字符“client”组成,其中,多个词语之间的命名顺序也通过数据表模型进行约束,进而进一步规范目标数据表。

在本申请实施例中,填充信息可以包括字段名称、字段类型、字段备注中,也可以包括除字段名称、字段类型、字段备注之外的数据表信息。

在本申请实施例中,在配置时,用户可在数据表模型中选择主题、描述词,并输入表名主体,进而通过JSON(JavaScript Object Notation,JSON,对象简谱)格式将主题与描述词、表名主体进行组合,进而在执行创建目标数据表时,将该JSON数组作为输入数据,从而依据该输入数据创建目标数据。

在本申请实施例中,主题与描述词的组合方式有多种,其中,每一种主题与描述词的组合方式对应一种场景,例如在A1场景中,B主题与描述词C固定关联,或在A2场景中,B1主题和B2主题与描述词关联,其中B2是主题B1的子主题。

在本申请实施例中,作为一种可选的实施方式,为得到数据表模型,本申请实施例的装置还包括:

第三获取模块,用于获取若干个主题并形成主题库;

第四获取模块,用于获取若干针对数据表所解决问题的描述词并形成字典;

层级配置模块,用于根据预设的层级配置信息,将主题库中的至少一个主题与字典中的至少一个描述词进行组合,并得到数据表模型。

在本可选的实施方式中,进一步可选地,主题从企业信息系统中的数据进行综合、归类和分析后自动得到,例如通过对企业中的业务信息进行分析可以将业务划分为3个类别,每个类别对应一个主题。进一步地,在主题库中,两个主题可以存在层级关系,即一个大类主题中向下关联若干子主题,这样一来,若干个主题以目录树的形式进行关联,进而当用户选定一大类主题时,可快速选定该大类主题下的子主题,进而提高数据表创建效率。

在本可选的实施方式,进一步可选地,主题库具有新增,修改,删除,移动等功能,例如可删除主题库中的一个主题,或者移动主题在目录树中的节点位置,以改变主题层级关系。

在本可选的实施方式中,字典中包括数据表所解决问题的描述词,例如对于分区字段,用dt来表示按日进行分区,mt来表示按月进行分区,用di来表示按照天进行增量,用hf来表示按照小时进行全量。另一方面,字典中还包括词根中文、词根描述、创建人、创建时间、修改时间,其中,词根中文、词根描述、创建人、创建时间、修改时间与词根简称关联,这样一来在用户在创建数据表时,就能够了解与词根简称相关的信息。需要说明是,词根简称指的是数据表所解决问题的描述词。

在本申请实施例中,作为一种可选的实施方式,第二获取模块503,包括以下子功能模块:

匹配子模块,用于根据目标数据表的主题,和/或目标数据表的描述词匹配引用数据表;

第一解析子模块,用于对引用数据表进行解析,至少得到引用数据表的字段信息;

关联子模块,用于将引用数据表的字段信息作为填充信息。

本可选的实施方式能够通过根据目标数据表的主题,和/或,目标数据表的描述词匹配引用数据表,并对引用数据表进行解析,进而能够得到引用数据表的字段信息,从而能够将引用数据表的字段信息作为填充信息。需要说明的是,引用数据表的schema信息包含有引用数据表的字段信息,因此通过解析引用数据表的schema信息能够得到引用数据表的字段信息。

在本申请实施例中,作为一种可选的实施方式,第二获取模块503,包括以下子功能模块:

第一获取子模块,用于获取用户输入的查询条件;

搜索子模块,用于根据查询条件对历史数据表填充信息库进行模糊搜索,得到填充信息,其中,历史数据表填充信息库基于历史数据表在创建时保存的字段信息生成。

本可选的实施方式能够基于历史数仓在创建时保存的填充信息,和用户输入的查询条件,进行模糊搜索,得到填充信息。

在本申请实施例中,作为一种可选的实施方式,第二获取模块503,包括以下子功能模块:

第二获取子模块,用于获取用户输入的数据库操作数据;

第二解析子模块,用于对数据库操作数据进行解析,得到填充信息。

本可选的实施方式能够通过获取用户输入的数据库操作数据,进而通过数据库操作数据进行解析,得到填充信息。

进一步地,在一些实施方式中,本申请实施例的装置还包括:

第五获取模块,用于根据描述词获取描述词关联的词根中文、词根描述中的一种,其中,在将主题与描述词、表名主体进行组合时,加入词根中文、词根描述中的一种的词语并形成JSON数组。

在本可选的实施方式中,进一步可选地,本申请实施例的装置还包括以下功能模块:

接收模块,用于接收用户针对字典的编辑请求;

修改模块,用于根据编辑请求编辑字典中的词根中文、词根描述、创建人、创建时间、修改时间与词根简称中的一种信息。

在本申请实施例中,字典还具有可编辑功能,这样一来,用户可方便快捷地对字典进行更新维护。

在本可选的实施方式中,进一步可选地,接收模块,还用于接收用户针对字典的删除请求;

以及,修改模块还用于根据编辑请求删除字典中的词根中文、词根描述、创建人、创建时间、修改时间与词根简称中的一种信息。

在本申请实施例中,字典还具有可编辑功能,这样一来,用户可方便快捷地对字典进行更新维护。

在本申请实施例中,如图3所示,本申请实施例的装置包括保存模块,该保存模块用于将目标数据表存在模型库中,即如图3所示,通过表模型管理将目标数据表存在模型库中,这样一来,可便于后续需要创建相同的数仓时,能够通过表模型管理引用模型库中的数仓。

在本申请实施例中,可选地,本申请实施例的装置还包括以下功能模块:

判断模块,用于根据主题、描述词、表名主体判断模型库中是否存在相同的数据表,若是,则将相同的数据表作为目标数据表。

在本申请实施例中,通过先判断模型库中是否存在相同的数据表,可避免在模型库中存在相同的数据表的前提下,重复执行数据表创建操作,从而降低由执行数据库语句而导致的性能消耗。

在本申请实施例中,可选地,本申请实施例的判断模块还用于:

判断用户是否输入填充信息,若是则根据用户输入的填充信息填充目标数据表。

在本申请实施例中,通过判断用户是否有手动输入填充信息,可优先根据用户手动输入的填充信息填充目标数据表。需要说明的是,用户输入的填充信息不同于用户输入的数据库操作数据,其中,用户输入的填充信息不需要经过解析既能得到填充信息。

在本申请实施例中,本申请实施例的判断模块还用于:

判断主题与描述词存在关联关系,若不存在则生成修改提示展示修改提示,以使得数仓开发人员能够根据提示重新选择主题或重新选择描述词。

在本申请实施例中,通过判断主题与描述词存在关联关系,能够进一步增强主题与描述词关联度,使得创建的目标数据表的命名更加规范。

在本申请实施例中,本申请实施例的装置还可以包括:

第六获取模块,用于获取用户针对目标数据表设置的操作权限字符;

关联模块,用于将操作权限字符与主题、描述词关联。

在本申请实施例中,通过获取用户针对目标数据表设置的操作权限字符,进而能够将操作权限字符与主题、描述词关联,进而使得其他数仓开发人员能够快速了解该目标数据表的操作要求,避免误操作。进一步地,操作权限字符可以是修改、新增、删除、查询中的一种或两种以上。

需要说明的是,在本申请实施例,数据表的创建方法对应的执行主体可以是移动终端,也可以是台式终端,例如,本申请实施例的数据表的创建方法可以由苹果手机执行,也可以是台式电脑执行。再需要说明的是,本申请实施例的数据表的创建方法还可以由其他具有计算、通信功能的电子设备执行,本申请实施例对此不作赘述。

实施例六

请参阅图8,图8是本申请实施例公开的一种数据表的创建设备的结构示意图。如图8所示,本申请实施例的数据表的创建设备可以包括:

存储器601和处理器602,存储器601中存储有计算机可读指令,计算可读指令被处理器602执行时,执行本申请实施例一至四的公开的数据表的创建方法。

本申请实施例的数据表的创建设备通过执行数据表的创建方法,能够辅助数仓开发人员创建规范统一的数据表,进而使得数据表能够便于阅读理解,进而使得一数仓开发人员能够快速理解并操作其他数仓开发人员创建的数据表,减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率,尤其是,随着大数据的爆发式增长,每天新增的数据又数不胜数,数仓团队在组织这些数据,新建或修改表的频率越来越高,但是数仓团队成员众多,业务错综复杂这一情形下,或者随着人员变动,数仓开发人员A可能对已经离职的数仓开发人员B之前开发的分层表没有理解清楚这一情形下,或者新入职的数仓开发人员C刚入职并不能理解现有数仓开发人员开发的分层表这一情形下,能够减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率,降低数仓维护成本和数据使用成本。

另一方面,由于本申请实施例中的方法还能够根据填充信息自动填充目标数据表,进而可进一步提高数仓开发人员开发效率。

实施例七

本申请实施例公开一种存储介质,存储介质存储有计算机程序,计算机程序被调用时,执行本申请实施例一至四公开的数据表的创建方法。

本申请实施例的存储介质通过执行数据表的创建方法,能够辅助数仓开发人员创建规范统一的数据表,进而使得数据表能够便于阅读理解,进而使得一数仓开发人员能够快速理解并操作其他数仓开发人员创建的数据表,减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率,尤其是,随着大数据的爆发式增长,每天新增的数据又数不胜数,数仓团队在组织这些数据,新建或修改表的频率越来越高,但是数仓团队成员众多,业务错综复杂这一情形下,或者随着人员变动,数仓开发人员A可能对已经离职的数仓开发人员B之前开发的分层表没有理解清楚这一情形下,或者新入职的数仓开发人员C刚入职并不能理解现有数仓开发人员开发的分层表这一情形下,能够减少数仓开发人员之间的沟通成本,提高数仓开发人员开发效率,降低数仓维护成本和数据使用成本。

另一方面,由于本申请实施例中的方法还能够根据填充信息自动填充目标数据表,进而可进一步提高数仓开发人员开发效率。

在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

需要说明的是,功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。

以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

21页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:报表生成方法、装置及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!