CN109697066B - 实现数据表拼接及自动训练机器学习模型的方法和系统 - Google Patents
实现数据表拼接及自动训练机器学习模型的方法和系统 Download PDFInfo
- Publication number
- CN109697066B CN109697066B CN201811619007.6A CN201811619007A CN109697066B CN 109697066 B CN109697066 B CN 109697066B CN 201811619007 A CN201811619007 A CN 201811619007A CN 109697066 B CN109697066 B CN 109697066B
- Authority
- CN
- China
- Prior art keywords
- field
- association
- fields
- data table
- spliced
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
提供了一种实现数据表拼接及自动训练机器学习模型的方法和系统。所述实现数据表拼接的方法包括:根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作,在任意两个数据表之间建立基于关联字段的关联关系;根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,设置数据表内的字段与主键之间的关联关系和/或字段的类型;以及基于数据表内的字段与主键之间的关联关系和/或字段的类型,在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表。
Description
技术领域
本发明总体说来涉及数据处理领域,更具体地讲,涉及一种实现数据表拼接的方法及系统、自动训练机器学习模型的方法及系统。
背景技术
随着各行业海量数据的出现,需要在越来越多的场景下对数据进行各种处理,例如,数据表拼接等处理。
然而,现阶段很少有工具化的拼表方式,通常需要程序员通过编写程序代码来实现数据表的快速拼接,为此,程序员需要掌握专门的编程语言以编写出用于拼表的程序代码,例如,使用SQL(Structured Query Language,结构化查询语言)语句通过编写程序的方式来实现数据表拼接,学习成本较高,提高了数据应用的技术门槛,例如,普通业务人员(例如,那些无法熟练编程的人员)就很难便捷高效地对数据表进行拼接。
发明内容
本发明的示例性实施例在于提供一种实现数据表拼接的方法和系统,以解决现有技术存在的不能便捷高效地实现数据表的拼接的问题。此外,本发明的示例性实施例还提供一种自动训练机器学习模型的方法和系统,以解决现有技术存在的无法有效地从数据拼接开始即自动化地执行机器学习的问题。
根据本发明的示例性实施例,提供一种实现数据表拼接的方法,包括:根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作,在任意两个数据表之间建立基于关联字段的关联关系;根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,设置数据表内的字段与主键之间的关联关系和/或字段的类型;以及基于数据表内的字段与主键之间的关联关系和/或字段的类型,在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表。
可选地,基于数据表内的字段与主键之间的关联关系和/或字段的类型在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表的步骤包括:针对所述关联起来的至少两个数据表,将具有基于关联字段的关联关系的两个数据表中的一个数据表拼接到另外一个数据表,直至拼接到指定数据表,其中,当所述两个数据表中的待拼接的数据表与拼接到的数据表之间的关联字段间的对应关系为一对一时,直接基于所述关联字段将所述待拼接的数据表拼接到所述拼接到的数据表,其中,当所述两个数据表中的待拼接的数据表与拼接到的数据表之间的关联字段间的对应关系为一对多时,基于所述待拼接的数据表内的字段与主键之间的关联关系和/或字段的类型,在所述待拼接的数据表中添加用于对特定字段的字段值进行统计的统计字段,并将添加了统计字段的所述待拼接的数据表基于所述关联字段拼接到所述拼接到的数据表。
可选地,所述特定字段包括以下字段中的至少一个:所述待拼接的数据表中除主键、所述待拼接的数据表与所述拼接到的数据表之间的关联字段、时间字段之外的数值型字段;以及所述拼接到的数据表中除主键、所述待拼接的数据表与所述拼接到的数据表之间的关联字段、时间字段之外的数值型字段。
可选地,基于所述待拼接的数据表内的字段与主键之间的关联关系和/或字段的类型在所述待拼接的数据表中添加用于对特定字段的字段值进行统计的统计字段的步骤包括:分别将所述待拼接的数据表中与主键之间的关联关系为一对多的字段和/或单维度类别型字段中的每一个字段作为统计基准字段,并分别针对所述统计基准字段的每个字段值,将所述每个字段值所对应的数据记录中的所述特定字段的字段值的统计结果,作为所述每个字段值所在的数据记录的相应统计字段的字段值。
可选地,基于所述待拼接的数据表内的字段与主键之间的关联关系和/或字段的类型在所述待拼接的数据表中添加用于对特定字段的字段值进行统计的统计字段的步骤包括:分别将所述待拼接的数据表中与主键之间的关联关系为多对一的字段和/或多维度数值型字段中的每一个字段作为所述特定字段,并将所述特定字段内的每个字段值所包括的各个维度的数值的统计结果,作为所述每个字段值所在的数据记录的相应统计字段的字段值。
可选地,基于所述待拼接的数据表内的字段与主键之间的关联关系和/或字段的类型在所述待拼接的数据表中添加用于对特定字段的字段值进行统计的统计字段的步骤包括:分别将所述待拼接的数据表中与主键之间的关联关系为多对多的字段和/或多维度类别型字段中的每一个字段作为统计基准字段,并生成以所述统计基准字段为主键的附加表,其中,所述附加表中的每条数据记录除主键之外的字段基于相应主键的每个维度在所述待拼接的数据表和/或所述拼接到的数据表中对应的所述特定字段的统计结果得到;以及基于所述附加表的主键,将所述附加表拼接到所述待拼接的数据表。
可选地,所述统计结果包括以下项之中的至少一项:求和、求平均、取最大值、取最小值、计算个数、求方差、求均方差。
可选地,根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作在任意两个数据表之间建立基于关联字段的关联关系的步骤包括:在用于建立数据表间的关联关系的图形界面中,响应于用于将一个实体节点连接到另一个实体节点的用户操作,将所述一个实体节点连接到所述另一个实体节点,其中,每个实体节点用于表示对应的一个数据表;响应于用于分别指定所述一个实体节点所表示的数据表中的一个字段和所述另一个实体节点所表示的数据表中的一个字段作为关联字段的用户操作,将指定的字段设置为所述一个实体节点所表示的数据表和所述另一个实体节点所表示的数据表之间的关联字段;建立所述一个实体节点所表示的数据表与所述另一个实体节点所表示的数据表之间关于设置的关联字段的关联关系;以及响应于用于指定设置的关联字段间的对应关系的用户操作,将设置的关联字段间的对应关系设置为:一对一或一对多。
可选地,所述方法还包括:在所述一个实体节点与所述另一个实体节点之间由于所述将所述一个实体节点连接到所述另一个实体节点的用户操作而生成的连线上或所述连线的周围,显示设置的关联字段的名称以及关联字段间的对应关系。
可选地,根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作设置数据表内的字段与主键之间的关联关系和/或字段的类型的步骤包括:在用于设置数据表内字段间的关联关系的图形界面中,响应于用于将主键节点连接到一个字段节点的用户操作,在所述图形界面中将主键节点连接到所述一个字段节点,其中,每个字段节点用于表示对应的一个字段,主键节点用于表示主键;以及响应于用于指定所述一个字段节点所表示的字段与主键之间的关联关系的用户操作,将所述关联关系设置为以下项之一:一对一、一对多、多对一和多对多。
可选地,所述方法还包括:在主键节点与所述一个字段节点之间由于所述将主键节点连接到所述一个字段节点的用户操作而生成的连线上或所述连线的周围显示所设置的关联关系。
可选地,用于将一个实体节点连接到另一个实体节点的用户操作包括:在所述一个实体节点上悬停,单击响应于所述悬停操作而在所述一个实体节点上显示的待连接的连接点,然后单击所述另一个实体节点;和/或,用于将主键节点连接到一个字段节点的用户操作包括:在主键节点上悬停,单击响应于所述悬停操作而在主键节点上显示的待连接的连接点,然后单击所述一个字段节点。
根据本发明的另一示例性实施例,提供一种自动训练机器学习模型的方法,包括:通过执行如上所述的方法的步骤而得到拼接出的关联数据表;以及针对拼接出的关联数据表自动训练出对应的机器学习模型。
可选地,针对拼接出的关联数据表自动训练出对应的机器学习模型的步骤包括:确定所述关联数据表中的目标值字段,以作为机器学习样本的标记;基于所述关联数据表中的非目标值字段自动生成机器学习样本的特征;以及基于由生成的标记和特征组成的机器学习样本来自动训练出对应的机器学习模型。
可选地,基于所述关联数据表中的非目标值字段自动生成机器学习样本的特征的步骤包括:将所述关联数据表中的各个非目标值字段直接处理为特征,并从中自动筛选出满足预设条件的特征作为机器学习样本的特征。
可选地,基于所述关联数据表中的非目标值字段自动生成机器学习样本的特征的步骤包括:将所述关联数据表中的各个非目标值字段处理为单位特征;基于得到的单位特征进行自动特征组合,以生成组合特征;以及基于得到的单位特征和组合特征来确定机器学习样本的特征。
根据本发明的另一示例性实施例,提供一种实现数据表拼接的系统,包括:表间关系建立装置,根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作,在任意两个数据表之间建立基于关联字段的关联关系;表内关系建立装置,根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,设置数据表内的字段与主键之间的关联关系和/或字段的类型;以及拼接装置,基于数据表内的字段与主键之间的关联关系和/或字段的类型,在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表。
可选地,拼接装置针对所述关联起来的至少两个数据表,将具有基于关联字段的关联关系的两个数据表中的一个数据表拼接到另外一个数据表,直至拼接到指定数据表,其中,当所述两个数据表中的待拼接的数据表与拼接到的数据表之间的关联字段间的对应关系为一对一时,拼接装置直接基于所述关联字段将所述待拼接的数据表拼接到所述拼接到的数据表,其中,当所述两个数据表中的待拼接的数据表与拼接到的数据表之间的关联字段间的对应关系为一对多时,拼接装置基于所述待拼接的数据表内的字段与主键之间的关联关系和/或字段的类型,在所述待拼接的数据表中添加用于对特定字段的字段值进行统计的统计字段,并将添加了统计字段的所述待拼接的数据表基于所述关联字段拼接到所述拼接到的数据表。
可选地,所述特定字段包括以下字段中的至少一个:所述待拼接的数据表中除主键、所述待拼接的数据表与所述拼接到的数据表之间的关联字段、时间字段之外的数值型字段;以及所述拼接到的数据表中除主键、所述待拼接的数据表与所述拼接到的数据表之间的关联字段、时间字段之外的数值型字段。
可选地,拼接装置分别将所述待拼接的数据表中与主键之间的关联关系为一对多的字段和/或单维度类别型字段中的每一个字段作为统计基准字段,并分别针对所述统计基准字段的每个字段值,将所述每个字段值所对应的数据记录中的所述特定字段的字段值的统计结果,作为所述每个字段值所在的数据记录的相应统计字段的字段值。
可选地,拼接装置分别将所述待拼接的数据表中与主键之间的关联关系为多对一的字段和/或多维度数值型字段中的每一个字段作为所述特定字段,并将所述特定字段内的每个字段值所包括的各个维度的数值的统计结果,作为所述每个字段值所在的数据记录的相应统计字段的字段值。
可选地,拼接装置分别将所述待拼接的数据表中与主键之间的关联关系为多对多的字段和/或多维度类别型字段中的每一个字段作为统计基准字段,生成以所述统计基准字段为主键的附加表,并基于所述附加表的主键,将所述附加表拼接到所述待拼接的数据表,其中,所述附加表中的每条数据记录除主键之外的字段基于相应主键的每个维度在所述待拼接的数据表和/或所述拼接到的数据表中对应的所述特定字段的统计结果得到。
可选地,所述统计结果包括以下项之中的至少一项:求和、求平均、取最大值、取最小值、计算个数、求方差、求均方差。
可选地,表间关系建立装置包括:界面提供单元,提供用于建立数据表间的关联关系的图形界面,并响应于用于在所述图形界面中将一个实体节点连接到另一个实体节点的用户操作,将所述一个实体节点连接到所述另一个实体节点,其中,每个实体节点用于表示对应的一个数据表;关联字段设置单元,响应于用于分别指定所述一个实体节点所表示的数据表中的一个字段和所述另一个实体节点所表示的数据表中的一个字段作为关联字段的用户操作,将指定的字段设置为所述一个实体节点所表示的数据表和所述另一个实体节点所表示的数据表之间的关联字段;关联关系建立单元,建立所述一个实体节点所表示的数据表与所述另一个实体节点所表示的数据表之间关于设置的关联字段的关联关系;以及对应关系设置单元,响应于用于指定设置的关联字段间的对应关系的用户操作,将设置的关联字段间的对应关系设置为:一对一或一对多。
可选地,界面提供单元在所述一个实体节点与所述另一个实体节点之间由于所述将所述一个实体节点连接到所述另一个实体节点的用户操作而生成的连线上或所述连线的周围,显示设置的关联字段的名称以及关联字段间的对应关系。
可选地,表内关系建立装置包括:界面提供单元,提供用于设置数据表内字段间的关联关系的图形界面,并响应于用于在所述图形界面中将主键节点连接到一个字段节点的用户操作,在所述图形界面中将主键节点连接到所述一个字段节点,其中,每个字段节点用于表示对应的一个字段,主键节点用于表示主键;以及关联关系设置单元,响应于用于指定所述一个字段节点所表示的字段与主键之间的关联关系的用户操作,将所述关联关系设置为以下项之一:一对一、一对多、多对一和多对多。
可选地,界面提供单元在主键节点与所述一个字段节点之间由于所述将主键节点连接到所述一个字段节点的用户操作而生成的连线上或所述连线的周围显示所设置的关联关系。
可选地,用于将一个实体节点连接到另一个实体节点的用户操作包括:在所述一个实体节点上悬停,单击响应于所述悬停操作而在所述一个实体节点上显示的待连接的连接点,然后单击所述另一个实体节点;和/或,用于将主键节点连接到一个字段节点的用户操作包括:在主键节点上悬停,单击响应于所述悬停操作而在主键节点上显示的待连接的连接点,然后单击所述一个字段节点。
根据本发明的另一示例性实施例,提供一种自动训练机器学习模型的系统,包括:如上所述的实现数据表拼接的系统;以及训练装置,针对所述实现数据表拼接的系统拼接出的关联数据表自动训练出对应的机器学习模型。
可选地,训练装置包括:目标值字段确定单元,确定所述关联数据表中的目标值字段,以作为机器学习样本的标记;特征生成单元,基于所述关联数据表中的非目标值字段自动生成机器学习样本的特征;以及训练单元,基于由生成的标记和特征组成的机器学习样本来自动训练出对应的机器学习模型。
可选地,特征生成单元将所述关联数据表中的各个非目标值字段直接处理为特征,并从中自动筛选出满足预设条件的特征作为机器学习样本的特征。
可选地,特征生成单元将所述关联数据表中的各个非目标值字段处理为单位特征;基于得到的单位特征进行自动特征组合,以生成组合特征;并基于得到的单位特征和组合特征来确定机器学习样本的特征。
根据本发明的另一示例性实施例,提供一种包括至少一个计算装置和至少一个存储指令的存储装置的系统,其中,所述指令在被所述至少一个计算装置运行时,促使所述至少一个计算装置执行如上所述的实现数据表拼接的方法或如上所述的自动训练机器学习模型的方法。
根据本发明的另一示例性实施例,提供一种存储指令的计算机可读存储介质,其中,当所述指令被至少一个计算装置运行时,促使所述至少一个计算装置执行如上所述的实现数据表拼接的方法或如上所述的自动训练机器学习模型的方法。
根据本发明示例性实施例的实现数据表拼接的方法及系统,提供了一种便捷高效且交互友好的拼表方式,用户只需通过屏幕设置数据表之间基于关联字段的关联关系、数据表内的字段与主键之间的关联关系和/或字段的类型,即可实现对通过基于关联字段的关联关系而关联起来的数据表的拼接,既提高了效率,也提升了用户体验,进一步地,自动拼接出的关联数据表还可额外包括对拼接的数据表内已有字段的字段值进行统计的相关统计字段。
此外,根据本发明示例性实施例的自动训练机器学习模型的方法及系统,用户仅需要执行易于操作、直观便于理解的用于在任意两个数据表之间建立基于关联字段的关联关系、指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,即可训练出满足需求的机器学习模型,大大降低了机器学习的门槛,进一步地,由于自动拼接出的用于自动训练出机器学习模型的关联数据表还可额外包括对拼接的数据表内已有字段的字段值进行统计的相关统计字段,从而能够进一步提高训练出的对应的机器学习模型的效果。
将在接下来的描述中部分阐述本发明总体构思另外的方面和/或优点,还有一部分通过描述将是清楚的,或者可以经过本发明总体构思的实施而得知。
附图说明
通过下面结合示例性地示出实施例的附图进行的描述,本发明示例性实施例的上述和其他目的和特点将会变得更加清楚,其中:
图1示出根据本发明示例性实施例的实现数据表拼接的方法的流程图;
图2示出根据本发明示例性实施例的在任意两个数据表之间建立基于关联字段的关联关系的方法的流程图;
图3示出根据本发明示例性实施例的用于添加实体的图形界面的示例;
图4示出根据本发明示例性实施例的在用于建立数据表间的关联关系的图形界面中显示实体节点的示例;
图5示出根据本发明示例性实施例的用于建立数据表间的关联关系的图形界面的示例;
图6示出根据本发明示例性实施例的用于将一个实体节点连接到另一个实体节点的用户操作的示例;
图7示出根据本发明示例性实施例的用于设置关联字段的图形界面的示例;
图8示出根据本发明示例性实施例的用于建立数据表间的关联关系的图形界面的示例;
图9示出根据本发明示例性实施例的设置数据表内的字段与主键之间的关联关系的方法的流程图;
图10示出根据本发明示例性实施例的用于设置数据表内字段间的关联关系的图形界面的示例;
图11示出根据本发明示例性实施例的用于设置数据表内的字段的类型的图形界面的示例;
图12示出根据本发明示例性实施例的自动训练机器学习模型的方法的流程图;
图13示出根据本发明示例性实施例的实现数据表拼接的系统的框图;
图14示出根据本发明示例性实施例的表间关系建立装置的框图;
图15示出根据本发明示例性实施例的表内关系建立装置的框图;
图16示出根据本发明示例性实施例的自动训练机器学习模型的系统的框图;
图17示出根据本发明示例性实施例的训练装置的框图。
具体实施方式
现将详细参照本发明的实施例,所述实施例的示例在附图中示出,其中,相同的标号始终指的是相同的部件。以下将通过参照附图来说明所述实施例,以便解释本发明。
图1示出根据本发明示例性实施例的实现数据表拼接的方法的流程图。这里,作为示例,所述方法可通过计算机程序来执行,也可由专门的用于执行机器学习、大数据计算、或数据分析等的硬件设备或软硬件资源的集合体来执行,例如,所述方法可由用于进行数据存储和管理的数仓软件、实现机器学习相关业务的机器学习平台等来执行。
参照图1,在步骤S10中,根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作,在任意两个数据表之间建立基于关联字段的关联关系。
这里,数据表中的每条数据记录可被看作关于一个事件或对象的描述,对应于一个示例或样例。在数据记录中,包括反映事件或对象在某方面的表现或性质的属性信息,即字段。例如,数据表的一行对应一条数据记录,数据表的一列对应一个字段。
这里,在具有基于关联字段的关联关系的两个数据表中,一个数据表中对应的关联字段的含义,与另一个数据表中对应的关联字段的含义相同,从而能够基于这两个关联字段将这两个数据表中的数据记录对应起来。应该理解,这两个关联字段的字段名称可以相同,也可以不同。例如,一个关联字段可为“ID”字段,与其相应的关联字段可为“UserID”字段,两者虽然字段名称不同,但所描述的业务信息实质上相同,都是用于描述用户的ID号。
作为示例,可根据用户在屏幕中显示的用于建立数据表间的关联关系的图形界面中执行的输入操作,在任意两个数据表之间建立基于关联字段的关联关系。例如,所述输入操作可用于指定被选中的任意两个数据表、用于指定所述任意两个数据表中的关联字段、以及/或者用于建立所述任意两个数据表之间基于所述关联字段的关联关系。
在步骤S20中,根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,设置数据表内的字段与主键之间的关联关系和/或字段的类型。
作为示例,可响应于用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系的输入操作,将数据表内任一字段与主键之间的关联关系设置为以下项之一:一对一、一对多、多对一、多对多。
具体说来,数据表中关于主键的同一个字段值仅会在一条数据记录中出现,也即,在该数据表中主键的任意一个取值仅会出现一次;而其他字段的同一个字段值可仅在一条数据记录中出现,也可在多条数据记录中出现。此外,任一字段的一个字段值可仅包括一个维度,也可包括多个维度,即,任一字段的一个字段值可仅包括单个值,也可由多个值组成。如果一个字段的同一个字段值仅可能在一条数据记录中出现并仅可能包括单个值(即,单维度值),则该字段与主键之间的关联关系为:一对一。如果一个字段的同一个字段值有可能在多条数据记录中出现并仅可能包括单个值,则该字段与主键之间的关联关系为:一对多。如果一个字段的同一个字段值有可能包括多个值(即,多维度值)并且所述多个值中的每个值仅可能在一条数据记录中出现,则该字段与主键之间的关联关系为:多对一。如果一个字段的同一个字段值有可能包括多个值并且所述多个值中的任意一个有可能在多条数据记录中出现,则该字段与主键之间的关联关系为:多对多。
作为示例,可响应于用户在屏幕中执行的用于指定数据表内的字段的类型的输入操作,将数据表内任一字段的字段类型设置为以下项之一:单维度类别型字段、多维度类别型字段、单维度数值型字段、以及多维度数值型字段。数值型字段可指该字段具有作为连续性或离散性数值的字段值(例如,年龄值、分桶后取值等),类别型字段可指该字段的内容用于指示类别(例如,年龄段等)。
作为示例,如果一个字段为单维度类别型字段,也可认为该字段与主键之间的关联关系为:一对多;如果一个字段为单维度数值型字段,也可认为该字段与主键之间的关联关系为:一对一;如果一个字段为多维度类别型字段,也可认为该字段与主键之间的关联关系为:多对多;如果一个字段为多维度数值型字段,也可认为该字段与主键之间的关联关系为:多对一。
作为示例,可根据用户在屏幕中显示的用于设置数据表内字段间的关联关系的图形界面中执行的输入操作,设置数据表内的字段与主键之间的关联关系。例如,所述输入操作可用于指定被选中的字段和主键、用于指定所述字段与主键之间的关联关系、以及/或者用于建立所述字段与主键之间的关联关系。
作为示例,可根据用户在屏幕中显示的用于设置数据表内字段的类型的图形界面中执行的输入操作,设置数据表内的字段的类型。例如,所述输入操作可用于指定被选中的字段和主键、用于指定所述字段的类型。
应该理解,本发明不对步骤S10和步骤S20的执行顺序进行限制,可先执行步骤S10,然后再执行步骤S20;或者,可先执行步骤S20,然后再执行步骤S10。
在步骤S30中,基于数据表内的字段与主键之间的关联关系和/或字段的类型,在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表。
应该理解,彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表包括直接通过基于关联字段的关联关系而关联起来的和经由所关联的数据表间接关联起来的所有数据表,例如,如果数据表A与数据表B之间具有基于关联字段的关联关系,数据表B与数据表C之间具有基于关联字段的关联关系,则可认为数据表A、数据表B和数据表C是基于关联字段的关联关系而关联起来的数据表。
作为示例,可针对所述关联起来的至少两个数据表,将具有基于关联字段的关联关系的两个数据表中的一个数据表拼接到另外一个数据表,直至拼接到指定数据表,其中,当所述两个数据表中的待拼接的数据表与拼接到的数据表之间的关联字段间的对应关系为一对一时,直接基于所述关联字段将所述待拼接的数据表拼接到所述拼接到的数据表,其中,当所述两个数据表中的待拼接的数据表与拼接到的数据表之间的关联字段间的对应关系为一对多时,基于所述待拼接的数据表内的字段与主键之间的关联关系和/或字段的类型,在所述待拼接的数据表中添加用于对特定字段的字段值进行统计的统计字段,并将添加了统计字段的所述待拼接的数据表基于所述关联字段拼接到所述拼接到的数据表。
这里,如果所述待拼接的数据表中所述关联字段的同一个字段值仅可能在一条数据记录中出现,且所述拼接到的数据表中对应的关联字段的同一个字段值仅可能在一条数据记录中出现,则所述待拼接的数据表与所述拼接到的数据表之间的所述关联字段间的对应关系为:一对一。如果所述待拼接的数据表中所述关联字段的同一个字段值仅可能在一条数据记录中出现,且所述拼接到的数据表中对应的关联字段的同一个字段值可能在多条数据记录中出现,则所述待拼接的数据表与所述拼接到的数据表之间的所述关联字段间的对应关系为:一对多。
所述关联起来的至少两个数据表彼此之间的拼接顺序可由数据表之间基于关联字段的关联关系和指定数据表决定,指定数据表为拼接的终点。例如,如果数据表A与数据表B之间具有基于关联字段的关联关系,数据表B与数据表C之间具有基于关联字段的关联关系,数据表A为指定字段,则数据表A、数据表B、数据表C之间的拼接顺序为:将数据表C拼接到数据表B,并将拼接得到的数据表再拼接到数据表A。
具体地,可基于待拼接的数据表与拼接到的数据表之间的关联字段,将所述待拼接的数据表中待拼接的数据记录拼接到所述拼接到的数据表中对应的数据记录上,其中,所述对应的数据记录是指:关于关联字段的字段值与所述待拼接的数据记录关于关联字段的字段值相同的数据记录。也即将所述待拼接的数据表左外连接(left join)到所述拼接到的数据表,如果在所述待拼接的数据表中添加了统计字段,则将添加了统计字段的所述待拼接的数据表左外连接(left join)到所述拼接到的数据表。
作为示例,所述特定字段可包括以下字段中的至少一个:所述待拼接的数据表中除主键、所述待拼接的数据表与所述拼接到的数据表之间的关联字段、时间字段之外的数值型字段;以及所述拼接到的数据表中除主键、所述待拼接的数据表与所述拼接到的数据表之间的关联字段、时间字段之外的数值型字段。
作为示例,可分别将所述待拼接的数据表中与主键之间的关联关系为一对多的字段和/或单维度类别型字段中的每一个字段作为统计基准字段,并分别针对所述统计基准字段的每个字段值,将所述每个字段值所对应的数据记录中的所述特定字段的字段值的统计结果,作为所述每个字段值所在的数据记录的相应统计字段的字段值。
这里,应该理解,当所述特定字段为所述待拼接的数据表中的字段时,将所述统计基准字段的每个字段值所对应的数据记录(即,所述待拼接的数据表中的数据记录)中的所述特定字段的字段值的统计结果,作为所述每个字段值所在的数据记录(即,所述待拼接的数据表中的数据记录)的相应统计字段的字段值。当所述特定字段为所述拼接到的数据表中的字段时,将所述统计基准字段(例如,所述待拼接的数据表与所述拼接到的数据表之间的关联字段)的每个字段值所对应的数据记录(即,所述拼接到的数据表中的数据记录)中的所述特定字段的字段值的统计结果,作为所述每个字段值所在的数据记录(即,所述待拼接的数据表中的数据记录)的相应统计字段的字段值。
这里,应该理解,基于一个与主键之间的关联关系为一对多的统计基准字段或一个单维度类别型的统计基准字段,对一个特定字段进行统计可生成至少一个统计字段,其中,所述至少一个统计字段中的不同统计字段分别对应不同的统计方式,例如,所述统计方式可包括以下项之中的至少一项:求和、求平均、取最大值、取最小值、计算个数、求方差、求均方差。应该理解,统计方式不限于此,用户也可根据需求自定义统计方式。
作为另一示例,可分别将所述待拼接的数据表中与主键之间的关联关系为多对一的字段和/或多维度数值型字段中的每一个字段作为所述特定字段,并将所述特定字段内的每个字段值所包括的各个维度的数值的统计结果,作为所述每个字段值所在的数据记录的相应统计字段的字段值。
这里,应该理解,对一个与主键之间的关联关系为多对一的特定字段或一个多维度数值型的特定字段进行统计可生成至少一个统计字段,其中,所述至少一个统计字段中的不同统计字段可分别对应不同的统计方式。
作为另一示例,可分别将所述待拼接的数据表中与主键之间的关联关系为多对多的字段和/或多维度类别型字段中的每一个字段作为统计基准字段,并生成以所述统计基准字段为主键的附加表,其中,所述附加表中的每条数据记录除主键之外的字段基于相应主键的每个维度在所述待拼接的数据表和/或所述拼接到的数据表中对应的所述特定字段的统计结果得到;以及基于所述附加表的主键,将所述附加表拼接到所述待拼接的数据表。
这里,应该理解,针对一个与主键之间的关联关系为多对多的统计基准字段或一个多维度类别型的统计基准字段可生成一个附加表,所述一个附加表除主键之外可包括至少一个字段;基于该统计基准字段,对一个特定字段进行统计可生成所述附加表中的至少一个字段,其中,所述至少一个字段中的不同字段分别对应不同的统计方式。
作为示例,所述统计结果可包括以下项之中的至少一项:求和、求平均、取最大值、取最小值、计算个数、求方差、求均方差。应该理解,统计结果不限于此,用户也可根据需求自定义相应的统计方式。
表1
订单编号 | 日期 | 订单金额 | User ID |
1 | 2008/11/29 | 1000 | 001 |
2 | 2008/12/05 | 2000 | 002 |
3 | 2008/12/09 | 3000 | 003 |
4 | 2008/12/11 | 4000 | 002 |
表2
参照表1和表2,其中,表1为拼接到的数据表,主键为“订单编号”字段,表2为待拼接的数据表,主键为“用户ID”字段,表1与表2之间的关联字段分别为“User ID”字段和“用户ID”字段,且表1与表2之间的关联字段间的对应关系为多对一。表2原本仅包括“用户ID”字段、“年龄段”字段、“收入”字段,在将表2拼接到表1之前,根据本发明的示例性实施例,可将表2中的单维度类别型字段“用户ID”作为统计基准字段,对表1中的特定字段“订单金额”进行统计,以在表2中添加对应的统计字段“用户的订单平均金额”,具体地,可将表2中“用户ID”字段的每个字段值所对应的表1中的数据记录中的“订单金额”字段的字段值的统计结果(在本示例中,仅以求平均为例,应该理解,也可包括求和等),作为该字段值所在的数据记录的“用户的订单平均金额”字段的字段值,例如,将表2中“用户ID”字段的字段值“002”所对应的表1中的第二条、第四条数据记录中的“订单金额”字段的字段值“2000”和“4000”的统计结果“3000”作为表2中“用户ID”字段的字段值“002”所在的数据记录的“用户的订单平均金额”字段的字段值。
此外,在将表2拼接到表1之前,还可将与主键之间的关联关系为一对多的字段“年龄段”作为统计基准字段,对表2中的特定字段“收入”进行统计,以在表2中添加对应的统计字段“所在年龄段的平均收入”,具体地,将表2中“年龄段”字段的每个字段值所在的表2中的数据记录中的“收入”字段的字段值的统计结果(在本示例中,仅以求平均为例,应该理解,也可包括求和等),作为该字段值所在的数据记录的“所在年龄段的平均收入”字段的字段值,例如,将表2中“年龄段”字段的字段值“青年”所在的表2中的第一条、第二条数据记录中的“收入”字段的字段值“3000”和“5000”的统计结果“4000”,作为表2中“年龄段”字段的字段值“青年”所在的数据记录的“所在年龄段的平均收入”字段的字段值。
此外,在将表2拼接到表1之前,可对表2中的多维度数值型字段“收入”(在该示例中,取值为连续数字)进行统计,以在表2中添加对应的统计字段“总收入”,具体地,将表2中“收入”字段的每个字段值所包括的各个维度的数值的统计结果(在本示例中,仅以求和为例,应该理解,也可包括求最大值等),作为该字段值所在的数据记录的“总收入”字段的字段值,例如,将表2中“收入”字段的字段值“2000、1000”所包括的各个维度的数值“2000”和“1000”的统计结果“3000”,作为表2中“收入”字段的字段值“2000、1000”所在的数据记录的“总收入”字段的字段值。
表3
表4
演员 | 总票房(万) | 平均票房 |
小A、小B | 7000 | 3500 |
小A | 4000 | 2000 |
小B | 3000 | 1500 |
小C | 6000 | 3000 |
参照表3和表4,其中,表3为待拼接的数据表,主键为“电影ID”字段,表4为以表3中的与主键之间的关联关系为多对多的统计基准字段“演员”为主键生成的表3的附加表,具体地,关于生成“票房”这一字段,针对主键字段值“小A、小B”,该字段值的各个维度的值分别是“小A”和“小B”,获取表3中“演员”字段的字段值包括“小A”的数据记录中特定字段“票房”字段的字段值之和“4000”,并获取表3中“演员”字段的字段值包括“小B”的数据记录中特定字段“票房”字段的字段值之和“3000”,并将“4000”和“3000”之和“7000”作为表4中“演员”字段的字段值“小A、小B”所在的数据记录的“总票房”字段的字段值。此外,关于生成“平均票房”这一字段,针对主键字段值“小A、小B”,该字段值的各个维度的值分别是“小A”和“小B”,获取表3中“演员”字段的字段值包括“小A”的数据记录中特定字段“票房”字段的字段值的平均值“2000”,并获取表3中“演员”字段的字段值包括“小B”的数据记录中特定字段“票房”字段的字段值的平均值“1500”,并将“2000”和“1500”之和“3500”作为表4中“演员”字段的字段值“小A、小B”所在的数据记录的“平均票房”字段的字段值。
以下,将结合图2来描述根据本发明示例性实施例的在任意两个数据表之间建立基于关联字段的关联关系的步骤S10的示例。
参照图2,在步骤S101中,在用于建立数据表间的关联关系的图形界面中,响应于用于将一个实体节点连接到另一个实体节点的用户操作,将所述一个实体节点连接到所述另一个实体节点,其中,每个实体节点用于表示对应的一个数据表。
具体说来,可根据用户的指示来创建或引入任何实体,该实体具有对应的数据表,在图形界面上可显示为相应的实体节点。。根据本发明的示例性实施例,一个实体可具有变化的对应数据表,也可以具有固定的数据表(在这种情况下,该实体可被理解为数据表本身)。
作为示例,可响应于用户在用于添加实体的图形界面中执行的输入操作,添加实体(也即,定义实体)。图3示出根据本发明示例性实施例的用于添加实体的图形界面的示例,在所述图形界面的左侧区域显示已定义的实体,响应于点击用于添加实体的控件“+”的用户操作,可在所述图形界面的中间区域显示用于输入待添加的实体的名称的控件和用于输入待添加的实体所对应的数据表(即,关联数据表)的标识信息的控件,例如,所述标识信息可以是数据表的名称或存储地址等,也就是说,实体可根据设置而关联到不同的对应数据表。图4示出根据本发明示例性实施例的在用于建立数据表间的关联关系的图形界面中显示实体节点的示例,如图4所示,响应于用户操作,可在用于建立数据表间的关联关系的图形界面中显示与定义的实体一一对应的实体节点,例如,所述用户操作可以是按压所述图形界面的左侧区域中显示的已定义的实体的标识并滑动到所述图形界面的画布区域后释放所述标识的操作。
通过执行上述操作方式,在用于建立数据表间的关联关系的图形界面中可显示多个用于表示数据表的实体节点,其中,每个实体节点具有对应的一个数据表。应该理解,不同的实体节点可对应同一个数据表,实体节点所关联的数据表也可进行灵活地设置。
图5示出根据本发明示例性实施例的用于建立数据表间的关联关系的图形界面的另一示例,如图5所示,在所述图形界面中显示多个实体节点,每个实体节点具有一个对应的数据表,且在实体节点上仅显示该实体节点的中英文名称及主键的字段名称,不显示该实体节点所表示的数据表的全部字段的字段名称。通过这种方式,可使得关联过程更为容易操作,也能够让用户更为直观地关注到表中关键字段,而不必被无关的信息扰乱。由于省略了除主键之外的其他字段,使得实体节点的显示更为友好,对连接也更为便利。
所述用于将一个实体节点连接到另一个实体节点的用户操作可以是各种适合的用户操作。作为示例,用于将一个实体节点连接到另一个实体节点的用户操作可包括:在所述一个实体节点上悬停,单击响应于所述悬停操作而在所述一个实体节点上显示的待连接的连接点,然后单击所述另一个实体节点。在这种方式下,鼠标的操作比较自由,例如,在单击连接点之后,可伴随光标而显示相应的轨迹线,而在单击所述另一个实体节点之后,建立起两个实体节点之间的连接关系。
作为另一示例,所述用于将一个实体节点连接到另一个实体节点的用户操作可包括:在所述一个实体节点上悬停,按压响应于所述悬停操作在所述一个实体节点上显示的待连接的连接点,并滑动到所述另一个实体节点后释放按压。
图6示出根据本发明示例性实施例的用于将一个实体节点连接到另一个实体节点的用户操作的示例,如图6中的(a)所示,当接收到用户在实体节点“授课”上的悬停操作时,显示待连接的连接点“+”,如图6中的(b)所示,当接收到用户对所述连接点的单击操作时,响应于光标的移动显示从所述连接点指向光标当前位置的连线,如图6中的(c)所示,当检测到光标移动到另一实体节点“课程”上(即,接收到用户在实体节点“课程”上的悬停操作)时,可突出显示实体节点“课程”,并显示从实体节点“授课”指向实体节点“课程”的预览连线,如图6中的(d)所示,当接收到用户对实体节点“课程”的点击操作时,将实体节点“授课”连接到实体节点“课程”。
返回图2,在步骤S102中,响应于用于分别指定所述一个实体节点所表示的数据表中的一个字段和所述另一个实体节点所表示的数据表中的一个字段作为关联字段的用户操作,将指定的字段设置为所述一个实体节点所表示的数据表和所述另一个实体节点所表示的数据表之间的关联字段。
作为示例,可响应于用于将所述一个实体节点连接到所述另一个实体节点的用户操作,自动向用户提供用于设置数据表之间的关联字段的图形界面;并接收用户在所提供的图形界面上执行的用于分别指定所述一个实体节点所表示的数据表中的一个字段和所述另一个实体节点所表示的数据表中的一个字段作为关联字段的用户操作。
作为另一示例,可当用户选择所述一个实体节点与所述另一个实体节点之间由于所述将所述一个实体节点连接到所述另一个实体节点的用户操作而生成的连线时,向用户提供用于设置数据表之间的关联字段的图形界面;并接收用户在所提供的图形界面上执行的用于分别指定所述一个实体节点所表示的数据表中的一个字段和所述另一个实体节点所表示的数据表中的一个字段作为关联字段的用户操作。
作为示例,响应于用于将所述一个实体节点连接到所述另一个实体节点的用户操作,或用户选择所述一个实体节点与所述另一个实体节点之间由于所述将所述一个实体节点连接到所述另一个实体节点的用户操作而生成的连线的操作,可在用于建立数据表间的关联关系的图形界面中的预定区域向用户提供用于设置数据表之间的关联字段的图形界面,或者,可在所述一个实体节点与所述另一个实体节点之间由于所述将所述一个实体节点连接到所述另一个实体节点的用户操作而生成的连线的周围弹出用于设置数据表之间的关联字段的图形界面。
在步骤S103中,建立所述一个实体节点所表示的数据表与所述另一个实体节点所表示的数据表之间关于设置的关联字段的关联关系。
这里,所述主表的主键可由用户设置,或在引入系统之时已经被设置。作为示例,可在用于建立数据表之间的主外键关联关系的图形界面中,响应于用于指定实体节点所表示的数据表中的一个字段作为该数据表的主键的用户操作,将指定的字段设置为该数据表的主键。
作为示例,根据本发明示例性实施例的实现数据表拼接的方法还可包括:在所述一个实体节点与所述另一个实体节点之间由于所述将所述一个实体节点连接到所述另一个实体节点的用户操作而生成的连线上或所述连线的周围,显示设置的关联字段的名称。通过这种方式,能够进一步有效地展示关于关联字段的信息。
在步骤S104中,响应于用于指定设置的关联字段间的对应关系的用户操作,将设置的关联字段间的对应关系设置为:一对一或一对多。
作为示例,根据本发明示例性实施例的实现数据表拼接的方法还可包括:在所述一个实体节点与所述另一个实体节点之间由于所述将所述一个实体节点连接到所述另一个实体节点的用户操作而生成的连线上或所述连线的周围,显示设置的关联字段间的对应关系。
图7示出根据本发明示例性实施例的用于设置数据表之间的关联字段的图形界面的示例,如图7所示,可在用于建立数据表间的关联关系的图形界面中的预定区域向用户提供用于设置数据表之间的关联字段的图形界面,并可在该图形界面中设置关联字段间的对应关系。此外,如图7所示,还可在一个实体节点与另一个实体节点之间的连线上显示针对所述一个实体节点所表示的数据表与所述另一个实体节点所表示的数据表所设置的关联字段的名称以及关联字段间的对应关系。
此外,作为示例,根据本发明示例性实施例的实现数据表拼接的方法还可包括:当用户选择一个实体节点与另一个实体节点之间由于所述将所述一个实体节点连接到所述另一个实体节点的用户操作而生成的连线时,突出显示所述一个实体节点、所述另一个实体节点及所述连线,并显示针对所述一个实体节点所表示的数据表与所述另一个实体节点所表示的数据表所设置的关联字段的名称以及关联字段间的对应关系。
图8示出根据本发明示例性实施例的用于建立数据表间的关联关系的图形界面的示例,如图8所示,当用户选择一个实体节点与另一个实体节点之间由于所述将所述一个实体节点连接到所述另一个实体节点的用户操作而生成的连线时,突出显示所述一个实体节点、所述另一个实体节点、所述连线、针对所述一个实体节点所表示的数据表与所述另一个实体节点所表示的数据表所设置的关联字段的名称以及关联字段间的对应关系,还可显示用于设置关联字段及关联字段间的对应关系的图形界面,以便于用户重新设置关联字段或关联字段间的对应关系,并可向用户展示当前设置的关联字段间的对应关系的具体含义和/或示例,此外,还可在该图形界面中取消所述一个实体节点与所述另一个实体节点之间的连线(即,取消建立所述一个实体节点所对应的数据表与所述另一个实体节点所对应的数据表之间基于关联字段的关联关系)。
以下,将结合图9来描述根据本发明示例性实施例的设置数据表内的字段与主键之间的关联关系和/或字段的类型的步骤S20的示例。
参照图9,在步骤S201中,在用于设置数据表内字段间的关联关系的图形界面中,响应于用于将主键节点连接到一个字段节点的用户操作,在所述图形界面中将主键节点连接到所述一个字段节点,其中,每个字段节点用于表示对应的一个字段,主键节点用于表示主键。这里,所述图形界面中的每个字段节点用于表示该数据表内对应的一个字段,换言之,字段在所述图形界面上可显示为相应的字段节点。应该理解,不同的字段节点可对应于该数据表内的同一个字段。
作为示例,可在用于建立数据表内字段间的关联关系的图形界面中显示用于表示该数据表所包括的全部字段或部分字段的多个字段节点,其中,每个字段节点用于表示对应的一个字段。
作为示例,可响应于用户对实体的标识或在用于建立数据表间的关联关系的图形界面中显示的实体节点执行的输入操作,显示用于建立该实体或实体节点所关联到的数据表内的字段间的关联关系的图形界面。例如,如图3和图4所示,当接收到用户对用于建立数据表间的关联关系的图形界面中显示的实体节点的双击操作时,可显示用于建立该实体节点所关联到的数据表内的字段间的关联关系的图形界面。例如,如图7所示,当接收到用户对用于建立数据表间的关联关系的图形界面的左侧区域所显示的已定义的实体的标识的双击操作时,可显示用于建立该实体节点所关联到的数据表内的字段间的关联关系的图形界面,此外,所述图形界面还可显示实体所关联到的数据表内的字段与主键间的关联关系的设置状态,例如,是否已被设置的状态。
所述用于将主键节点连接到一个字段节点的用户操作可以是各种适合的用户操作。作为示例,所述用于将主键节点连接到一个字段节点的用户操作可包括:在主键节点上悬停,单击响应于所述悬停操作而在主键节点上显示的待连接的连接点,然后单击所述一个字段节点。在这种方式下,鼠标的操作比较自由,例如,在单击连接点之后,可伴随光标而显示相应的轨迹线,而在单击所述一个字段节点之后,建立起两个字段节点之间的连接关系。作为另一示例,所述用于将主键节点连接到一个字段节点的用户操作可包括:在主键节点上悬停,按压响应于所述悬停操作而在主键节点上显示的待连接的连接点,并滑动到一个字段节点后释放按压。
在步骤S202中,响应于用于指定所述一个字段节点所表示的字段与主键之间的关联关系的用户操作,将所述关联关系设置为以下项之一:一对一、一对多、多对一和多对多。
作为示例,根据本发明示例性实施例的实现数据表拼接的方法还可包括:在主键节点与所述一个字段节点之间由于所述将主键节点连接到所述一个字段节点的用户操作而生成的连线上或所述连线的周围显示所设置的关联关系。
作为示例,根据本发明示例性实施例的实现数据表拼接的方法还可包括:当用户选择主键节点与所述一个字段节点之间由于所述将主键节点连接到所述一个字段节点的用户操作而生成的连线时,突出显示所述主键节点、所述一个字段节点及所述连线,并显示设置的关联关系。
这里,数据表的主键可由用户设置,或在引入系统之时已经被设置。作为示例,根据本发明示例性实施例的实现数据表拼接的方法还可包括:在用于建立数据表内字段间的关联关系的图形界面中,响应于用于指定一个字段节点所表示的字段作为该数据表的主键的用户操作,将该字段设置为该数据表的主键,相应地,该字段节点即主键节点。
图10示出根据本发明示例性实施例的用于设置数据表内字段间的关联关系的图形界面的示例,如图10所示,用户可在将主键节点连接到一个字段节点之后,在该图形界面中的预定区域或弹出的对话框中设置该字段节点所表示的字段与主键之间的关联关系,并且,还可在所述预定区域或对话框中向用户展示当前设置的关联关系的具体含义和/或示例。此外,还可在主键节点与所述一个字段节点之间由于所述将主键节点连接到所述一个字段节点的用户操作而生成的连线上或所述连线的周围显示所设置的所述关联关系。作为示例,用于建立数据表内字段间的关联关系的图形界面除了可用于设置各字段与主键之间的关联关系之外,还可用于设置该数据表的主键、设置该数据表内的字段的中文名称、英文名称、数据类型、字段类型之中的至少一项。这里,字段的数据类型可用于指示该字段的字段值的内容类别,例如,标识号、名称、日期时间、整数等。字段的字段类型可用于指示该字段是连续型或离散型。作为示例,还可在字段节点上显示其所表示的字段的中文名称、英文名称、数据类型、字段类型、是否是主键之中的至少一项。
图11示出根据本发明示例性实施例的用于设置数据表内的字段的类型的图形界面的示例,如图11所示,用于设置数据表内的字段的类型的图形界面除了可用于设置各字段与主键之间的关联关系之外,还可用于设置该数据表的主键、设置该数据表内的字段的中文名称、英文名称、数据类型、字段类型之中的至少一项。
根据本发明的示例性实施例,用于在任意两个数据表之间建立基于关联字段的关联关系、指定数据表内的字段与主键之间的关联关系和/或字段的类型的用户操作简便、直观且便于理解,尤其对于熟悉目标领域的业务的业务人员,根据自己的业务认知就能够独立便捷地建立数据表之间基于关联字段的关联关系,及数据表内的字段与主键之间的关联关系和/或字段的类型。
图12示出根据本发明示例性实施例的自动训练机器学习模型的方法的流程图。这里,作为示例,所述方法可通过计算机程序来执行,也可由专门的用于执行机器学习、大数据计算、或数据分析等的硬件设备或软硬件资源的集合体来执行,例如,所述方法可由用于实现机器学习相关业务的机器学习平台来执行。
参照图12,在步骤S10中,根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作,在任意两个数据表之间建立基于关联字段的关联关系。
在步骤S20中,根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,设置数据表内的字段与主键之间的关联关系和/或字段的类型。
在步骤S30中,基于数据表内的字段与主键之间的关联关系和/或字段的类型,在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表。应该理解,步骤S10至步骤S30可参照上述结合图1至图11描述的具体实施方式来实现,在此不再赘述。
在步骤S40中,针对拼接出的关联数据表自动训练出对应的机器学习模型。
作为示例,可确定所述关联数据表中的目标值字段,以作为机器学习样本的标记;基于所述关联数据表中的非目标值字段自动生成机器学习样本的特征;并且,基于由生成的标记和特征组成的机器学习样本来自动训练出对应的机器学习模型。
这里,目标值字段即使用机器学习技术要预估的目标,对应于历史数据中的标记(即,label)字段,而非目标值字段即数据表之中除目标值字段之外的字段。作为示例,可向用户提供用于指定目标值字段的图形界面,并根据用户在该图形界面中执行的输入操作,来确定目标值字段。
作为示例,基于所述关联数据表中的非目标值字段自动生成机器学习样本的特征的步骤可包括:将所述关联数据表中的各个非目标值字段直接处理为特征,并从中自动筛选出满足预设条件的特征作为机器学习样本的特征。例如,可将每一个非目标值字段直接处理为一个特征。
作为示例,可根据特征重要性来自动筛选出满足预设条件的特征作为机器学习样本的特征。例如,筛选方式可为百分比筛选方式、绝对数值筛选方式、特征复杂度筛选方式等筛选方式。
作为另一示例,基于所述关联数据表中的非目标值字段自动生成机器学习样本的特征的步骤可包括:将所述关联数据表中的各个非目标值字段处理为单位特征;然后,基于得到的单位特征进行自动特征组合,以生成组合特征;最后,基于得到的单位特征和组合特征来确定机器学习样本的特征。
应理解,这里的单位特征是指该特征对应于单个字段,其本身可根据取值的定义而具有一个或多个维度。
作为示例,可对得到的全部单位特征进行各种组合来获取候选组合特征,或者,对得到的全部单位特征之中特征重要性较高的单位特征进行各种组合来获取候选组合特征;然后,可通过衡量与每个候选组合特征相应的机器学习模型的效果来从候选组合特征中筛选出组合特征。具体说来,可训练与每个候选组合特征相应的机器学习模型,由于相应的机器学习模型的效果能够反映候选组合特征的特征重要性(例如,预测力),从而可通过衡量与每个候选组合特征相应的机器学习模型的效果来从候选组合特征中筛选出组合特征,例如,机器学习模型的效果越好,相应的候选组合特征越容易被筛选为组合特征。作为示例,可使用指定的模型评价指标来评价与每个候选组合特征相应的机器学习模型的效果。作为示例,可通过衡量与单位特征相应的机器学习模型的效果来确定单位特征的特征重要性,相应的机器学习模型的效果越好,单位特征的特征重要性越高。作为示例,模型评价指标可以是AUC(ROC(受试者工作特征,Receiver Operating Characteristic)曲线下的面积,Area Under ROC Curve)、MAE(平均绝对误差,Mean Absolute Error)或对数损失函数(logloss)等。
作为示例,可将生成的全部单位特征和全部组合特征作为机器学习样本的特征。
作为另一示例,可将生成的全部单位特征和全部组合特征之中,特征重要性较高的特征作为机器学习样本的特征。
作为另一示例,可将生成的全部单位特征之中特征重要性较高的单位特征和生成的全部组合特征,作为机器学习样本的特征。
作为另一示例,可将生成的全部组合特征之中特征重要性较高的组合特征和生成的全部单位特征,作为机器学习样本的特征。
此外,作为示例,根据本发明示例性实施例的自动训练机器学习模型的方法还可包括:向用户展示将所述关联数据表中的各个非目标值字段直接处理为的特征、各特征的特征重要性、各特征的特征生成公式,以供用户人为筛选出作为机器学习样本的特征。此外,用户也可以特征生成公式的形式额外添加机器学习样本的特征。
根据本发明的示例性实施例,用户仅需要执行易于操作、直观便于理解的用于在任意两个数据表之间建立基于关联字段的关联关系、指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,即可训练出满足需求的机器学习模型,尤其对于熟悉目标领域的业务的业务人员,只需根据自己的业务认知建立数据表之间的关系网络,指定数据表内的字段与主键之间的关联关系和/或字段的类型,即可获得训练好的机器学习模型,从而不具备与机器学习相关的专业能力的业务人员也能够独立完成建模工作,大大降低了机器学习的门槛,并且也能够将建模工程师从对目标领域的业务的学习中解放出来,投入到更专业的生产工作当中。
图13示出根据本发明示例性实施例的实现数据表拼接的系统的框图。如图13所示,根据本发明示例性实施例的实现数据表拼接的系统包括:表间关系建立装置10、表内关系建立装置20和拼接装置30。
具体说来,表间关系建立装置10用于根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作,在任意两个数据表之间建立基于关联字段的关联关系。
表内关系建立装置20用于根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,设置数据表内的字段与主键之间的关联关系和/或字段的类型。
拼接装置30用于基于数据表内的字段与主键之间的关联关系和/或字段的类型,在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表。
作为示例,拼接装置30可针对所述关联起来的至少两个数据表,将具有基于关联字段的关联关系的两个数据表中的一个数据表拼接到另外一个数据表,直至拼接到指定数据表,其中,当所述两个数据表中的待拼接的数据表与拼接到的数据表之间的关联字段间的对应关系为一对一时,拼接装置30可直接基于所述关联字段将所述待拼接的数据表拼接到所述拼接到的数据表,其中,当所述两个数据表中的待拼接的数据表与拼接到的数据表之间的关联字段间的对应关系为一对多时,拼接装置30可基于所述待拼接的数据表内的字段与主键之间的关联关系和/或字段的类型,在所述待拼接的数据表中添加用于对特定字段的字段值进行统计的统计字段,并将添加了统计字段的所述待拼接的数据表基于所述关联字段拼接到所述拼接到的数据表。
作为示例,所述特定字段可包括以下字段中的至少一个:所述待拼接的数据表中除主键、所述待拼接的数据表与所述拼接到的数据表之间的关联字段、时间字段之外的数值型字段;以及所述拼接到的数据表中除主键、所述待拼接的数据表与所述拼接到的数据表之间的关联字段、时间字段之外的数值型字段。
作为示例,拼接装置30可分别将所述待拼接的数据表中与主键之间的关联关系为一对多的字段和/或单维度类别型字段中的每一个字段作为统计基准字段,并分别针对所述统计基准字段的每个字段值,将所述每个字段值所对应的数据记录中的所述特定字段的字段值的统计结果,作为所述每个字段值所在的数据记录的相应统计字段的字段值。
作为另一示例,拼接装置30可分别将所述待拼接的数据表中与主键之间的关联关系为多对一的字段和/或多维度数值型字段中的每一个字段作为所述特定字段,并将所述特定字段内的每个字段值所包括的各个维度的数值的统计结果,作为所述每个字段值所在的数据记录的相应统计字段的字段值。
作为另一示例,拼接装置30可分别将所述待拼接的数据表中与主键之间的关联关系为多对多的字段和/或多维度类别型字段中的每一个字段作为统计基准字段,生成以所述统计基准字段为主键的附加表,并基于所述附加表的主键,将所述附加表拼接到所述待拼接的数据表,其中,所述附加表中的每条数据记录除主键之外的字段基于相应主键的每个维度在所述待拼接的数据表和/或所述拼接到的数据表中对应的所述特定字段的统计结果得到。
作为示例,所述统计结果可包括以下项之中的至少一项:求和、求平均、取最大值、取最小值、计算个数、求方差、求均方差。
图14示出根据本发明示例性实施例的表间关系建立装置10的框图。如图14所示,表间关系建立装置10可包括:界面提供单元101、关联字段设置单元102、关联关系建立单元103和对应关系设置单元104。
具体说来,界面提供单元101用于提供用于建立数据表间的关联关系的图形界面,并响应于用于在所述图形界面中将一个实体节点连接到另一个实体节点的用户操作,将所述一个实体节点连接到所述另一个实体节点,其中,每个实体节点用于表示对应的一个数据表。
作为示例,用于将一个实体节点连接到另一个实体节点的用户操作可包括:在所述一个实体节点上悬停,单击响应于所述悬停操作而在所述一个实体节点上显示的待连接的连接点,然后单击所述另一个实体节点。
关联字段设置单元102用于响应于用于分别指定所述一个实体节点所表示的数据表中的一个字段和所述另一个实体节点所表示的数据表中的一个字段作为关联字段的用户操作,将指定的字段设置为所述一个实体节点所表示的数据表和所述另一个实体节点所表示的数据表之间的关联字段。
关联关系建立单元103用于建立所述一个实体节点所表示的数据表与所述另一个实体节点所表示的数据表之间关于设置的关联字段的关联关系。
对应关系设置单元104用于响应于用于指定设置的关联字段间的对应关系的用户操作,将设置的关联字段间的对应关系设置为:一对一或一对多。
作为示例,界面提供单元101可在所述一个实体节点与所述另一个实体节点之间由于所述将所述一个实体节点连接到所述另一个实体节点的用户操作而生成的连线上或所述连线的周围,显示设置的关联字段的名称以及关联字段间的对应关系。
图15示出根据本发明示例性实施例的表内关系建立装置20的框图。如图15所示,表内关系建立装置20可包括:界面提供单元201和关联关系设置单元202。
具体说来,界面提供单元201用于提供用于设置数据表内字段间的关联关系的图形界面,并响应于用于在所述图形界面中将主键节点连接到一个字段节点的用户操作,在所述图形界面中将主键节点连接到所述一个字段节点,其中,每个字段节点用于表示对应的一个字段,主键节点用于表示主键;以及
关联关系设置单元202用于响应于用于指定所述一个字段节点所表示的字段与主键之间的关联关系的用户操作,将所述关联关系设置为以下项之一:一对一、一对多、多对一和多对多。
作为示例,界面提供单元201可在主键节点与所述一个字段节点之间由于所述将主键节点连接到所述一个字段节点的用户操作而生成的连线上或所述连线的周围显示所设置的关联关系。
作为示例,用于将主键节点连接到一个字段节点的用户操作可包括:在主键节点上悬停,单击响应于所述悬停操作而在主键节点上显示的待连接的连接点,然后单击所述一个字段节点。
图16示出根据本发明示例性实施例的自动训练机器学习模型的系统的框图。图16所示,根据本发明示例性实施例的自动训练机器学习模型的系统包括:表间关系建立装置10、表内关系建立装置20、拼接装置30和训练装置40。
具体说来,表间关系建立装置10用于根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作,在任意两个数据表之间建立基于关联字段的关联关系。
表内关系建立装置20用于根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,设置数据表内的字段与主键之间的关联关系和/或字段的类型。
拼接装置30用于基于数据表内的字段与主键之间的关联关系和/或字段的类型,在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表。应该理解,表间关系建立装置10、表内关系建立装置20和拼接装置30可参照上述结合图13至图15描述的具体实施方式来实现,在此不再赘述。
训练装置40用于针对拼接出的关联数据表自动训练出对应的机器学习模型。
图17示出根据本发明示例性实施例的训练装置40的框图。如图17所示,训练装置40可包括:目标值字段确定单元401、特征生成单元402和训练单元403。
具体说来,目标值字段确定单元401用于确定所述关联数据表中的目标值字段,以作为机器学习样本的标记。
特征生成单元402用于基于所述关联数据表中的非目标值字段自动生成机器学习样本的特征。
训练单元403用于基于由生成的标记和特征组成的机器学习样本来自动训练出对应的机器学习模型。
作为示例,特征生成单元402可将所述关联数据表中的各个非目标值字段直接处理为特征,并从中自动筛选出满足预设条件的特征作为机器学习样本的特征。
作为另一示例,特征生成单元402可将所述关联数据表中的各个非目标值字段处理为单位特征;基于得到的单位特征进行自动特征组合,以生成组合特征;并基于得到的单位特征和组合特征来确定机器学习样本的特征。
应该理解,根据本发明示例性实施例的实现数据表拼接的系统和自动训练机器学习模型的系统的具体实现方式可参照结合图1至图12描述的相关具体实现方式来实现,在此不再赘述。
根据本发明示例性实施例的实现数据表拼接的系统和自动训练机器学习模型的系统所包括的装置可被分别配置为执行特定功能的软件、硬件、固件或上述项的任意组合。例如,这些装置可对应于专用的集成电路,也可对应于纯粹的软件代码,还可对应于软件与硬件相结合的模块。此外,这些装置所实现的一个或多个功能也可由物理实体设备(例如,处理器、客户端或服务器等)中的组件来统一执行。
应理解,根据本发明示例性实施例的实现数据表拼接的方法可通过记录在计算可读介质上的程序来实现,例如,根据本发明的示例性实施例,可提供一种实现数据表拼接的计算机可读介质,其中,在所述计算机可读介质上记录有用于执行以下方法步骤的计算机程序:根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作,在任意两个数据表之间建立基于关联字段的关联关系;根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,设置数据表内的字段与主键之间的关联关系和/或字段的类型;以及基于数据表内的字段与主键之间的关联关系和/或字段的类型,在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表。
应理解,根据本发明示例性实施例的自动训练机器学习模型的方法可通过记录在计算可读介质上的程序来实现,例如,根据本发明的示例性实施例,可提供一种自动训练机器学习模型的计算机可读介质,其中,在所述计算机可读介质上记录有用于执行以下方法步骤的计算机程序:根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作,在任意两个数据表之间建立基于关联字段的关联关系;根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,设置数据表内的字段与主键之间的关联关系和/或字段的类型;基于数据表内的字段与主键之间的关联关系和/或字段的类型,在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表;以及针对拼接出的关联数据表自动训练出对应的机器学习模型。
上述计算机可读介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,应注意,所述计算机程序还可用于执行除了上述步骤以外的附加步骤或者在执行上述步骤时执行更为具体的处理,这些附加步骤和进一步处理的内容已经参照图1至图12进行了描述,这里为了避免重复将不再进行赘述。
应注意,根据本发明示例性实施例的实现数据表拼接的系统和自动训练机器学习模型的系统可完全依赖计算机程序的运行来实现相应的功能,即,各个装置与计算机程序的功能架构中与各步骤相应,使得整个系统通过专门的软件包(例如,lib库)而被调用,以实现相应的功能。
另一方面,根据本发明示例性实施例的实现数据表拼接的系统和自动训练机器学习模型的系统所包括的各个装置也可以通过硬件、软件、固件、中间件、微代码或其任意组合来实现。当以软件、固件、中间件或微代码实现时,用于执行相应操作的程序代码或者代码段可以存储在诸如存储介质的计算机可读介质中,使得处理器可通过读取并运行相应的程序代码或者代码段来执行相应的操作。
例如,本发明的示例性实施例还可以实现为计算装置,该计算装置包括存储部件和处理器,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,执行实现数据表拼接的方法或自动训练机器学习模型的方法。
具体说来,所述计算装置可以部署在服务器或客户端中,也可以部署在分布式网络环境中的节点装置上。此外,所述计算装置可以是PC计算机、平板装置、个人数字助理、智能手机、web应用或其他能够执行上述指令集合的装置。
这里,所述计算装置并非必须是单个的计算装置,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。计算装置还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子装置。
在所述计算装置中,处理器可包括中央处理器(CPU)、图形处理器(GPU)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
根据本发明示例性实施例的实现数据表拼接的方法和自动训练机器学习模型的方法中所描述的某些操作可通过软件方式来实现,某些操作可通过硬件方式来实现,此外,还可通过软硬件结合的方式来实现这些操作。
处理器可运行存储在存储部件之一中的指令或代码,其中,所述存储部件还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,所述网络接口装置可采用任何已知的传输协议。
存储部件可与处理器集成为一体,例如,将RAM或闪存布置在集成电路微处理器等之内。此外,存储部件可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储部件和处理器可在操作上进行耦合,或者可例如通过I/O端口、网络连接等互相通信,使得处理器能够读取存储在存储部件中的文件。
此外,所述计算装置还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。计算装置的所有组件可经由总线和/或网络而彼此连接。
根据本发明示例性实施例的实现数据表拼接的方法和自动训练机器学习模型的方法所涉及的操作可被描述为各种互联或耦合的功能块或功能示图。然而,这些功能块或功能示图可被均等地集成为单个的逻辑装置或按照非确切的边界进行操作。
例如,如上所述,根据本发明示例性实施例的实现数据表拼接的计算装置可包括存储部件和处理器,其中,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,执行下述步骤:根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作,在任意两个数据表之间建立基于关联字段的关联关系;根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,设置数据表内的字段与主键之间的关联关系和/或字段的类型;以及基于数据表内的字段与主键之间的关联关系和/或字段的类型,在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表。
例如,如上所述,根据本发明示例性实施例的自动训练机器学习模型的计算装置可包括存储部件和处理器,其中,存储部件中存储有计算机可执行指令集合,当所述计算机可执行指令集合被所述处理器执行时,执行下述步骤:根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作,在任意两个数据表之间建立基于关联字段的关联关系;根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,设置数据表内的字段与主键之间的关联关系和/或字段的类型;基于数据表内的字段与主键之间的关联关系和/或字段的类型,在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表;以及针对拼接出的关联数据表自动训练出对应的机器学习模型。
以上描述了本发明的各示例性实施例,应理解,上述描述仅是示例性的,并非穷尽性的,本发明不限于所披露的各示例性实施例。在不偏离本发明的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。因此,本发明的保护范围应该以权利要求的范围为准。
Claims (30)
1.一种实现数据表拼接的方法,包括:
根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作,在任意两个数据表之间建立基于关联字段的关联关系,其中,基于关联字段的关联关系是指基于两个数据表中对应的含义相同的关联字段而建立的对应关系;
根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,设置数据表内的字段与主键之间的关联关系和/或字段的类型,其中,数据表内的字段与主键之间的关联关系是指一对一、一对多、多对一或多对多,字段的类型是指单维度类别型字段、多维度类别型字段、单维度数值型字段或多维度数值型字段,其中,若字段为单维度类别型字段,则该字段与主键之间的关联关系为一对多,若字段为多维度类别型字段,则该字段与主键之间的关联关系为多对多,若字段为单维度数值型字段,则该字段与主键之间的关联关系为一对一,若字段为多维度数值型字段,则该字段与主键之间的关联关系为多对一;以及
基于数据表内的字段与主键之间的关联关系和/或字段的类型,在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表;
其中,基于数据表内的字段与主键之间的关联关系和/或字段的类型在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表的步骤包括:
针对所述关联起来的至少两个数据表,将具有基于关联字段的关联关系的两个数据表中的一个数据表拼接到另外一个数据表,直至拼接到指定数据表,
其中,当所述至少两个数据表中的两个数据表的待拼接的数据表与拼接到的数据表之间的关联字段间的对应关系为一对多时,基于所述待拼接的数据表内的字段与主键之间的关联关系和/或字段的类型,在所述待拼接的数据表中添加用于对特定字段的字段值进行统计的统计字段,并将添加了统计字段的所述待拼接的数据表基于所述关联字段拼接到所述拼接到的数据表,其中,所述特定字段包括以下字段中的至少一个:所述待拼接的数据表中除主键、所述待拼接的数据表与所述拼接到的数据表之间的关联字段、时间字段之外的数值型字段;以及所述拼接到的数据表中除主键、所述待拼接的数据表与所述拼接到的数据表之间的关联字段、时间字段之外的数值型字段;
其中,基于所述待拼接的数据表内的字段与主键之间的关联关系和/或字段的类型在所述待拼接的数据表中添加用于对特定字段的字段值进行统计的统计字段的步骤包括:
分别将所述待拼接的数据表内的与主键之间的关联关系为多对多的字段和/或多维度类别型字段中的每一个字段作为统计基准字段,并生成以所述统计基准字段为主键的附加表,其中,所述附加表中的每条数据记录除主键之外的字段基于相应主键的每个维度在所述待拼接的数据表和/或所述拼接到的数据表中对应的所述特定字段的统计结果得到;以及
基于所述附加表的主键,将所述附加表拼接到所述待拼接的数据表。
2.如权利要求1所述的方法,其中,当所述至少两个数据表中的另外两个数据表的待拼接的数据表与拼接到的数据表之间的关联字段间的对应关系为一对一时,直接基于所述关联字段将所述待拼接的数据表拼接到所述拼接到的数据表。
3.如权利要求1所述的方法,其中,基于所述待拼接的数据表内的字段与主键之间的关联关系和/或字段的类型在所述待拼接的数据表中添加用于对特定字段的字段值进行统计的统计字段的步骤还包括:
分别将所述待拼接的数据表内的与主键之间的关联关系为一对多的字段和/或单维度类别型字段中的每一个字段作为统计基准字段,并分别针对所述统计基准字段的每个字段值,将所述每个字段值所对应的数据记录中的所述特定字段的字段值的统计结果,作为所述每个字段值所在的数据记录的相应统计字段的字段值。
4.如权利要求1所述的方法,其中,基于所述待拼接的数据表内的字段与主键之间的关联关系和/或字段的类型在所述待拼接的数据表中添加用于对特定字段的字段值进行统计的统计字段的步骤还包括:
分别将所述待拼接的数据表内的与主键之间的关联关系为多对一的字段和/或多维度数值型字段中的每一个字段作为所述特定字段,并将所述特定字段内的每个字段值所包括的各个维度的数值的统计结果,作为所述每个字段值所在的数据记录的相应统计字段的字段值。
5.如权利要求1所述的方法,其中,所述统计结果包括以下项之中的至少一项:求和、求平均、取最大值、取最小值、计算个数、求方差、求均方差。
6.如权利要求1所述的方法,其中,根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作在任意两个数据表之间建立基于关联字段的关联关系的步骤包括:
在用于建立数据表间的关联关系的图形界面中,响应于用于将一个实体节点连接到另一个实体节点的用户操作,将所述一个实体节点连接到所述另一个实体节点,其中,每个实体节点用于表示对应的一个数据表;
响应于用于分别指定所述一个实体节点所表示的数据表中的一个字段和所述另一个实体节点所表示的数据表中的一个字段作为关联字段的用户操作,将指定的字段设置为所述一个实体节点所表示的数据表和所述另一个实体节点所表示的数据表之间的关联字段;
建立所述一个实体节点所表示的数据表与所述另一个实体节点所表示的数据表之间关于设置的关联字段的关联关系;以及
响应于用于指定设置的关联字段间的对应关系的用户操作,将设置的关联字段间的对应关系设置为:一对一或一对多。
7.如权利要求6所述的方法,还包括:
在所述一个实体节点与所述另一个实体节点之间由于所述将所述一个实体节点连接到所述另一个实体节点的用户操作而生成的连线上或所述连线的周围,显示设置的关联字段的名称以及关联字段间的对应关系。
8.如权利要求1所述的方法,其中,根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作设置数据表内的字段与主键之间的关联关系和/或字段的类型的步骤包括:
在用于设置数据表内字段间的关联关系的图形界面中,响应于用于将主键节点连接到一个字段节点的用户操作,在所述图形界面中将主键节点连接到所述一个字段节点,其中,每个字段节点用于表示对应的一个字段,主键节点用于表示主键;以及
响应于用于指定所述一个字段节点所表示的字段与主键之间的关联关系的用户操作,将所述关联关系设置为以下项之一:一对一、一对多、多对一和多对多。
9.如权利要求8所述的方法,还包括:
在主键节点与所述一个字段节点之间由于所述将主键节点连接到所述一个字段节点的用户操作而生成的连线上或所述连线的周围显示所设置的关联关系。
10.如权利要求6或8所述的方法,其中,用于将一个实体节点连接到另一个实体节点的用户操作包括:在所述一个实体节点上悬停,单击响应于所述悬停操作而在所述一个实体节点上显示的待连接的连接点,然后单击所述另一个实体节点;
和/或,用于将主键节点连接到一个字段节点的用户操作包括:在主键节点上悬停,单击响应于所述悬停操作而在主键节点上显示的待连接的连接点,然后单击所述一个字段节点。
11.一种自动训练机器学习模型的方法,包括:
通过执行权利要求1至10之中任一权利要求所述的方法的步骤而得到拼接出的关联数据表;以及
针对拼接出的关联数据表自动训练出对应的机器学习模型。
12.如权利要求11所述的方法,其中,针对拼接出的关联数据表自动训练出对应的机器学习模型的步骤包括:
确定所述关联数据表中的目标值字段,以作为机器学习样本的标记;
基于所述关联数据表中的非目标值字段自动生成机器学习样本的特征;以及
基于由生成的标记和特征组成的机器学习样本来自动训练出对应的机器学习模型。
13.如权利要求12所述的方法,其中,基于所述关联数据表中的非目标值字段自动生成机器学习样本的特征的步骤包括:
将所述关联数据表中的各个非目标值字段直接处理为特征,并从中自动筛选出满足预设条件的特征作为机器学习样本的特征。
14.如权利要求12所述的方法,其中,基于所述关联数据表中的非目标值字段自动生成机器学习样本的特征的步骤包括:
将所述关联数据表中的各个非目标值字段处理为单位特征;
基于得到的单位特征进行自动特征组合,以生成组合特征;以及
基于得到的单位特征和组合特征来确定机器学习样本的特征。
15.一种实现数据表拼接的系统,包括:
表间关系建立装置,根据用户在屏幕中执行的用于基于关联字段建立数据表间的关联关系的输入操作,在任意两个数据表之间建立基于关联字段的关联关系,其中,基于关联字段的关联关系是指基于两个数据表中对应的含义相同的关联字段而建立的对应关系;
表内关系建立装置,根据用户在屏幕中执行的用于指定数据表内的字段与主键之间的关联关系和/或字段的类型的输入操作,设置数据表内的字段与主键之间的关联关系和/或字段的类型,其中,数据表内的字段与主键之间的关联关系是指一对一、一对多、多对一或多对多,字段的类型是指单维度类别型字段、多维度类别型字段、单维度数值型字段或多维度数值型字段,其中,若字段为单维度类别型字段,则该字段与主键之间的关联关系为一对多,若字段为多维度类别型字段,则该字段与主键之间的关联关系为多对多,若字段为单维度数值型字段,则该字段与主键之间的关联关系为一对一,若字段为多维度数值型字段,则该字段与主键之间的关联关系为多对一;以及
拼接装置,基于数据表内的字段与主键之间的关联关系和/或字段的类型,在彼此之间通过基于关联字段的关联关系而关联起来的至少两个数据表之间拼接出对应的一个关联数据表;
其中,拼接装置针对所述关联起来的至少两个数据表,将具有基于关联字段的关联关系的两个数据表中的一个数据表拼接到另外一个数据表,直至拼接到指定数据表,
其中,当所述至少两个数据表中的两个数据表的待拼接的数据表与拼接到的数据表之间的关联字段间的对应关系为一对多时,拼接装置基于所述待拼接的数据表内的字段与主键之间的关联关系和/或字段的类型,在所述待拼接的数据表中添加用于对特定字段的字段值进行统计的统计字段,并将添加了统计字段的所述待拼接的数据表基于所述关联字段拼接到所述拼接到的数据表,其中,所述特定字段包括以下字段中的至少一个:所述待拼接的数据表中除主键、所述待拼接的数据表与所述拼接到的数据表之间的关联字段、时间字段之外的数值型字段;以及所述拼接到的数据表中除主键、所述待拼接的数据表与所述拼接到的数据表之间的关联字段、时间字段之外的数值型字段;
其中,拼接装置分别将所述待拼接的数据表内的与主键之间的关联关系为多对多的字段和/或多维度类别型字段中的每一个字段作为统计基准字段,生成以所述统计基准字段为主键的附加表,并基于所述附加表的主键,将所述附加表拼接到所述待拼接的数据表,其中,所述附加表中的每条数据记录除主键之外的字段基于相应主键的每个维度在所述待拼接的数据表和/或所述拼接到的数据表中对应的所述特定字段的统计结果得到。
16.如权利要求15所述的系统,其中,当所述至少两个数据表中的另外两个数据表的待拼接的数据表与拼接到的数据表之间的关联字段间的对应关系为一对一时,拼接装置直接基于所述关联字段将所述待拼接的数据表拼接到所述拼接到的数据表。
17.如权利要求15所述的系统,其中,拼接装置还分别将所述待拼接的数据表内的与主键之间的关联关系为一对多的字段和/或单维度类别型字段中的每一个字段作为统计基准字段,并分别针对所述统计基准字段的每个字段值,将所述每个字段值所对应的数据记录中的所述特定字段的字段值的统计结果,作为所述每个字段值所在的数据记录的相应统计字段的字段值。
18.如权利要求15所述的系统,其中,拼接装置还分别将所述待拼接的数据表内的与主键之间的关联关系为多对一的字段和/或多维度数值型字段中的每一个字段作为所述特定字段,并将所述特定字段内的每个字段值所包括的各个维度的数值的统计结果,作为所述每个字段值所在的数据记录的相应统计字段的字段值。
19.如权利要求15所述的系统,其中,所述统计结果包括以下项之中的至少一项:求和、求平均、取最大值、取最小值、计算个数、求方差、求均方差。
20.如权利要求15所述的系统,其中,表间关系建立装置包括:
界面提供单元,提供用于建立数据表间的关联关系的图形界面,并响应于用于在所述图形界面中将一个实体节点连接到另一个实体节点的用户操作,将所述一个实体节点连接到所述另一个实体节点,其中,每个实体节点用于表示对应的一个数据表;
关联字段设置单元,响应于用于分别指定所述一个实体节点所表示的数据表中的一个字段和所述另一个实体节点所表示的数据表中的一个字段作为关联字段的用户操作,将指定的字段设置为所述一个实体节点所表示的数据表和所述另一个实体节点所表示的数据表之间的关联字段;
关联关系建立单元,建立所述一个实体节点所表示的数据表与所述另一个实体节点所表示的数据表之间关于设置的关联字段的关联关系;以及
对应关系设置单元,响应于用于指定设置的关联字段间的对应关系的用户操作,将设置的关联字段间的对应关系设置为:一对一或一对多。
21.如权利要求20所述的系统,其中,界面提供单元在所述一个实体节点与所述另一个实体节点之间由于所述将所述一个实体节点连接到所述另一个实体节点的用户操作而生成的连线上或所述连线的周围,显示设置的关联字段的名称以及关联字段间的对应关系。
22.如权利要求15所述的系统,其中,表内关系建立装置包括:
界面提供单元,提供用于设置数据表内字段间的关联关系的图形界面,并响应于用于在所述图形界面中将主键节点连接到一个字段节点的用户操作,在所述图形界面中将主键节点连接到所述一个字段节点,其中,每个字段节点用于表示对应的一个字段,主键节点用于表示主键;以及
关联关系设置单元,响应于用于指定所述一个字段节点所表示的字段与主键之间的关联关系的用户操作,将所述关联关系设置为以下项之一:一对一、一对多、多对一和多对多。
23.如权利要求22所述的系统,其中,界面提供单元在主键节点与所述一个字段节点之间由于所述将主键节点连接到所述一个字段节点的用户操作而生成的连线上或所述连线的周围显示所设置的关联关系。
24.如权利要求20或22所述的系统,其中,用于将一个实体节点连接到另一个实体节点的用户操作包括:在所述一个实体节点上悬停,单击响应于所述悬停操作而在所述一个实体节点上显示的待连接的连接点,然后单击所述另一个实体节点;
和/或,用于将主键节点连接到一个字段节点的用户操作包括:在主键节点上悬停,单击响应于所述悬停操作而在主键节点上显示的待连接的连接点,然后单击所述一个字段节点。
25.一种自动训练机器学习模型的系统,包括:
如权利要求15至24之中任一权利要求所述的实现数据表拼接的系统;以及
训练装置,针对所述实现数据表拼接的系统拼接出的关联数据表自动训练出对应的机器学习模型。
26.如权利要求25所述的系统,其中,训练装置包括:
目标值字段确定单元,确定所述关联数据表中的目标值字段,以作为机器学习样本的标记;
特征生成单元,基于所述关联数据表中的非目标值字段自动生成机器学习样本的特征;以及
训练单元,基于由生成的标记和特征组成的机器学习样本来自动训练出对应的机器学习模型。
27.如权利要求26所述的系统,其中,特征生成单元将所述关联数据表中的各个非目标值字段直接处理为特征,并从中自动筛选出满足预设条件的特征作为机器学习样本的特征。
28.如权利要求26所述的系统,其中,特征生成单元将所述关联数据表中的各个非目标值字段处理为单位特征;基于得到的单位特征进行自动特征组合,以生成组合特征;并基于得到的单位特征和组合特征来确定机器学习样本的特征。
29.一种包括至少一个计算装置和至少一个存储指令的存储装置的系统,其中,所述指令在被所述至少一个计算装置运行时,促使所述至少一个计算装置执行如权利要求1到10中的任一权利要求所述的实现数据表拼接的方法或如权利要求11到14中的任一权利要求所述的自动训练机器学习模型的方法。
30.一种存储指令的计算机可读存储介质,其中,当所述指令被至少一个计算装置运行时,促使所述至少一个计算装置执行如权利要求1到10中的任一权利要求所述的实现数据表拼接的方法或如权利要求11到14中的任一权利要求所述的自动训练机器学习模型的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811619007.6A CN109697066B (zh) | 2018-12-28 | 2018-12-28 | 实现数据表拼接及自动训练机器学习模型的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811619007.6A CN109697066B (zh) | 2018-12-28 | 2018-12-28 | 实现数据表拼接及自动训练机器学习模型的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109697066A CN109697066A (zh) | 2019-04-30 |
CN109697066B true CN109697066B (zh) | 2021-02-05 |
Family
ID=66232165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811619007.6A Active CN109697066B (zh) | 2018-12-28 | 2018-12-28 | 实现数据表拼接及自动训练机器学习模型的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109697066B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111913949B (zh) * | 2019-05-07 | 2023-09-01 | 北京京东振世信息技术有限公司 | 数据处理方法、系统、装置和计算机可读存储介质 |
CN112015423A (zh) * | 2019-05-30 | 2020-12-01 | 北京奇虎科技有限公司 | 数据处理系统及方法 |
CN112131253B (zh) * | 2019-06-25 | 2024-09-20 | 北京沃东天骏信息技术有限公司 | 数据查询方法、装置、设备和存储介质 |
CN112131215B (zh) * | 2019-06-25 | 2023-09-19 | 中国移动通信集团重庆有限公司 | 自底向上的数据库信息获取方法及装置 |
CN111078687B (zh) * | 2019-11-14 | 2023-07-25 | 青岛民航空管实业发展有限公司 | 航班运行数据融合方法、装置及设备 |
CN116303459A (zh) * | 2019-11-28 | 2023-06-23 | 第四范式(北京)技术有限公司 | 处理数据表的方法及系统 |
CN111881110B (zh) * | 2020-06-18 | 2024-04-09 | 贝壳技术有限公司 | 数据迁移方法及装置 |
CN111782651A (zh) * | 2020-06-30 | 2020-10-16 | 平安国际智慧城市科技股份有限公司 | 数据关联关系的可视化编辑方法、装置、设备及存储介质 |
CN111858600B (zh) * | 2020-07-23 | 2024-02-09 | 中国平安人寿保险股份有限公司 | 数据宽表构建方法、装置、设备及存储介质 |
CN112131258B (zh) * | 2020-09-23 | 2023-03-24 | 创新奇智(重庆)科技有限公司 | 数据拼接方法、装置、设备及计算机存储介质 |
CN114443639A (zh) * | 2020-11-02 | 2022-05-06 | 第四范式(北京)技术有限公司 | 处理数据表及自动训练机器学习模型的方法和系统 |
CN113076317B (zh) * | 2021-04-08 | 2024-06-18 | 深圳前海微众银行股份有限公司 | 基于大数据的数据处理方法、装置、设备及可读存储介质 |
CN113590886A (zh) * | 2021-07-05 | 2021-11-02 | 金电联行(北京)信息技术有限公司 | 数据表关联关系自动识别、多数据表自动整合方法及装置 |
CN115185982A (zh) * | 2022-09-14 | 2022-10-14 | 浩鲸云计算科技股份有限公司 | 一种基于数据集编排的数据准备方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106933927A (zh) * | 2015-12-31 | 2017-07-07 | 北京国双科技有限公司 | 数据表的连接方法和装置 |
CN106933919A (zh) * | 2015-12-31 | 2017-07-07 | 北京国双科技有限公司 | 数据表的连接方法及装置 |
CN106951534A (zh) * | 2017-03-22 | 2017-07-14 | 北京数猎天下科技有限公司 | 一种大数据可视化数据关联关系的图形化处理方法和装置 |
CN107219970A (zh) * | 2017-05-19 | 2017-09-29 | 智器云南京信息科技有限公司 | 可视化分析图表的操作方法及装置、可读存储介质、终端 |
CN107402978A (zh) * | 2017-07-04 | 2017-11-28 | 第四范式(北京)技术有限公司 | 拼接数据记录的方法及装置 |
CN107818114A (zh) * | 2016-09-14 | 2018-03-20 | 中国移动通信有限公司研究院 | 一种数据处理方法、装置及数据库 |
CN108090516A (zh) * | 2017-12-27 | 2018-05-29 | 第四范式(北京)技术有限公司 | 自动生成机器学习样本的特征的方法及系统 |
CN108132957A (zh) * | 2016-12-01 | 2018-06-08 | 中国移动通信有限公司研究院 | 一种数据库处理方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140136511A1 (en) * | 2012-11-15 | 2014-05-15 | Microsoft Corporation | Discovery and use of navigational relationships in tabular data |
CN106033436B (zh) * | 2015-03-13 | 2020-05-22 | 中国石油化工股份有限公司 | 一种数据库的合并方法 |
CN105205104A (zh) * | 2015-08-26 | 2015-12-30 | 成都布林特信息技术有限公司 | 一种云平台数据获取方法 |
CN107506442B (zh) * | 2017-08-24 | 2020-09-29 | 中国银行股份有限公司 | 一种模型的建模方法及装置 |
-
2018
- 2018-12-28 CN CN201811619007.6A patent/CN109697066B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106933927A (zh) * | 2015-12-31 | 2017-07-07 | 北京国双科技有限公司 | 数据表的连接方法和装置 |
CN106933919A (zh) * | 2015-12-31 | 2017-07-07 | 北京国双科技有限公司 | 数据表的连接方法及装置 |
CN107818114A (zh) * | 2016-09-14 | 2018-03-20 | 中国移动通信有限公司研究院 | 一种数据处理方法、装置及数据库 |
CN108132957A (zh) * | 2016-12-01 | 2018-06-08 | 中国移动通信有限公司研究院 | 一种数据库处理方法及装置 |
CN106951534A (zh) * | 2017-03-22 | 2017-07-14 | 北京数猎天下科技有限公司 | 一种大数据可视化数据关联关系的图形化处理方法和装置 |
CN107219970A (zh) * | 2017-05-19 | 2017-09-29 | 智器云南京信息科技有限公司 | 可视化分析图表的操作方法及装置、可读存储介质、终端 |
CN107402978A (zh) * | 2017-07-04 | 2017-11-28 | 第四范式(北京)技术有限公司 | 拼接数据记录的方法及装置 |
CN108090516A (zh) * | 2017-12-27 | 2018-05-29 | 第四范式(北京)技术有限公司 | 自动生成机器学习样本的特征的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109697066A (zh) | 2019-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109697066B (zh) | 实现数据表拼接及自动训练机器学习模型的方法和系统 | |
CN109739855B (zh) | 实现数据表拼接及自动训练机器学习模型的方法和系统 | |
CN110928772B (zh) | 一种测试方法及装置 | |
US10489285B2 (en) | Trace management | |
CN110045953B (zh) | 生成业务规则表达式的方法及计算装置 | |
EP2778929B1 (en) | Test script generation system | |
US7827486B2 (en) | Evaluation of visual content usage | |
JP2019520649A (ja) | プロセス視覚化プラットフォーム | |
US20170192872A1 (en) | Interactive detection of system anomalies | |
US20090276733A1 (en) | Method, system, and graphical user interface for presenting an interactive hierarchy and indicating entry of information therein | |
WO2022089652A1 (zh) | 处理数据表及自动训练机器学习模型的方法和系统 | |
US11727325B2 (en) | User interface to analyze and navigate through decision logic | |
US11762720B2 (en) | Information processing apparatus and non-transitory computer-readable storage medium for storing API use history display program | |
US10871951B2 (en) | Code correction | |
CN110990445A (zh) | 一种数据处理方法、装置、设备和介质 | |
CN102945628B (zh) | 事故后果信息获取方法、装置及培训系统 | |
CN115576974A (zh) | 数据处理方法、装置、设备和介质 | |
US20200244748A1 (en) | Analysis and Visualization of Session Paths | |
CN111338609B (zh) | 信息获取方法、装置、存储介质及终端 | |
US9104573B1 (en) | Providing relevant diagnostic information using ontology rules | |
CN112783582A (zh) | 报表生成方法、装置、电子设备及存储介质 | |
CN113779117A (zh) | 一种数据监控方法、装置、存储介质和电子设备 | |
US20230177036A1 (en) | Visualization of complex hierarchy data with interactive adjustments | |
US11995036B2 (en) | Automated customized modeling of datasets with intuitive user interfaces | |
CN114881521A (zh) | 业务评估方法、装置、电子设备以及存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |