CN111782728B - 一种数据同步方法、装置、电子设备及介质 - Google Patents

一种数据同步方法、装置、电子设备及介质 Download PDF

Info

Publication number
CN111782728B
CN111782728B CN202010622997.XA CN202010622997A CN111782728B CN 111782728 B CN111782728 B CN 111782728B CN 202010622997 A CN202010622997 A CN 202010622997A CN 111782728 B CN111782728 B CN 111782728B
Authority
CN
China
Prior art keywords
data
field
synchronized
abnormal data
abnormal
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
Application number
CN202010622997.XA
Other languages
English (en)
Other versions
CN111782728A (zh
Inventor
王颖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Cloud Network Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN202010622997.XA priority Critical patent/CN111782728B/zh
Publication of CN111782728A publication Critical patent/CN111782728A/zh
Application granted granted Critical
Publication of CN111782728B publication Critical patent/CN111782728B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例提供了一种数据同步方法、装置、电子设备及介质,涉及云计算领域,尤其涉及数据处理技术领域。本发明实施例包括:读取源数据库的源端数据表中的数据,得到待同步数据集,针对待同步数据集中的每条数据,检测该数据的指定字段是否符合指定字段对应的检核规则,若不符合指定字段对应的检核规则,则确定该数据为异常数据。确定源端数据表中的异常数据数量,根据该异常数据数量,对待同步数据集进行同步处理操作。可以避免过多异常数据被同步,避免传输资源以及存储资源的浪费。

Description

一种数据同步方法、装置、电子设备及介质
技术领域
本发明涉及数据处理技术领域,特别是涉及一种数据同步方法、装置、电子设备及介质。
背景技术
相关技术中,异构数据源同步平台可以实现关系型数据库(比如MySQL、Oracle等)、分布式文件系统(Hadoop Distributed File System,HDFS)、Hive、Hbase、文件传输协议(File Transfer Protocol,FTP)等异构数据源之间稳定高效的数据同步。
现有的数据同步方法为,数据同步平台提供一套抽象化的数据抽取插件和数据写入插件,并基于此设计一套简化版的中间数据传输格式。对于任意结构化、半结构化的数据源,均可使用数据抽取插件从一个数据源中抽取数据,采用上述中间数据传输格式对数据进行传输,并由数据写入插件将抽取的数据写入另一个数据源。
然而,在数据同步过程中,数据同步平台只能将一个数据源中需要被同步的所有数据同步至另一个数据源,无法发现被同步的数据中的异常数据,若被同步的数据中存在较多的异常数据,将造成传输资源以及存储资源的浪费。
发明内容
本发明实施例的目的在于提供一种数据同步方法、装置、电子设备及介质,以避免过多异常数据被同步,避免传输资源以及存储资源的浪费。具体技术方案如下:
第一方面,本申请实施例提供一种数据同步方法,包括:
读取源数据库的源端数据表中的数据,得到待同步数据集;
针对所述待同步数据集中的每条数据,检测该数据的指定字段是否符合所述指定字段对应的检核规则,其中,所述检核规则是预先设置的;
若不符合所述指定字段对应的检核规则,则确定该数据为异常数据;
确定所述待同步数据集中的异常数据数量;
根据所述异常数据数量,对所述待同步数据集进行同步处理操作。
在一种可能的实现方式中,所述根据所述异常数据数量,对所述待同步数据集进行同步处理操作,包括:
若所述异常数据数量小于或者等于告警阈值,则将所述待同步数据集同步至目标数据库中。
在一种可能的实现方式中,所述根据所述异常数据数量,对所述待同步数据集进行同步处理操作,包括:
若所述异常数据小于或者等于告警阈值,则对所述异常数据进行处理,以更新待同步数据集,得到更新后的待同步数据集;
将更新后的待同步数据集同步至目标数据库中。
在一种可能的实现方式中,所述检核规则通过以下步骤设置得到:
展示用于编辑检核规则的设置页面;
接收用户在所述设置页面的编辑信息,所述编辑信息用于生成所述检核规则;
通过预设交互接口,获取生成的所述检核规则,以执行所述针对所述待同步数据集中的每条数据,检测该数据的指定字段是否符合所述指定字段对应的检核规则的步骤。
在一种可能的实现方式中,所述对所述异常数据进行处理,包括:
若所述异常数据的第一指定字段存在乱码字符,则将所述乱码字符替换为第一预设字符,所述第一指定字段为字符串类型的字段;和/或,
若所述异常数据的第二指定字段存在转义字符,则将所述转义字符替换为第二预设字符,所述第二指定字段为字符串类型的字段;和/或,
若所述异常数据的第三指定字段的长度大于预设长度阈值,则过滤所述异常数据,所述第三指定字段为字符串类型、整型或浮点数类型的字段;和/或,
若所述异常数据的第四指定字段包括除指定形式的内容以外的内容,则过滤所述异常数据,所述第四指定字段为字符串类型的字段;和/或,
若所述异常数据的第五指定字段不符合预定义格式,则过滤所述异常数据,所述第五指定字段为具有所述预定义格式的字段。
在一种可能的实现方式中,在对所述异常数据进行处理之后,所述方法还包括:
记录所述异常数据的异常明细信息,所述异常明细信息包括所述异常数据的异常字段内容和各异常字段内容的异常原因。
在一种可能的实现方式中,在得到更新后的待同步数据集之后,所述方法还包括:
接收检核结果查询请求;
响应于所述检核结果查询请求,反馈所述待同步数据集中的异常数据以及各异常数据的异常明细信息。
在一种可能的实现方式中,在确定所述待同步数据集中的异常数据量之后,所述方法还包括:
若所述异常数据数量大于所述告警阈值,则终止数据同步过程,基于指定告警方式向指定告警对象发送告警消息。
第二方面,本申请实施例提供一种数据同步装置,包括:
获取模块,用于读取源数据库的源端数据表中的数据,得到待同步数据集;
检核模块,用于针对所述待同步数据集中的每条数据,检测该数据的指定字段是否符合所述指定字段对应的检核规则,其中,所述检核规则是预先设置的;若不符合所述指定字段对应的检核规则,则确定该数据为异常数据;
确定模块,用于确定所述待同步数据集中的异常数据数量;
同步模块,用于根据所述异常数据数量,对所述待同步数据集进行同步处理操作。
在一种可能的实现方式中,所述同步模块,具体用于若所述异常数据数量小于或者等于告警阈值,则将所述待同步数据集同步至目标数据库中。
在一种可能的实现方式中,所述同步模块,具体用于:
若所述异常数据小于或者等于告警阈值,则对所述异常数据进行处理,以更新待同步数据集,得到更新后的待同步数据集;
将更新后的待同步数据集同步至目标数据库中。
在一种可能的实现方式中,所述装置还包括设置模块,所述设置模块,用于通过以下步骤设置所述检核规则:
展示用于编辑检核规则的设置页面;
接收用户在所述设置页面的编辑信息,所述编辑信息用于生成所述检核规则;
通过预设交互接口,获取生成的所述检核规则,以触发所述检核模块执行所述针对所述待同步数据集中的每条数据,检测该数据的指定字段是否符合所述指定字段对应的检核规则的步骤。
在一种可能的实现方式中,所述同步模块,具体用于:
若所述异常数据的第一指定字段存在乱码字符,则将所述乱码字符替换为第一预设字符,所述第一指定字段为字符串类型的字段;和/或,
若所述异常数据的第二指定字段存在转义字符,则将所述转义字符替换为第二预设字符,所述第二指定字段为字符串类型的字段;和/或,
若所述异常数据的第三指定字段的长度大于预设长度阈值,则过滤所述异常数据,所述第三指定字段为字符串类型、整型或浮点数类型的字段;和/或,
若所述异常数据的第四指定字段包括除指定形式的内容以外的内容,则过滤所述异常数据,所述第四指定字段为字符串类型的字段;和/或,
若所述异常数据的第五指定字段不符合预定义格式,则过滤所述异常数据,所述第五指定字段为具有所述预定义格式的字段。
在一种可能的实现方式中,所述装置还包括:
记录模块,用于记录所述异常数据的异常明细信息,所述异常明细信息包括所述异常数据的异常字段内容和各异常字段内容的异常原因。
在一种可能的实现方式中,所述装置还包括:
接收模块,用于接收检核结果查询请求;
反馈模块,用于响应于所述检核结果查询请求,反馈所述待同步数据集中的异常数据以及各异常数据的异常明细信息。
在一种可能的实现方式中,所述装置还包括:
告警模块,用于若所述异常数据数量大于所述告警阈值,则终止数据同步过程,基于指定告警方式向指定告警对象发送告警消息。
第三方面,本发明实施例还提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的数据同步方法步骤。
第四方面,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现第一方面中所述的数据同步方法。
第五方面,本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面中所述的数据同步方法。
采用本申请实施例提供的数据同步方法、装置、电子设备及介质,读取源数据库的源端数据表中的数据,得到待同步数据集后,可基于预先设置的指定字段的检核规则,针对待同步数据集中的每条数据,检测该数据的指定字段是否符合指定字段对应的检核规则,若不符合,则确定该数据为异常数据。进而根据待同步数据集中的异常数据数量,对待同步数据集进行同步处理操作。可见采用本申请实施例,可以发现源端数据表中的异常数据,且本申请实施例并非直接同步源端数据表中的所有数据,而是先确定待同步数据集中的异常数据数量,根据该异常数据数量对待同步数据集进行同步处理操作,可以避免向目标数据库传输过多异常数据,节省了传输资源以及目标数据库的存储资源。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种数据同步方法的流程图;
图2为本申请实施例提供的另一种数据同步方法的流程图;
图3为本申请实施例提供的一种数据同步平台的结构示意图;
图4为本申请实施例提供的一种数据同步装置的结构示意图;
图5为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例提供一种数据同步方法,该方法应用于数据同步平台,数据同步平台可以部署于电子设备中,如图1所示,该方法包括:
S101、读取源数据库的源端数据表中的数据,得到待同步数据集。
S102、针对待同步数据集中的每条数据,检测该数据的指定字段是否符合该指定字段对应的检核规则。
其中,该检核规则是预先设置的。
S103、若不符合该指定字段对应的检核规则,则确定该数据为异常数据。
S104、确定待同步数据集中的异常数据数量。
S105、根据异常数据数量,对待同步数据集进行同步处理操作。
采用本申请实施例提供的数据同步方法,读取源数据库的源端数据表中的数据,得到待同步数据集后,可基于预先设置的指定字段的检核规则,针对待同步数据集中的每条数据,检测该数据的指定字段是否符合指定字段对应的检核规则,若不符合,则确定该数据为异常数据。进而根据待同步数据集中的异常数据数量,对待同步数据集进行同步处理操作。可见采用本申请实施例,可以发现源端数据表中的异常数据,且本申请实施例并非直接同步源端数据表中的所有数据,而是先确定待同步数据集中的异常数据数量,根据该异常数据数量对待同步数据集进行同步处理操作,可以避免向目标数据库传输过多异常数据,节省了传输资源以及目标数据库的存储资源。
针对上述S101,源端数据表中具有多个字段,每条数据由多个字段的值组成。示例性地,源端数据表如表1所示,假设源端数据表中包括2条数据,每条数据由字段1、字段2和字段3的取值组成。为方便描述,表1中省略了各字段的实际内容,用英文字母表示各字段的取值。可以看出,数据1为由“A”、“B”、“C”组成的数据,数据2为由“D”和“E”组成的数据。需要说明的是,表1仅为示例,实际的源端数据表中包括的数据数量不限于此。
表1
字段1 字段2 字段3
数据1 “A” “B” “C”
数据2 “D” “E”
针对上述S102,本申请实施例中,可以预预先设置对源端数据表中的指定字段的检核规则,比如分别设置字段1对应的检核规则1和字段2对应的检核规则2。
在检核过程中,可基于检核规则1对数据1包括的字段1的值(“A”)进行检核,基于检核规则2对数据1包括的字段2的值(“B”)进行检核。若数据1的字段1不符合检核规则1,则确定数据1为异常数据,可基于检核规则1对数据1的内容进行过滤或更新。
同样的,可基于检核规则1对数据2包括的字段1的值(“D”)进行检核,基于检核规则2对数据2包括的字段2的值(字段2的值为空)进行检核。
在本申请实施例中,检核规则包括以下至少一种:
规则1:若数据的第一指定字段存在乱码字符,则确定该数据为异常数据,第一指定字段为字符串类型的字段;
规则2:若数据的第二指定字段存在转义字符,则确定该数据为异常数据,第二指定字段为字符串类型的字段;
规则3:若数据的第三指定字段的长度大于预设长度阈值,则确定该数据为异常数据,第三指定字段为字符串类型、整型或浮点数类型的字段;
规则4:若数据的第四指定字段包括除指定形式的内容以外的内容,则确定该数据为异常数据,第四指定字段为字符串类型的字段;
规则5:若数据的第五指定字段不符合预定义格式,则确定该数据为异常数据,第五指定字段为具有该预定义格式的字段。
在本申请的一个实施例中,上述S105、根据异常数据数量,对待同步数据集进行同步处理操作,具体可以实现为:
若异常数据数量小于或者等于告警阈值,则将待同步数据集同步至目标数据库中。
在本申请另一实施例中,上述S S105、根据异常数据数量,对待同步数据集进行同步处理操作,具体可以实现为:
若异常数据小于或者等于告警阈值,则对异常数据进行处理,以更新待同步数据集,得到更新后的待同步数据集;将更新后的待同步数据集同步至目标数据库中。
对应于上述检核规则,本申请实施例具体可以通过以下方式对异常数据进行处理:
方式一、若异常数据的第一指定字段存在乱码字符,则将乱码字符替换为第一预设字符。其中,第一指定字段为字符串类型的字段。
其中,可以理解的是,若待同步数据集中的某条数据的第一指定字段中存在乱码字符,则说明该数据的第一指定字段的内容出现异常,传输异常的数据没有意义且浪费传输资源,所以本申请实施例中将该异常数据中的乱码字符替换为第一预设字符,第一预设字符为预设的用于替换乱码的字符。示例性地,第一预设字符可以为问号或者指定的字符。
方式二、若异常数据的第二指定字段存在转义字符,则将该转义字符替换为第二预设字符。其中,第二指定字段为字符串类型的字段。
转义字符为编程语言,为便于用户查看数据表中的数据,本申请实施例中可将转义字符替换为方便用户理解的第二预设字符。
方式三、若异常数据的第三指定字段的长度大于预设长度阈值,则过滤该异常数据。其中,第三指定字段为字符串类型、整型或浮点数类型的字段。
该方式用于实现内容长度检查,基于实际需求,若需要对数据的长度进行过滤,则可配置方式三对应的检核规则,即上文中的规则3,从而实现向目标数据库传输源端数据表中第三指定字段的长度小于或者等于预设长度阈值的数据。采用该方式可实现源端数据表中的数据的选择性同步,实现更加灵活,避免了将不需要向目标数据库同步的数据同步至目标数据库,可以节约传输资源以及目标数据库的存储资源。
方式四、若异常数据的第四指定字段包括除指定形式的内容以外的内容,若是,则过滤该异常数据。其中,第四指定字段为字符串类型的字段。
例如,指定形式可以为数字、字母等,通过该方式可以过滤掉待同步数据集中包括的除数字或者字母以外的数据,从而实现了按照自定义规则对源端数据表中的数据的筛选,进而实现对源端数据表中的数据的按需同步。
方式五、若异常数据的第五指定字段不符合预定义格式,则过滤该异常数据。其中,第五指定字段为具有预定义格式的字段。
例如,预定义格式可以为“年-月-日”,或者“时:分:秒”等格式,若第五指定字段规定了预定义格式,但是某条数据的第五指定字段不符合该预定义格式,则说明该数据存在异常,进而可过滤掉该数据。
需要说明的是,若某条数据的一个字段满足上述方式一或方式二,另一字段满足上述方式三至方式五中的任一种,则可过滤掉该数据,无需按照方式一或方式二的方式替换字段的内容。
可选地,上述方式一至方式五中对异常数据的处理方式,也可以设置于检核规则中。比如,可以预先设置:若通过上述规则1检测到异常数据,则按照方式一对该异常数据进行处理。
在本申请实施例的一种实现方式中,如图2所示,在对异常数据进行处理后,该方法还包括以下步骤:
S201、记录该异常数据的异常明细信息,异常明细信息包括该异常数据的异常字段内容和各异常字段内容的异常原因。
其中,异常字段内容为:异常数据中不符合检核规则的指定字段的值。
例如,若数据1的字段1的值中存在乱码,则可记录该异常数据的异常字段为字段1的值,异常原因为存在乱码。
可选地,异常明细信息还包括异常数据所属的数据源、数据库和数据表。
异常数据所属的数据源可以为MySQL、Oracle、Hive、Hbase、FTP中的任意一种,异常数据所属的数据库为数据源中包括的源端数据库,异常数据所属的数据表为上述源端数据库包括的源端数据表。
可选地,若用户需要查询异常明细信息,则可触发执行S202至S203。
S202、接收检核结果查询请求。
S203、响应于检核结果查询请求,反馈待同步数据集中的异常数据以及各异常数据的异常明细信息。
可选地,该检核结果查询请求可以为用户通过数据同步平台的显示界面触发的检核结果查询请求,相应地,数据同步平台可以在该显示界面显示待同步数据集中的异常数据以及各异常数据的异常明细信息。
或者,该检核结果查询请求为终端设备向数据同步平台发送的检核结果查询请求,则数据同步平台向终端设备发送待同步数据集中的异常数据以及各异常数据的异常明细信息。
采用本申请实施例的方法,数据同步平台可以实时记录异常数据以及异常数据的异常明细信息,使得用户可以查询到数据同步任务的异常数据以及异常数据的明细信息,方便用户定位源端数据表中的数据异常位置以及异常原因,进而对异常数据进行汇总统计、分析等操作。
在本申请另一实施例中,在上述S101之前,可以在数据同步平台创建数据同步任务,数据同步任务规定了源数据库中需要被同步的源端数据表的位置。且可预先配置是否需要对该数据同步任务开启检核功能。比如,在数据同步平台的显示界面中设置开启检核功能的开关,当数据同步平台检测到该开关被触发时,则开启检核功能。该开关可以通过语音指令、触摸操作等方式触发,本申请实施例对此不作限制。
在启动数据同步任务后,若确定未针对该数据同步任务开启检核功能,则从源数据库中读取源端数据表中的数据,并将源端数据表中的所有写入目标数据库的指定数据表中。若确定已为该数据同步任务开启检核功能,则可执行上述S101至S105。
在本申请另一实施例中,上述实施例中的检核规则可通过以下步骤设置得到:
步骤1、展示用于编辑检核规则的设置页面。
其中,用于编辑检核规则的设置页面可以为数据平台上的检核规则配置页面。
步骤2、接收用户在该设置页面的编辑信息,该编辑信息用于生成检核规则。
具体对源端数据表中的哪一字段设置何种检核规则可根据实际需求设置,比如可以设置上述规则1至规则5中的至少一种检核规则。
步骤3、通过预设交互接口,获取生成的检核规则,以根据该检核规则执行上述S102。
在一种实施方式中,本申请实施例还可以针对某种字段类型配置默认检核规则,后续针对源端数据表中多个的相同类型的字段,均可采用该默认检核规则进行检核。
在本申请另一实施例中,还可以展示用于编辑告警信息的设置页面,进而接收用户在该设置页面的编辑信息,该编辑信息用于生成告警阈值、告警对象和告警方式,然后通过预设交互接口,获取生成的告警阈值、告警对象和告警方式。该编辑告警信息的设置页面可以为数据平台中的检核规则配置页面。
在确定待同步数据集中的异常数据数量之后,若异常数据数量大于上述告警阈值,则终止数据同步过程,基于指定告警方式向指定告警对象发送告警消息。
该指定告警方式为用户配置的告警方式,指定告警对象为用户配置的告警对象。例如,指定告警方式可以为发短信、打电话或者发邮件等方式,相应地,指定告警对象可以为指定的手机号或者邮箱地址。
可选地,告警消息中携带异常数据以及异常数据的异常明细信息。或者用户接收到告警消息后,可以在数据同步平台查询异常数据以及异常数据的明细信息。
采用该方法,在异常数据数量超出用户配置的告警阈值的情况下,可主动终止数据同步,并及时通过告警消息通知用户,避免了向目标数据库传输过多的异常数据,且可供用户及时分析数据异常原因。
如图3所示,本申请实施例提供的数据同步平台具体包括检核规则配置模块、检核结果查询模块和检核结果告警模块。
其中,检核规则配置模块,用于为用户提供检核规则配置界面,供用户通过检核规则配置界面选择源端数据表中的指定字段,并为指定字段配置检核规则,以及设置告警阈值、告警方式和告警对象。
检核结果查询模块,用于执行上述S202至S203,为用户提供检核结果,检核结果具体包括异常数据以及异常数据的明细信息。
检核结果告警模块,用于在异常数据大于告警阈值时,基于用户在检核规则配置模块配置的告警方式和告警对象进行告警,并终止数据同步任务,且提供告警的详细信息的查询服务。告警的详细信息包括:发生告警的数据同步任务、该数据同步任务包括的异常数据不符合哪个检核规则。可选地,还可以包括:当前配置的告警阈值、告警对象和告警方式。
基于相同的技术构思,本申请实施例还提供一种数据同步装置,如图4所示,该装置包括:
获取模块401,用于读取源数据库的源端数据表中的数据,得到待同步数据集;
检核模块402,用于针对待同步数据集中的每条数据,检测该数据的指定字段是否符合所述指定字段对应的检核规则,其中,所述检核规则是预先设置的;若不符合所述指定字段对应的检核规则,则确定该数据为异常数据;
确定模块403,用于确定待同步数据集中的异常数据数量;
同步模块404,用于根据所述异常数据数量,对所述待同步数据集进行同步处理操作。
采用本申请实施例提供的数据同步装置,读取源数据库的源端数据表中的数据,得到待同步数据集后,可基于预先设置的指定字段的检核规则,针对待同步数据集中的每条数据,检测该数据的指定字段是否符合指定字段对应的检核规则,若不符合,则确定该数据为异常数据。进而根据待同步数据集中的异常数据数量,对待同步数据集进行同步处理操作。可见采用本申请实施例,可以发现源端数据表中的异常数据,且本申请实施例并非直接同步源端数据表中的所有数据,而是先确定待同步数据集中的异常数据数量,根据该异常数据数量对待同步数据集进行同步处理操作,可以避免向目标数据库传输过多异常数据,节省了传输资源以及目标数据库的存储资源。
可选地,同步模块404,具体用于若所述异常数据数量小于或者等于告警阈值,则将所述待同步数据集同步至目标数据库中。
可选地,同步模块404,具体用于:
若所述异常数据小于或者等于告警阈值,则对所述异常数据进行处理,以更新待同步数据集,得到更新后的待同步数据集;
将更新后的待同步数据集同步至目标数据库中。
可选地,该装置还包括设置模块,设置模块,用于通过以下步骤设置所述检核规则:
展示用于编辑检核规则的设置页面;
接收用户在所述设置页面的编辑信息,所述编辑信息用于生成所述检核规则;
通过预设交互接口,获取生成的所述检核规则,以触发检核模块402执行所述针对所述待同步数据集中的每条数据,检测该数据的指定字段是否符合所述指定字段对应的检核规则的步骤。
可选地,同步模块404,具体用于:
若所述异常数据的第一指定字段存在乱码字符,则将所述乱码字符替换为第一预设字符,所述第一指定字段为字符串类型的字段;和/或,
若所述异常数据的第二指定字段存在转义字符,则将所述转义字符替换为第二预设字符,所述第二指定字段为字符串类型的字段;和/或,
若所述异常数据的第三指定字段的长度大于预设长度阈值,则过滤所述异常数据,所述第三指定字段为字符串类型、整型或浮点数类型的字段;和/或,
若所述异常数据的第四指定字段包括除指定形式的内容以外的内容,则过滤所述异常数据,所述第四指定字段为字符串类型的字段;和/或,
若所述异常数据的第五指定字段不符合预定义格式,则过滤所述异常数据,所述第五指定字段为具有所述预定义格式的字段。
可选地,该装置还包括:
记录模块,用于若记录异常数据的异常明细信息,异常明细信息包括异常数据的异常字段内容和各异常字段内容的异常原因;
可选地,该装置还包括:
接收模块,用于接收检核结果查询请求;
反馈模块,用于响应于所述检核结果查询请求,反馈待同步数据集中的异常数据以及各异常数据的异常明细信息。
可选地,该装置还包括:告警模块。
告警模块,用于若异常数据数量大于所述告警阈值,则终止数据同步过程,基于指定告警方式向指定告警对象发送告警消息。
本发明实施例还提供了一种电子设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现上述方法实施例中的方法步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一数据同步方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一数据同步方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘SolidState Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备及存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (9)

1.一种数据同步方法,其特征在于,包括:
读取源数据库的源端数据表中的数据,得到待同步数据集;
针对所述待同步数据集中的每条数据,检测该数据的指定字段是否符合所述指定字段对应的检核规则,其中,所述检核规则是预先设置的;
若不符合所述指定字段对应的检核规则,则确定该数据为异常数据;
确定所述待同步数据集中的异常数据数量;
根据所述异常数据数量,对所述待同步数据集进行同步处理操作;
所述根据所述异常数据数量,对所述待同步数据集进行同步处理操作,包括:
若所述异常数据小于或者等于告警阈值,则对所述异常数据进行处理,以更新待同步数据集,得到更新后的待同步数据集;
将更新后的待同步数据集同步至目标数据库中;
所述对所述异常数据进行处理,包括:
若所述异常数据的第一指定字段存在乱码字符,则将所述乱码字符替换为第一预设字符,所述第一指定字段为字符串类型的字段;和/或,
若所述异常数据的第二指定字段存在转义字符,则将所述转义字符替换为第二预设字符,所述第二指定字段为字符串类型的字段;和/或,
若所述异常数据的第三指定字段的长度大于预设长度阈值,则过滤所述异常数据,所述第三指定字段为字符串类型、整型或浮点数类型的字段;和/或,
若所述异常数据的第四指定字段包括除指定形式的内容以外的内容,则过滤所述异常数据,所述第四指定字段为字符串类型的字段;和/或,
若所述异常数据的第五指定字段不符合预定义格式,则过滤所述异常数据,所述第五指定字段为具有所述预定义格式的字段。
2.根据权利要求1所述的方法,其特征在于,所述根据所述异常数据数量,对所述待同步数据集进行同步处理操作,包括:
若所述异常数据数量小于或者等于告警阈值,则将所述待同步数据集同步至目标数据库中。
3.根据权利要求1所述的方法,其特征在于,所述检核规则通过以下步骤设置得到:
展示用于编辑检核规则的设置页面;
接收用户在所述设置页面的编辑信息,所述编辑信息用于生成所述检核规则;
通过预设交互接口,获取生成的所述检核规则,以执行所述针对所述待同步数据集中的每条数据,检测该数据的指定字段是否符合所述指定字段对应的检核规则的步骤。
4.根据权利要求1所述的方法,其特征在于,在对所述异常数据进行处理之后,所述方法还包括:
记录所述异常数据的异常明细信息,所述异常明细信息包括所述异常数据的异常字段内容和各异常字段内容的异常原因。
5.根据权利要求4所述的方法,其特征在于,在得到更新后的待同步数据集之后,所述方法还包括:
接收检核结果查询请求;
响应于所述检核结果查询请求,反馈所述待同步数据集中的异常数据以及各异常数据的异常明细信息。
6.根据权利要求1所述的方法,其特征在于,在确定所述待同步数据集中的异常数据量之后,所述方法还包括:
若所述异常数据数量大于所述告警阈值,则终止数据同步过程,基于指定告警方式向指定告警对象发送告警消息。
7.一种数据同步装置,其特征在于,包括:
获取模块,用于读取源数据库的源端数据表中的数据,得到待同步数据集;
检核模块,用于针对所述待同步数据集中的每条数据,检测该数据的指定字段是否符合所述指定字段对应的检核规则,其中,所述检核规则是预先设置的;若不符合所述指定字段对应的检核规则,则确定该数据为异常数据;
确定模块,用于确定所述待同步数据集中的异常数据数量;
同步模块,用于根据所述异常数据数量,对所述待同步数据集进行同步处理操作;
所述同步模块,具体用于:
若所述异常数据小于或者等于告警阈值,则对所述异常数据进行处理,以更新待同步数据集,得到更新后的待同步数据集;
将更新后的待同步数据集同步至目标数据库中;
所述同步模块,具体用于:
若所述异常数据的第一指定字段存在乱码字符,则将所述乱码字符替换为第一预设字符,所述第一指定字段为字符串类型的字段;和/或,
若所述异常数据的第二指定字段存在转义字符,则将所述转义字符替换为第二预设字符,所述第二指定字段为字符串类型的字段;和/或,
若所述异常数据的第三指定字段的长度大于预设长度阈值,则过滤所述异常数据,所述第三指定字段为字符串类型、整型或浮点数类型的字段;和/或,
若所述异常数据的第四指定字段包括除指定形式的内容以外的内容,则过滤所述异常数据,所述第四指定字段为字符串类型的字段;和/或,
若所述异常数据的第五指定字段不符合预定义格式,则过滤所述异常数据,所述第五指定字段为具有所述预定义格式的字段。
8.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-6任一所述的方法步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一所述的方法步骤。
CN202010622997.XA 2020-06-30 2020-06-30 一种数据同步方法、装置、电子设备及介质 Active CN111782728B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010622997.XA CN111782728B (zh) 2020-06-30 2020-06-30 一种数据同步方法、装置、电子设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010622997.XA CN111782728B (zh) 2020-06-30 2020-06-30 一种数据同步方法、装置、电子设备及介质

Publications (2)

Publication Number Publication Date
CN111782728A CN111782728A (zh) 2020-10-16
CN111782728B true CN111782728B (zh) 2024-02-02

Family

ID=72760549

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010622997.XA Active CN111782728B (zh) 2020-06-30 2020-06-30 一种数据同步方法、装置、电子设备及介质

Country Status (1)

Country Link
CN (1) CN111782728B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112347095B (zh) * 2020-11-16 2023-04-21 建信金融科技有限责任公司 数据表的处理方法、装置和服务器
CN114710394A (zh) * 2022-03-30 2022-07-05 亚信科技(中国)有限公司 告警同步方法、装置、电子设备及可读存储介质
CN117134929A (zh) * 2022-05-20 2023-11-28 中兴通讯股份有限公司 数据接入方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108009261A (zh) * 2017-12-12 2018-05-08 北京奇艺世纪科技有限公司 一种数据同步方法、装置及电子设备
CN108737333A (zh) * 2017-04-17 2018-11-02 腾讯科技(深圳)有限公司 一种数据检测方法以及装置
CN110162420A (zh) * 2019-04-26 2019-08-23 平安科技(深圳)有限公司 数据辅助定位方法、装置、计算机设备及存储介质
WO2019205307A1 (zh) * 2018-04-27 2019-10-31 平安科技(深圳)有限公司 资源处理节点的运行方法、装置、终端设备及介质
WO2019228034A1 (zh) * 2018-05-30 2019-12-05 杭州海康威视数字技术股份有限公司 一种数据同步方法及装置
CN111177176A (zh) * 2019-11-18 2020-05-19 腾讯科技(深圳)有限公司 数据检测方法、装置及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10296507B2 (en) * 2015-02-12 2019-05-21 Interana, Inc. Methods for enhancing rapid data analysis
US20160306827A1 (en) * 2015-04-15 2016-10-20 International Business Machines Corporation Synchronizing data rules and corresponding metadata to implement data governance

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108737333A (zh) * 2017-04-17 2018-11-02 腾讯科技(深圳)有限公司 一种数据检测方法以及装置
CN108009261A (zh) * 2017-12-12 2018-05-08 北京奇艺世纪科技有限公司 一种数据同步方法、装置及电子设备
WO2019205307A1 (zh) * 2018-04-27 2019-10-31 平安科技(深圳)有限公司 资源处理节点的运行方法、装置、终端设备及介质
WO2019228034A1 (zh) * 2018-05-30 2019-12-05 杭州海康威视数字技术股份有限公司 一种数据同步方法及装置
CN110162420A (zh) * 2019-04-26 2019-08-23 平安科技(深圳)有限公司 数据辅助定位方法、装置、计算机设备及存储介质
CN111177176A (zh) * 2019-11-18 2020-05-19 腾讯科技(深圳)有限公司 数据检测方法、装置及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
一种通用的多数据库间数据抽取方法及应用;刘如九;张振山;柴天佑;;北京交通大学学报(04);全文 *
数据转换平台的设计与实现;纪元;李飞;王玮;;福建电脑(06);全文 *

Also Published As

Publication number Publication date
CN111782728A (zh) 2020-10-16

Similar Documents

Publication Publication Date Title
CN111782728B (zh) 一种数据同步方法、装置、电子设备及介质
WO2021180025A1 (zh) 一种消息处理方法、装置、电子设备及介质
CN110213068B (zh) 一种消息中间件的监控方法及相关设备
CN110209386B (zh) 数据埋点的设置方法、埋点数据的获取方法及装置
CN110851308A (zh) 一种测试方法、装置、电子设备及存储介质
CN109359091B (zh) 文件管理方法、装置、终端及计算机可读存储介质
CN108647317B (zh) 增量文件的生成方法、装置和存储介质以及电子设备
CN107247722B (zh) 一种文件扫描方法、装置及智能终端
CN111818175B (zh) 企业服务总线配置文件生成方法、装置、设备和存储介质
AU2014209697A1 (en) Method and system for using a recursive event listener on a node in hierarchical data structure
CN108121804B (zh) 跨地域分布式存储数据的方法、装置、终端及存储介质
US10205813B2 (en) Method and system for detecting abnormal contact information and server
CN111355765B (zh) 一种网络请求的处理、发送方法及装置
CN110928946A (zh) 一种文档编辑方法、装置及终端设备
CN111090623B (zh) 一种数据审计方法、装置、电子设备及存储介质
CN111125586B (zh) 一种页面更新方法及装置
CN113810262A (zh) 消息提醒方法、装置、电子设备及可读存储介质
CN114611039B (zh) 异步加载规则的解析方法、装置、存储介质和电子设备
CN106657316B (zh) 一种消息撤回方法及装置
US20220050811A1 (en) Method and apparatus for synchronizing file
CN109254855B (zh) 一种参数传输协议的注册方法、装置及电子设备
CN111124712A (zh) 一种事件通知方法、装置、服务器及存储介质
CN111080250A (zh) 流程回退补偿方法、装置、存储介质及电子设备
CN111026466A (zh) 文件处理方法、装置、计算机可读存储介质及电子设备
CN111177155A (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