掌桥专利:专业的专利平台
掌桥专利
首页

数据入库方法、装置、设备、介质及产品

文献发布时间:2023-06-19 12:07:15


数据入库方法、装置、设备、介质及产品

技术领域

本发明实施例涉及数据处理技术领域,尤其涉及一种数据入库方法、装置、设备、介质及产品。

背景技术

随着移动互联网的发展,各个系统对应的数据库之间需要进行数据交互以满足业务需求。

在数据库之间进行数据交互时,数据提供方系统将数据从数据提供方的数据库中导出成数据文件,通过网络或移动存储介质传递到数据需求方的系统上,再加载到数据需求方的数据库中。但由于数据在导出环节、网络传输环节会有出错的问题,或者由于数据本身内容或数据编码等问题,导致需要导入的数据的格式与数据库配置的表结构不匹配,进而出现无法正常导入到数据需求方数据库的格式异常数据,这些格式异常数据简称为“脏数据”。

现有技术中,面对格式异常数据处理方式是直接进行抛弃,不再导入到数据需求方的数据库中。这就导致两个数据库之间的数据不一致的现象。在数据需求方系统在处理业务需要调用对应的数据库时,会出现无法处理业务或业务处理错误的现象发生。

发明内容

本发明实施例提供一种数据入库方法、装置、设备、介质及产品,用以解决现有技术中,导入数据时两个数据库之间的数据不一致的现象,在数据需求方系统在处理业务需要调用对应的数据库时,会出现无法处理业务或业务处理错误的现象发生的技术问题。

第一方面,本发明实施例提供一种数据入库方法,包括:

获取至少一行目标数据,各行目标数据中包括至少一列格式异常字段;

针对每行目标数据,依次获取每列字段及每列字段对应的逻辑回归模型;

按照预设的字段识别策略,从所述逻辑回归模型中确定与每列字段最相关的逻辑回归模型,采用所述最相关的逻辑回归模型识别对应列是否为格式异常字段;

根据各识别结果构建目标数据中至少一列字段与目标数据库表结构中对应列的映射关系;

根据所述映射关系将各列字段导入到目标数据库中。

第二方面,本发明实施例提供一种数据入库装置,包括:

第一获取模块,用于获取至少一行目标数据,各行目标数据中包括至少一列格式异常字段;

第二获取模块,用于针对每行目标数据,依次获取每列字段及每列字段对应的逻辑回归模型;

确定模块,用于按照预设的字段识别策略,从所述逻辑回归模型中确定与每列字段最相关的逻辑回归模型,采用所述最相关的逻辑回归模型识别对应列是否为格式异常字段;

构建模块,用于根据各识别结果构建目标数据中至少一列字段与目标数据库表结构中对应列的映射关系;

导入模块,用于根据所述映射关系将各列字段导入到目标数据库中。

第三方面,本发明实施例提供一种电子设备,包括:至少一个处理器及存储器;

所述存储器存储计算机执行指令;

所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如第一方面中任一项所述的方法。

第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面任一项所述的方法。

第五方面,本发明实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面任一项所述的方法。

本发明实施例提供的数据入库方法、装置、设备、介质及产品,通过获取至少一行目标数据,各行目标数据中包括至少一列格式异常字段;针对每行目标数据,依次获取每列字段及每列字段对应的逻辑回归模型;按照预设的字段识别策略,从逻辑回归模型中确定与每列字段最相关的逻辑回归模型,采用最相关的逻辑回归模型识别对应列是否为格式异常字段;根据各识别结果构建目标数据中至少一列字段与目标数据库表结构中对应列的映射关系;根据映射关系将各列字段导入到目标数据库中。由于该方案通过最相关的逻辑回归模型识别出每列字段是否为格式异常字段,可有效筛选出格式异常字段,将消除格式异常的数据导入到目标数据库中的表结构中,尽可能使两个数据库之间的数据一致,保证数据需求方系统在处理业务需要调用对应的数据库时,正常处理业务,防止错误现象发生。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1是可以实现本发明实施例的数据入库方法的一种网络架构图;

图2是本发明一实施例提供的数据入库方法的流程示意图;

图3是本发明另一实施例提供的数据入库方法的流程示意图;

图4是本发明又一实施例提供的数据入库方法的流程示意图;

图5是本发明实施例中目标数据的字段识别策略的示意图;

图6是本发明一实施例提供的数据入库装置的结构示意图;

图7是用来实现本发明实施例的数据入库方法的电子设备的第一框图;

图8是用来实现本发明实施例的数据入库方法的电子设备的第二框图。

通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。

为了清楚理解本申请的技术方案,首先对现有技术的方案进行详细介绍。

数据库中的数据来源,除了用户的输入数据,还有从其他系统或数据库导入的数据。数据导入到数据库除了整个数据库的镜像文件、sql文件导入以外,就是使用数据文件进行导入。基本方法就是数据提供方将数据从数据库中导出成数据文件,通过网络或者移动存储介质传递到数据需求方的系统上,再加载到数据需求方的数据库中。一般来说,在数据提供方的数据库表结构与需求方的表结构一致的情况下,数据文件是能够完全正常入库的。但是由于数据在导出环节、网络传输环节会有出错的问题,或者由于数据本身内容或数据编码等问题,导致需要导入的数据的格式与数据库配置的表结构不匹配。

示例性的,数据文件中存储的数据按行进行存储。每行数据都有固定的格式,如相邻两个字段之间有预设分隔符,但是若在数据中,由于字段本身内容中有分隔符,该本属于字段内容中的分隔符与相邻字段间分割标记的预设分隔符一样,就导致该数据在导入到数据需求方的数据库的时候,识别出的字段多于表结构中所要求的每行数据中的字段,出现了格式异常,不能导入到数据需求方的数据库中。

或者在网络传输时,进行传输的数据不完整,原本在一行中的数据,被分成了两行数据,导致两行数据的格式均出现了格式异常,不能导入到数据需求方的数据库中。

现有技术中,面对格式异常数据处理方式是直接进行抛弃,不再导入到数据需求方的数据库中。这就导致两个数据库之间的数据不一致的现象。在数据需求方系统在处理业务需要调用对应的数据库时,会出现无法处理业务或业务处理错误的现象发生。

所以在面对现有技术中的技术问题时,发明人通过创造性的研究发现,由于表结构中每列字段的类型是一致的,每列字段都具有自身的特征。而格式异常的数据只是格式出现了异常,还保留有数据中至少一个字段具有的特征。所以可针对数据中的每个字段进行二分类识别,判断是否为格式异常字段。而逻辑回归模型又是经典的解决二分类问题的机器学习模型,所以可采用训练后的逻辑回归模型判断每列字段是否为格式异常字段。具体地,可针对每行带有格式异常字段中的目标数据,依次获取每列字段及每列字段对应的逻辑回归模型,按照预设的字段识别策略,从逻辑回归模型中确定与每列字段最相关的逻辑回归模型,采用最相关的逻辑回归模型识别对应列是否为格式异常字段。在确定每列数据是否为格式异常数据后,根据各识别结果构建目标数据中至少一列字段与目标数据库表结构中对应列字段的映射关系,进而根据映射关系将各列字段导入到目标数据库中。由于该方案通过最相关的逻辑回归模型识别出每列字段是否为格式异常字段,可有效筛选出格式异常字段,将消除格式异常的数据导入到目标数据库中的表结构中,尽可能使两个数据库之间的数据一致,保证数据需求方系统在处理业务需要调用对应的数据库时,正常处理业务,防止错误现象发生。

所以发明人基于上述的创造性发现,提出了本发明实施例的技术方案。下面对本发明实施例提供的数据入库方法的应用场景和网络架构进行介绍。

图1是可以实现本发明实施例的数据入库方法的一种网络架构图,如图1所示,本发明实施例提供的数据入库方法的网络架构中包括数据提供方系统1,数据需求方系统2及电子设备3。其中,数据提供方系统1包括数据提供方服务器11和数据提供方数据库12。在数据需求方系统2包括数据需求方服务器21和数据需求方数据库22。数据提供方服务器11与数据需求方服务器21通信连接,以将数据提供方数据库12中的数据导入到数据需求方数据库22中。电子设备3与数据需求方服务器21通信连接,在数据需求方数据库22中获取到至少一行目标数据,各行目标数据可以存储在文件中,各行目标数据中包括至少一列格式异常字段。电子设备3针对每行目标数据识别格式异常字段和格式正常字段,根据各识别结果构建目标数据中至少一列字段与目标数据库表结构中对应列字段的映射关系,根据映射关系将各列字段导入到目标数据库中。

其中,数据提供方服务器1和数据需求方服务器2的类型不作限定。如在一种应用场景中,数据提供方系统为核心系统,数据需求方系统为某子系统。每次只对核心系统中的数据库中的数据进行更新,然后再同步到子系统中的数据库中。

示例性的,在银行业务中,核心系统将柜员信息和网点信息分别以表的形式存储到对应数据库中。每天在固定时间,将柜员信息和网点信息导入到子系统中的数据库中。

可以理解的是,本发明实施例提供的应用场景还可以为其他场景,本实施例中对此不作限定。

下面以具体地实施例对本发明的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本发明的实施例进行描述。

实施例一

图2是本发明一实施例提供的数据入库方法的流程示意图,如图2所示,本实施例提供的数据入库方法的执行主体为数据入库装置,该数据入库装置位于电子设备中。则本实施例提供的数据入库方法包括以下步骤:

步骤101,获取至少一行目标数据,各行目标数据中包括至少一列格式异常字段。

本实施例中,数据需求方系统服务器从数据提供方系统服务器的数据库中获取到每行数据后,对每行数据的格式进行识别,将识别出的格式正常数据导入到数据需求方系统的数据库中,将识别出的格式异常数据,按行导入到预设文件中。

本实施例中,电子设备判断预设文件中是否存储有数据,若存储有数据,则按行获取该数据,该数据为目标数据。目标数据为包括有至少一列格式异常字段的数据。也可称为脏数据。

其中,格式异常字段为与数据需求方系统的数据库表结构中对应字段的格式不一致的字段。

步骤102,针对每行目标数据,依次获取每列字段及每列字段对应的逻辑回归模型。

具体地,本实施例中,数据需求方数据库的表结构中,每列字段的类型是一致的,并且都有自身的特征,所以可针对每列字段训练出对应的逻辑回归模型。

作为一种可选实施方式,可获取数据需求方数据库的表结构中每相邻两列字段,分别提取对应的字段特征作为训练正负样本,采用训练正负样本对预设逻辑回归模型进行训练,以获得对应的逻辑回归模型。

例如,获取第一列和第二列字段特征作为训练正负样本,训练获得的逻辑回归模型为第一列字段对应的逻辑回归模型。获取第二列和第三列字段特征作为训练正负样本,训练获得的逻辑回归模型为第二列字段对应的逻辑回归模型。获取第N列和第N+1列字段特征作为训练正负样本,训练获得的逻辑回归模型为第N列字段对应的逻辑回归模型。

可以理解的是,还可以采用其他方式选择正负训练样本,以获得每列字段对应的逻辑回归模型,本实施例中对每列字段对应的逻辑回归模型的获得方式不作限定。

步骤103,按照预设的字段识别策略,从逻辑回归模型中确定与每列字段最相关的逻辑回归模型,采用最相关的逻辑回归模型识别对应列是否为格式异常字段。

本实施例中,可按照从前往后的顺序对目标数据中的每列字段进行识别,若第一列字段的识别结果为格式正常字段,则继续对第二列字段进行识别,若识别出第二列的识别结果仍然为格式正常字段,则继续对第三列字段进行识别,以此类推,直到识别出某一列字段的识别结果为格式异常字段。然后再按照从后往前的顺序对目标数据进行识别,若最后一列字段的识别结果为格式正常字段,则继续往前推进,对倒数第二列字段进行识别,若倒数第二列的识别结果为格式正常字段,则继续往前推进,对倒数第三列字段进行识别,以此类推,直到某一列字段的识别结果为格式异常字段。这些从前往后的顺序进行识别以及从后往前的顺序进行识别的每一列字段,确定其对应的逻辑回归模型为最相关的逻辑回归模型,采用其对应的逻辑回归模型识别对应列字段。

针对在两列字段识别结果为格式异常字段之间的至少一列字段,按照从头往后的顺序进行识别,针对这些列字段,确定识别结果为格式异常字段的第一列字段对应的逻辑回归模型或当前字段的前面字段对应的逻辑回归模型为当前字段最相关的逻辑回归模型。采用第一列字段对应的逻辑回归模型或当前字段的前面字段对应的逻辑回归模型识别对应列字段。

可以理解的是,预设的字段识别策略还可以为其他策略,本实施例中对此不作限定。

步骤104,根据各识别结果构建目标数据中至少一列字段与目标数据库表结构中对应列的映射关系。

其中,目标数据库为数据需求方数据库。表结构中具有行和列,数据导入到表结构中,数据按照行存储。

本实施例中,首先构建目标数据中从前往后的顺序进行识别以及从后往前的顺序进行识别的格式正常字段与目标数据库表结构中对应的相同列的映射关系。然后针对在两个格式异常字段之间的字段,根据这些字段的识别结果,可选择性构建这些字段与目标数据库表结构中对应列的映射关系。

步骤105,根据映射关系将各列字段导入到目标数据库中。

本实施例中,根据映射关系,将具有映射关系的各列字段导入到目标数据库表结构的对应列中。

本实施例提供的数据入库方法,通过获取至少一行目标数据,各行目标数据中包括至少一列格式异常字段;针对每行目标数据,依次获取每列字段及每列字段对应的逻辑回归模型;按照预设的字段识别策略,从逻辑回归模型中确定与每列字段最相关的逻辑回归模型,采用最相关的逻辑回归模型识别对应列是否为格式异常字段;根据各识别结果构建目标数据中至少一列字段与目标数据库表结构中对应列的映射关系;根据映射关系将各列字段导入到目标数据库中。由于该方案通过最相关的逻辑回归模型识别出每列字段是否为格式异常字段,可有效筛选出格式异常字段,将消除格式异常的数据导入到目标数据库中的表结构中,尽可能使两个数据库之间的数据一致,保证数据需求方系统在处理业务需要调用对应的数据库时,正常处理业务,防止错误现象发生。

实施例二

图3是本发明另一实施例提供的数据入库方法的流程示意图,如图3所示,本实施例提供的数据入库方法是在实施例一提供的数据入库方法的基础上,还包括了确定每列字段对应的逻辑回归模型的技术方案,则本实施例提供的数据入库方法,在步骤102之前,还包括以下步骤:

步骤201,获取表结构中每列字段对应的特征。

本实施例中,在表结构按行存储有大量数据,每行数据具有N列字段,针对每列字段,获取对应的特征。

本实施例中,每列字段对应的特征可采用预设的特征提取算法提取获得。或者,在建立数据库的表结构时,预先配置表结构中每列字段对应的特征。

其中,每列字段对应的特征可以包括:字段长度,字段内容是中文和/或数字和/或字母,是否是时间格式,是否为空等等。

步骤202,除第一列和最后一列字段以外,针对第N列字段,将第N-1列字段对应的特征作为训练负样本,将第N列字段对应的特征作为训练正样本,对预设逻辑回归模型进行训练,以获得第N列字段对应的第一逻辑回归模型;将第N列字段对应的特征作为训练正样本,将第N+1列字段对应的特征作为训练负样本,对预设逻辑回归模型进行训练,以获得第N列字段对应的第二逻辑回归模型,将第一逻辑回归模型和第二逻辑回归模型均确定为第N列字段对应的逻辑回归模型。

具体地,本实施例中,为了准确识别目标数据中每一列字段是否为格式异常字段,在位于表结构中间位置的每列字段分别对应两个逻辑回归模型。对于第N列字段,第一逻辑回归模型是由第N-1列字段对应的特征作为训练负样本,第N列字段对应的特征作为训练正样本对预设逻辑回归模型训练得到的。第二逻辑回归模型是由第N列字段对应的特征作为训练正样本,第N+1列字段对应的特征作为训练负样本对预设逻辑回归模型训练得到的。

步骤203,针对第一列字段和最后一列字段,将本列字段对应的特征作为训练正样本,将相邻列字段对应的特征作为训练负样本,对预设逻辑回归模型进行训练,以获得本列字段对应的逻辑回归模型。

具体地,本实施例中,针对第一列字段,将第一列字段对应的特征作为训练正样本,将第二列字段对应的特征作为训练负样本,对预设逻辑回归模型进行训练,以获得第一列字段对应的逻辑回归模型。

针对最后一列字段,将倒数第二列字段对应的特征作为训练负样本,将最后一列字段对应的特征作为训练正样本,对预设逻辑回归模型进行训练,以获得最后一列字段对应的逻辑回归模型。

本实施例中,对预设逻辑回归模型进行训练时,训练收敛的条件不作限定。

本实施例提供的数据入库方法,在获取每列字段对应的逻辑回归模型之前,还包括:获取表结构中每列字段对应的特征;除第一列和最后一列字段以外,针对第N列字段,将第N-1列字段对应的特征作为训练负样本,将第N列字段对应的特征作为训练正样本,对预设逻辑回归模型进行训练,以获得第N列字段对应的第一逻辑回归模型;将第N列字段对应的特征作为训练正样本,将第N+1列字段对应的特征作为训练负样本,对预设逻辑回归模型进行训练,以获得第N列字段对应的第二逻辑回归模型,将第一逻辑回归模型和第二逻辑回归模型均确定为第N列字段对应的逻辑回归模型;N为大于等于2的整数;针对第一列字段和最后一列字段,将本列字段对应的特征作为训练正样本,将相邻列字段对应的特征作为训练负样本,对预设逻辑回归模型进行训练,以获得本列字段对应的逻辑回归模型。针对位于表结构中间列的字段,具有两个对应的逻辑回归模型,能够在对目标数据中每列字段进行识别时,更准确地识别出对应列字段是否为格式异常字段。

实施例三

图4是本发明又一实施例提供的数据入库方法的流程示意图,如图4所示,本实施例提供的数据入库方法是在实施例一或实施例二提供的数据入库方法的基础上,对步骤102-步骤105的进一步细化,并且还包括了其他步骤,则本实施例提供的数据入库方法包括以下步骤:

步骤301,获取至少一行目标数据,各行目标数据中包括至少一列格式异常字段。

本实施例中,步骤301的实现方式与实施例一中的步骤101的实现方式类似,在此不再一一赘述。

步骤302,针对每行目标数据,依次获取每列字段及每列字段对应的逻辑回归模型。

其中,第一列字段和最后一列字段对应的逻辑回归模型为一个,中间的N列字段中的每列字段对应的逻辑回归模型为两个。

步骤303,按照预设的字段识别策略,从逻辑回归模型中确定与每列字段最相关的逻辑回归模型。

作为一种可选实施方式,本实施例中,步骤303包括以下步骤:

步骤3031,按照字段从前往后的顺序进行识别,直到某一列字段的识别结果为格式异常字段,再按照字段从后往前的顺序进行识别,直到某一列字段的识别结果为格式异常字段,针对从前往后的顺序进行识别以及从后往前的顺序进行识别的每一列字段,确定其对应的逻辑回归模型为最相关的逻辑回归模型。

示例性地,如图5所示,目标数据包括10个字段,每个字段间用“/”作为预设分割符隔开。箭头上的序号表示字段的识别顺序。首先按照字段从前往后的顺序进行识别。确定第一列字段对应的逻辑回归模型为第一列字段最相关的逻辑回归模型,采用第一列字段对应的逻辑回归模型识别第一列字段是否为格式异常字段。在第一列字段的识别结果为格式正常字段时,继续识别第二列字段,确定第二列字段对应的两个逻辑回归模型作为其最相关的逻辑回归模型,采用第二列字段对应的两个逻辑回归模型识别第二列字段是否为格式异常字段,若两个逻辑回归模型中至少一个逻辑回归模型识别第二列字段为格式异常字段,则确定第二列字段为格式异常字段,在两个逻辑回归模型均识别第二列字段为格式正常字段,则确定第二列字段为格式正常字段。在确定第二列字段的识别结果为格式正常字段时,继续识别第三列字段,确定第三列字段对应的两个逻辑回归模型为其最相关的逻辑回归模型。以此类推,直到某一列字段的识别结果为格式异常字段。示例性地,如图5所示,从第一列字段到第二列字段的识别结果均为格式正常字段,第三列字段识别结果为格式异常字段。

然后按照从后往前的顺序进行识别,确定最后一列字段对应的逻辑回归模型为最后一列字段最相关的逻辑回归模型,采用最后一列字段对应的逻辑回归模型识别最后一列字段是否为格式异常字段。在最后一列字段的识别结果为格式正常字段时,继续识别倒数第二列字段,确定倒数第二列字段对应的两个逻辑回归模型作为其最相关的逻辑回归模型,采用倒数第二列字段对应的两个逻辑回归模型识别倒数第二列字段是否为格式异常字段,若两个逻辑回归模型中至少一个逻辑回归模型识别倒数第二列字段为格式异常字段,则确定倒数第二列字段为格式异常字段,在两个逻辑回归模型均识别倒数第二列字段为格式正常字段,则确定倒数第二列字段为格式正常字段。在确定倒数第二列字段的识别结果为格式正常字段时,继续识别倒数第三列字段,确定倒数第三列字段对应的两个逻辑回归模型为其最相关的逻辑回归模型。以此类推,直到某一列字段的识别结果为格式异常字段。如图5所示,从最后一列字段到倒数第三列字段的识别结果均为格式正常字段,倒数第四列字段(即第七列字段)识别结果为格式异常字段。

步骤3032,针对两列字段识别结果为格式异常字段之间的至少一列字段,按照从头往后的顺序进行识别,确定识别结果为格式异常字段的第一列字段对应的逻辑回归模型或当前字段的前面字段对应的逻辑回归模型为当前字段最相关的逻辑回归模型。

本实施例中,若确定在两列字段识别结果为格式异常字段之间还存在至少一列字段,则针对这至少一列字段,从头往后的顺序进行识别。示例性地,如图5所示,在第三列字段和第七列字段之间具有三列字段,分别为第四列字段,第五列字段和第六列字段。

首先识别第四列字段。由于第四列字段与第三列字段相邻,第三列字段识别结果为格式异常字段,所以第四列字段最有可能属于表结构中的第三列字段,所以将格式异常字段的第一列字段(即第三列字段)对应的逻辑回归模型作为第四列字段最相关的逻辑回归模型。

若第四列字段识别结果为格式正常字段,则构建第四列字段与表结构中第三列字段的映射关系。对第五列字段进行识别时,说明第五列字段最有可能属于表结构中的第四列字段,则将第四列字段对应的逻辑回归模型作为第五列字段最相关的逻辑回归模型,对第五列字段进行识别。

若第四列字段识别结果仍然为格式异常字段,则说明第四列字段与表结构中的第三列字段的特征并不一致。则对第五列字段进行识别时,说明第五列字段最有可能属于表结构中的第三列字段,所以仍然将格式异常字段的第一列字段(即第三列字段)对应的逻辑回归模型作为第五列字段最相关的逻辑回归模型。

若第五列字段识别结果为格式正常字段,则构建第五列字段与表结构中的第三列字段的映射关系,对第六列字段进行识别时,说明第六列字段最有可能属于表结构中的第四列字段,则将第四列字段对应的逻辑回归模型作为第六列字段最相关的逻辑回归模型,对第六列字段进行识别。

若第五列字段识别结果仍然为格式异常字段,说明第六列字段最有可能属于表结构中的第三列字段,继续将格式异常字段的第一列字段(即第三列字段)对应的逻辑回归模型作为第六列字段最相关的逻辑回归模型。

所以本实施例中,针对两列字段识别结果为格式异常字段之间的至少一列字段,按照从头往后的顺序进行识别,对于当前字段,若相邻的前一列字段的识别结果为格式异常字段,则确定识别结果为格式异常字段的第一列字段对应的逻辑回归模型为当前字段最相关的逻辑回归模型。若相邻的前一列字段的识别结果为格式正常字段,则确定当前字段的前面字段对应的逻辑回归模型为当前字段最相关的逻辑回归模型。

步骤304,采用最相关的逻辑回归模型识别对应列是否为格式异常字段。

作为一种可选实施方式,本实施例中,步骤304包括以下几个步骤:

步骤3041,若确定最相关的逻辑回归模型为一个,则将字段输入到最相关的逻辑回归模型中,输出是否为格式异常字段的识别结果。

本实施例中,由于每列字段对应的逻辑回归模型有一个或两个的情况,而目标数据中的每列字段最相关的逻辑回归模型为自身对应的逻辑回归模型或前面某列字段对应的逻辑回归模型,所以针对目标数据中的每列字段,最相关的逻辑回归模型也有一个或两个的情况。

具体地,若确定最相关的逻辑回归模型为一个,则将字段输入到最相关的逻辑回归模型中,由最相关的逻辑回归模型确定该字段是否为格式异常字段,并输出是否为格式异常字段的识别结果。

步骤3042,若确定最相关的逻辑回归模型为两个,则将字段分别输入到最相关的两个逻辑回归模型中,分别输出是否为格式异常字段的识别结果,若确定至少一个逻辑回归模型对应的识别结果为格式异常字段,则确定该字段对应的识别结果为格式异常字段。

具体地,本实施例中,若确定最相关的逻辑回归模型为两个,则将字段输入到最相关的第一逻辑回归模型中,由最相关的第一逻辑回归模型识别该字段是否为格式异常字段,并输出是否为格式异常字段的识别结果。再将字段输入到最相关的第二逻辑回归模型中,由最相关的第二逻辑回归模型识别该字段是否为格式异常字段,并输出是否为格式异常字段的识别结果。若确定两个最相关逻辑回归模型对应的识别结果均为格式正常字段,则确定该字段对应的识别结果为格式正常字段。若确定至少一个逻辑回归模型对应的识别结果为格式异常字段,则确定该字段对应的识别结果为格式异常字段。

步骤305,根据各识别结果构建目标数据中至少一列字段与目标数据库表结构中对应列的映射关系。

作为一种可选实施方式,本实施例中,步骤305包括以下步骤:

步骤3051,获取识别结果为格式正常字段的至少一列字段。

本实施例中,在目标数据的识别结果中,至少有一列字段为格式正常字段。至少一列格式正常字段可分布在从前往后的顺序进行识别和/或从后往前的顺序进行识别的字段中,和/或分布在两列字段识别结果为格式异常字段之间的字段中。

示例性的,如图5所示,格式正常字段分别为第一列字段,第二列字段,第十列字段,第九列字段,第八列字段及第三列和第七列之间的至少一列字段。

步骤3052,从从前往后的顺序进行识别以及从后往前的顺序进行识别的字段中,获取格式正常字段,将其与表结构中序号相同的列构建映射关系。

具体地,本实施例中,在从从前往后的顺序进行识别以及从后往前的顺序进行识别的字段中,格式正常字段,与表结构中序号相同的列的特征一致,所以将格式正常字段与表结构中序号相同的列构建映射关系。

示例性地,在图5中,第一列字段与表结构中的第一列构建映射关系,第二列字段与表结构中的第二列构建映射关系,第十列字段与表结构中的第十列构建映射关系,第九列字段与表结构中的第九列构建映射关系,第八列字段与表结构中的第八列构建映射关系。

步骤3053,针对两列字段识别结果为格式异常字段之间的格式正常字段,将其与表结构中序号在该列字段序号之前的列构建映射关系。

具体地,本实施例中,由于在格式异常字段之间的格式正常字段之前,具有格式异常字段,所以对于该格式正常字段,应与表结构中序号在该列字段序号之前的列具有映射关系,进而构建该格式正常字段与表结构中序号在该列字段序号之前的列的映射关系。

示例性地,在图5中,若第四列为格式正常字段,第五列为格式正常字段。则构建第四列字段与表结构中的第三列的映射关系。构建第五列字段与表结构中的第四列的映射关系。

步骤306,判断表结构中每列字段导入要求是否包括不空白要求,若是,则执行步骤307,否则执行步骤308。

本实施例中,在数据库中预先对表结构中每列字段的导入要求进行配置。有些表结构中配置的导入要求中某一列或多列字段不能是空白的,所以判断表结构中每列字段导入要求是否包括不空白要求。

步骤307,确定目标数据中是否有与不空白要求的列具有映射关系的列字段,若是,则执行步骤308,否则执行步骤309。

步骤308,根据映射关系将各列字段导入到目标数据库中。

步骤309,输出禁止导入提醒信息,禁止导入提醒信息中包括:禁止导入原因。

步骤310,禁止目标数据中的各列字段导入到目标数据库中。

具体地,本实施例中,若确定包括不空白要求,则判断目标数据中是否有与不空白要求的列具有映射关系的列字段,若是,则说明满足不空白要求,根据映射关系将各列字段导入到目标数据库中。若否,则说明不满足不空白要求,该目标数据不能导入到表结构中,则输出禁止导入提醒信息,在禁止导入提醒信息中写明禁止导入原因,如在禁止导入原因中写明目标数据在导入到表结构中某列是空白的,不符合不空白要求。

对步骤307-步骤310进行示例性说明。如在表结构中第5列字段导入要求包括不空白要求,但在目标数据中没有表结构第5列字段具有映射关系的列字段,即目标数据中没有对应的列字段能够导入到表结构的第5列字段中。则禁止该目标数据中的各列字段导入到目标数据库中,还输出禁止导入提示信息。

本实施例提供的实施例提供的数据入库方法,在根据映射关系将各列字段导入到目标数据库中时,判断表结构中每列字段导入要求是否包括不空白要求;若确定包括不空白要求,则确定目标数据中是否有与不空白要求的列具有映射关系的列字段;若确定具有映射关系的列字段,则根据映射关系将各列字段导入到目标数据库中。若确定不具有映射关系的列字段,则输出禁止导入提醒信息,禁止导入提醒信息中包括:禁止导入原因;禁止目标数据中的各列字段导入到目标数据库中。能够在对数据进行入库时,在满足数据库对表结构中有些列字段的不空白要求的情况下,尽可能使两个数据库之间的数据一致,保证数据需求方系统在处理业务需要调用对应的数据库时,正常处理业务,防止错误现象发生。

实施例四

图6是本发明一实施例提供的数据入库装置的结构示意图,如图6所示,本实施例提供的数据入库装置位于电子设备中。则本实施例提供的数据入库装置40包括:第一获取模块41,第二获取模块42,确定模块43,构建模块44及导入模块45。

其中,第一获取模块41,用于获取至少一行目标数据,各行目标数据中包括至少一列格式异常字段。第二获取模块42,用于针对每行目标数据,依次获取每列字段及每列字段对应的逻辑回归模型。确定模块43,用于按照预设的字段识别策略,从逻辑回归模型中确定与每列字段最相关的逻辑回归模型,采用最相关的逻辑回归模型识别对应列是否为格式异常字段。构建模块44,用于根据各识别结果构建目标数据中至少一列字段与目标数据库表结构中对应列的映射关系。导入模块45,用于根据映射关系将各列字段导入到目标数据库中。

可选地,本实施例提供的数据入库装置,还包括:模型训练模块。

模型训练模块,用于获取表结构中每列字段对应的特征;除第一列和最后一列字段以外,针对第N列字段,将第N-1列字段对应的特征作为训练负样本,将第N列字段对应的特征作为训练正样本,对预设逻辑回归模型进行训练,以获得第N列字段对应的第一逻辑回归模型;将第N列字段对应的特征作为训练正样本,将第N+1列字段对应的特征作为训练负样本,对预设逻辑回归模型进行训练,以获得第N列字段对应的第二逻辑回归模型,将第一逻辑回归模型和第二逻辑回归模型均确定为第N列字段对应的逻辑回归模型;N为大于等于2的整数;针对第一列字段和最后一列字段,将本列字段对应的特征作为训练正样本,将相邻列字段对应的特征作为训练负样本,对预设逻辑回归模型进行训练,以获得本列字段对应的逻辑回归模型。

可选地,确定模块43,在采用最相关的逻辑回归模型识别对应列字段是否为格式异常字段时,具体用于:

若确定最相关的逻辑回归模型为一个,则将字段输入到最相关的逻辑回归模型中,输出是否为格式异常字段的识别结果;若确定最相关的逻辑回归模型为两个,则将字段分别输入到最相关的两个逻辑回归模型中,分别输出是否为格式异常字段的识别结果,若确定至少一个逻辑回归模型对应的识别结果为格式异常字段,则确定该字段对应的识别结果为格式异常字段。

可选地,确定模块43,在按照预设的字段识别策略,从逻辑回归模型中确定与每列字段最相关的逻辑回归模型时,具体用于:

按照字段从前往后的顺序进行识别,直到某一列字段的识别结果为格式异常字段,再按照字段从后往前的顺序进行识别,直到某一列字段的识别结果为格式异常字段,针对从前往后的顺序进行识别以及从后往前的顺序进行识别的每一列字段,确定其对应的逻辑回归模型为最相关的逻辑回归模型;针对两列字段识别结果为格式异常字段之间的至少一列字段,按照从头往后的顺序进行识别,确定识别结果为格式异常字段的第一列字段对应的逻辑回归模型或当前字段的前面字段对应的逻辑回归模型为当前字段最相关的逻辑回归模型。

可选地,构建模块44,具体用于:

获取识别结果为格式正常字段的至少一列字段;从从前往后的顺序进行识别以及从后往前的顺序进行识别的字段中,获取格式正常字段,将其与表结构中序号相同的列构建映射关系;针对两列字段识别结果为格式异常字段之间的格式正常字段,将其与表结构中序号在该列字段序号之前的列构建映射关系。

可选地,导入模块45,具体用于:

判断表结构中每列字段导入要求是否包括不空白要求;若确定包括不空白要求,则确定目标数据中是否有与不空白要求的列具有映射关系的列字段;若确定具有映射关系的列字段,则根据映射关系将各列字段导入到目标数据库中。

可选地,本实施例提供的数据入库装置,还包括:输出模块和禁止导入模块。

若确定不具有映射关系的列字段,则输出模块,用于输出禁止导入提醒信息,禁止导入提醒信息中包括:禁止导入原因。禁止导入模块,用于禁止目标数据中的各列字段导入到目标数据库中。

本实施例提供的数据入库装置可以执行图2-图4所示方法实施例的技术方案,其实现原理和技术效果与图2-图4所示方法实施例类似,在此不再一一赘述。

实施例五

图7是用来实现本发明实施例的数据入库方法的电子设备的第一框图,如图7所示,本实施例提供的电子设备50包括:至少一个处理器52及存储器51。

存储器51存储计算机执行指令。

至少一个处理器52执行存储器存储的计算机执行指令,使得至少一个处理器执行上述实施例一或实施例二或实施例三中的方法。

实施例六

图8是用来实现本发明实施例的数据入库方法的电子设备的第二框图,如图8所示,该电子设备600可以是计算机,消息收发设备,平板设备,个人数字助理等。

电子设备600可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,输入/输出(I/O)接口612,传感器组件614,以及通信组件616。

处理组件602通常控制电子设备600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。

存储器604被配置为存储各种类型的数据以支持在电子设备600的操作。这些数据的示例包括用于在电子设备600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。

电源组件606为电子设备600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为电子设备600生成、管理和分配电力相关联的组件。

多媒体组件608包括在电子设备600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当电子设备600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当电子设备600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。

I/O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件614包括一个或多个传感器,用于为电子设备600提供各个方面的状态评估。例如,传感器组件614可以检测到电子设备600的打开/关闭状态,组件的相对定位,例如组件为电子设备600的显示器和小键盘,传感器组件614还可以检测电子设备600或电子设备600一个组件的位置改变,用户与电子设备600接触的存在或不存在,电子设备600方位或加速/减速和电子设备600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件616被配置为便于电子设备600和其他设备之间有线或无线方式的通信。电子设备600可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。

在示例性实施例中,电子设备600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由电子设备600的处理器620执行以完成上述方法。例如,非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。

一种非临时性计算机可读存储介质,当该存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述实施例一或实施例二提供的方法。

在示例性实施例中,还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行上述实施例一或实施例二提供的方法。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本发明旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求书指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求书来限制。

相关技术
  • 数据入库方法、装置、设备、介质及产品
  • 一种产品数据入库方法、终端设备及存储介质
技术分类

06120113178060