CN111400397A - 数据同步方法、装置、设备和计算机存储介质 - Google Patents

数据同步方法、装置、设备和计算机存储介质 Download PDF

Info

Publication number
CN111400397A
CN111400397A CN202010135090.0A CN202010135090A CN111400397A CN 111400397 A CN111400397 A CN 111400397A CN 202010135090 A CN202010135090 A CN 202010135090A CN 111400397 A CN111400397 A CN 111400397A
Authority
CN
China
Prior art keywords
data synchronization
data
data source
links
link
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.)
Granted
Application number
CN202010135090.0A
Other languages
English (en)
Other versions
CN111400397B (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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN202010135090.0A priority Critical patent/CN111400397B/zh
Publication of CN111400397A publication Critical patent/CN111400397A/zh
Application granted granted Critical
Publication of CN111400397B publication Critical patent/CN111400397B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • G06F16/275Synchronous replication
    • 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)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据同步方法,包括以下步骤:在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路;在所述数据同步链路的数量大于预设阈值时,采集设备状态信息并根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路;获取所述目标数据同步链路对应的SQL指令,将所述SQL指令转化为大数据环境的操作指令,执行所述大数据环境的操作指令进行数据同步操作。本发明还公开了一种数据同步装置、设备和计算机存储介质。本发明提高了数据同步的实时性和效率。

Description

数据同步方法、装置、设备和计算机存储介质
技术领域
本发明涉及数据同步领域,尤其涉及数据同步方法、装置、设备和计算机存储介质。
背景技术
随着计算机技术的快速发展,对数据分析、挖掘有着强烈的需求,当前关系型数据库无法支持全面的数据分析、挖掘,因此需要将关系型数据库中的数据同步到大数据平台,才能用大数据工具进行数据分析处理。
当前数据同步的方式为每天定时跑批,把前一天关系型数据库中产生的数据同步到大数据平台,这样的数据同步方式,无法保证数据同步的实时性,且如果涉及到多个关系型数据库的数据同步时,受到网络条件或者硬件条件的限制,数据同步时间较长。
发明内容
本发明的主要目的在于提供一种数据同步方法、装置、设备和计算机存储介质,旨在解决当前数据同步实时性较差同步效率低的技术问题。
为实现上述目的,本发明提供数据同步方法,所述数据同步方法包括以下步骤:
在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路;
在所述数据同步链路的数量大于预设阈值时,采集设备状态信息并根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路;
获取所述目标数据同步链路对应的SQL指令,将所述SQL指令转化为大数据环境的操作指令,执行所述大数据环境的操作指令进行数据同步操作。
在一实施例中,所述在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路的步骤,包括:
在接收到数据同步请求时,输出数据源配置提示;
获取基于所述数据源配置提示输入的数据源信息,将所述数据源信息中数据源标识、数据库标识、数据表标识和字段标识关联生成数据同步链路。
在一实施例中,所述在所述数据同步链路的数量大于预设阈值时,采集设备状态信息并根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路的步骤,包括:
在所述数据同步链路的数量大于预设阈值时,采集设备状态信息,并判断各所述数据同步链路中的数据源标识是否相同;
若各所述数据同步链路中的数据源标识不同,则根据所述设备状态信息和所述数据同步链路中的数据源标识,从所述数据同步链路中选择目标数据同步链路;
若各所述数据同步链路中的数据源标识相同,则根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路。
在一实施例中,所述根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路的步骤,包括:
提取所述设备状态信息中设备宽带、设备核数和设备内存容量;
查询预设映射表,获取所述设备宽带、所述设备核数和所述设备内存容量对应的数据同步数量;
按所述数据同步链路创建时间的先后顺序排序各所述数据同步链路,获取创建时间排序靠前的所述数据同步数量对应个数的数据同步链路作为目标数据同步链路。
在一实施例中,所述根据所述设备状态信息和所述数据同步链路中的数据源标识,从所述数据同步链路中选择目标数据同步链路的步骤,包括:
提取所述设备状态信息中设备宽带、设备核数和设备内存容量;
查询预设映射表,获取所述设备宽带、所述设备核数和所述设备内存容量对应的数据同步数量;
获取所述数据同步链路中数据源标识,及所述数据源标识对应的数据源访问量,按所述数据源访问量从低到高排序各所述数据同步链路,获取数据源访问量排序靠前的所述数据同步数量对应个数的数据同步链路作为目标数据同步链路。
在一实施例中,所述在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路的步骤之后,包括:
在检测到数据源信息对应的数据源故障时,添加时间戳;
获取所述数据同步链路对应的SQL指令,并将所述SQL指令保存至消息中间件;
在检测到数据源信息对应的数据源恢复时,获取所述时间戳之后消息中间件中保存的SQL指令;
将所述SQL指令转化为大数据环境的操作指令,并执行所述大数据环境的操作指令,以完成数据同步操作。
在一实施例中,所述在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路的步骤之后,包括:
在所述数据同步链路的数量小于或等于预设阈值时,判断所述数据源信息对应的数据源是否故障;
若所述数据源信息对应的数据源故障,则输出预警提示信息;
若所述数据源信息对应的数据源没有故障,则获取所述数据同步链路对应的SQL指令,将所述SQL指令转化为大数据环境的操作指令,并执行所述大数据环境的操作指令,以完成数据同步操作。
此外,为实现上述目的,本发明还提供数据同步装置,所述数据同步装置包括:
请求接收模块,用于在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路;
链路确定模块,用于在所述数据同步链路的数量大于预设阈值时,采集设备状态信息并根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路;
数据同步模块,用于获取所述目标数据同步链路对应的SQL指令,将所述SQL指令转化为大数据环境的操作指令,执行所述大数据环境的操作指令进行数据同步操作。
此外,为实现上述目的,本发明还提供一种数据同步设备;
所述数据同步设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中:
所述计算机程序被所述处理器执行时实现如上所述的数据同步方法的步骤。
此外,为实现上述目的,本发明还提供计算机存储介质;
所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的数据同步方法的步骤。
本发明实施例提出的一种数据同步方法、装置、设备和计算机存储介质,通过在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路;在所述数据同步链路的数量大于预设阈值时,采集设备状态信息并根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路;获取所述目标数据同步链路对应的SQL指令,将所述SQL指令转化为大数据环境的操作指令,执行所述大数据环境的操作指令进行数据同步操作。本发明实施例中数据同步平台支持多数据同步链路同时执行,提高了数据同步的实时性和效率,在数据同步链路的数量过大时,数据同步平台根据自身的设备状态信息,选择目标数据同步链路进行数据分批同步,减少了数据同步平台的压力。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图;
图2为本发明数据同步方法第一实施例的流程示意图;
图3为本发明数据同步方法第二实施例的流程示意图;
图4为本发明数据同步装置一实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的服务器(又叫数据同步设备,其中,数据同步设备可以是由单独的数据同步装置构成,也可以是由其他装置与数据同步装置组合形成)结构示意图。
本发明实施例服务器指一个管理资源并为用户提供服务的计算机,通常分为文件服务器、数据库服务器和应用程序服务器。运行以上软件的计算机或计算机系统也被称为服务器。相对于普通PC(personal computer)个人计算机来说,服务器在稳定性、安全性、性能等方面都要求较高;如图1所示,该服务器可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),网络接口1004,用户接口1003,存储器1005,通信总线1002、芯片组、磁盘系统、网络等硬件等。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真WIreless-FIdelity,WIFI接口)。存储器1005可以是高速随机存取存储器(random access memory,RAM),也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,服务器还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块;输入单元,比显示屏,触摸屏;网络接口可选除无线接口中除WiFi外,蓝牙、探针等。本领域技术人员可以理解,图1中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,该计算机软件产品存储在一个存储介质(存储介质:又叫计算机存储介质、计算机介质、可读介质、可读存储介质、计算机可读存储介质或者直接叫介质等,存储介质可以是非易失性可读存储介质,如RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及计算机程序。
在图1所示的服务器中,网络接口1004主要用于连接后台数据库,与后台数据库进行数据通信;用户接口1003主要用于连接客户端(客户端,又叫用户端或终端,本发明实施例终端可以固定终端也可以是移动终端,如,带联网功能的智能空调、智能电灯、智能电源、智能音箱、自动驾驶汽车、PC、智能手机、平板电脑、电子书阅读器、便携计算机等,终端中包含传感器比如光传感器、运动传感器以及其他传感器,在此不再赘述),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的计算机程序,并执行本发明以下实施例提供的数据同步方法中的步骤。
基于上述硬件结构提出了本发明数据同步方法的实施例。
参照图2,在本发明一种数据同步方法的第一实施例中,所述数据同步方法包括:
步骤S10,在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路。
本实施例中的数据同步方法应用于数据同步设备,数据同步设备是数据同步平台的硬件载体,数据同步平台与大数据平台和业务平台通信连接,大数据平台是指支持大数据分析操作的数据平台,例如,hive数据平台;业务平台设置有数据源,数据源可以是关系型数据库,关系型数据库包括但不仅限于:Oracle、DB2、MySQL、Microsoft SQL Server和Microsoft Access数据库,本发明实施例的技术方案是将业务平台中更新的业务数据同步至大数据平台。
可以理解的是,本发明实施例中支持设置多个数据源,每个数据源设置有个唯一数据源标识,数据同步时用户指定同步哪个数据源中的数据,数据同步平台就与哪个数据源连接进行数据同步。
具体地,数据同步平台接收数据同步请求,数据同步请求的触发方式不作具体限定,即,数据同步请求可以用户主动触发的,例如,用户在数据同步平台的显示界面上点击“数据同步”按键,触发数据同步请求;此外,数据同步请求还可以是数据同步平台自动触发的,例如,数据同步平台中预设设置数据同步条件:数据源中数据更新时自动触发数据同步请求,数据同步平台实时地检测数据源中数据的状态,数据同步平台在监测到数据源中出现数据更新时,数据同步平台自动触发数据同步请求。
数据同步平台在接收到数据同步请求时,数据同步平台获取数据同步请求对应的数据源信息,数据源信息包括数据源标识、数据库标识、数据表标识和字段标识等等,数据同步平台根据数据源信息创建数据同步链路。具体地,包括:
在接收到数据同步请求时,输出数据源配置提示;
获取基于所述数据源配置提示输入的数据源信息,将所述数据源信息中数据源标识、数据库标识、数据表标识和字段标识关联生成数据同步链路。
即,数据同步平台在接收到数据同步请求时,数据同步平台输出数据源配置提示;以提示用户配置数据源信息,数据同步平台获取基于数据源配置提示输入的数据源信息,数据同步平台获取到数据源信息之后,数据同步平台基于数据源信息生成数据同步链路,以使数据同步平台按照数据同步链进行数据同步,具体地,数据同步平台获取数据源信息中的数据源标识,获取数据源标识中包含的数据库标识、数据表标识和字段标识,数据同步平台将数据源标识、数据库标识、数据表标识和字段标识关联生成一个数据同步链路,以根据数据同步链路进行数据同步操作。
例如,用户先选择需要同步的数据源,数据同步平台把这个数据源所包含的所有数据库列出,用户再在下一个列表中选择需要同步的数据库,可以选择多个数据库,进一步地,数据同步平台再把所选数据库下的表列出,用户再选择表以及下一步再选择每个表同步哪些字段。选择好后,数据同步平台保存所选信息,数据同步平台按照选择的数据源信息创建数据同步链路。
本实施例中数据同步平台使用多数据源构建技术,可以同步多个数据源的数据,可以多同步链路同时执行,而且还可以同步多个数据库中的多个表,最大化的满足现实需求,整个流程不用写代码,完全都是可视化界面操作,大大提高了易用性和可扩展性。
步骤S20,在所述数据同步链路的数量大于预设阈值时,采集设备状态信息并根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路。
在数据同步链路的数量大于预设阈值(预设阈值可以根据数据同步的具体场景灵活设置,例如,预设阈值设置为100)时,数据同步平台采集设备状态信息,设备状态信息是指数据同步设备的设备状态信息,设备状态信息包括但不仅限于设备温度、设备宽带、设备核数和设备内存容量等等,数据同步平台根据设备状态信息从数据同步链路中选择目标数据同步链路。例如,当前有200个数据同步链路,数据同步平台根据设备信息中的设备宽带,将数据同步链路创建时间最早的100个数据同步链路作为目标同步链路。
本实施例中数据同步平台根据自身设备的设备状态信息从数据同步链路中选择目标数据同步链路,以实现数据分批同步,既可以减少数据同步平台的压力,还可以减少数据同步失败的情况。
步骤S30,获取所述目标数据同步链路对应的SQL指令,将所述SQL指令转化为大数据环境的操作指令,执行所述大数据环境的操作指令进行数据同步操作。
即,数据同步平台采集各个数据源的SQL指令,及SQL指令中的操作数据,数据同步平台判断操作数据是否在目标数据同步链路中,若操作数据在目标数据同步链路中,数据同步平台将该SQL指令作为数据同步链路对应的SQL指令,数据同步平台对SQL指令进行解析,并将SQL指令转化为大数据环境的操作指令。例如,数据同步平台获取SQL指令中的关键信息(关键信息包括数据表名称、数据标识、操作类型(操作类型包括:增、删、改、查)等等),数据同步平台将SQL指令中的关键信息进行提取,并转化为大数据环境的操作指令;数据同步平台在得到大数据环境的操作指令之后,大数据平台按照大数据环境的操作指令进行同步操作。
本发明实施例中数据同步平台支持多数据同步链路同时执行,提高了数据同步的实时性和效率,在数据同步链路的数量过大时,数据同步平台根据自身的设备状态信息,选择目标数据同步链路进行数据分批同步,减少了数据同步平台的压力。
进一步地,参照图3,在本发明第一实施例的基础上,提出了本发明数据同步方法的第二实施例。
本实施例是第一实施例中步骤S20的细化步骤,本实施例与本发明第一实施例的区别在于:
步骤S21,在所述数据同步链路的数量大于预设阈值时,采集设备状态信息,并判断各所述数据同步链路中的数据源标识是否相同。
在数据同步链路的数量大于预设阈值时,数据同步平台采集自身设备状态信息,数据同步平台获取各数据同步链路中的数据源标识,并判断各数据同步链路中的数据源标识是否相同,若数据同步链路中的数据源标识相同,说明数据同步平台只对一个数据源进行数据同步;若数据同步链路中的数据源标识不同,说明数据同步平台对多个数据源进行数据同步。
步骤S22,若各所述数据同步链路中的数据源标识不同,则根据所述设备状态信息和所述数据同步链路中的数据源标识,从所述数据同步链路中选择目标数据同步链路。
若各数据同步链路中的数据源标识不同,数据同步平台则根据设备状态信息和数据同步链路中的数据源标识,从数据同步链路中选择目标数据同步链路,具体地,包括:
步骤a1,提取所述设备状态信息中设备宽带、设备核数和设备内存容量;
步骤a2,查询预设映射表,获取所述设备宽带、所述设备核数和所述设备内存容量对应的数据同步数量;
步骤a3,获取所述数据同步链路中数据源标识,及所述数据源标识对应的数据源访问量,按所述数据源访问量从低到高排序各所述数据同步链路,获取数据源访问量排序靠前的所述数据同步数量对应个数的数据同步链路作为目标数据同步链路。
即,本实施例中数据同步平台提取设备状态信息中设备宽带、设备核数和设备内存容量;数据同步平台查询预设映射表(预设映射表是指预先设备的设备状态信息与数据同步数量映射表,例如,预设映射表中包含设备宽带2M、设备核数8核和设备内存容量1G对应的数据同步数据为150条),数据同步平台获取预设映射表中设备宽带、设备核数和设备内存容量对应的数据同步数量。
数据同步平台在得到数据同步数量之后,获取数据同步链路中数据源标识,及数据源标识对应的数据源访问量,数据同步平台按数据同步链路中数据源标识对应的数据源访问量从低到高排序各数据同步链路,数据同步平台获取数据源访问量排序靠前的数据同步数量对应个数的数据同步链路作为目标数据同步链路,以进行数据同步。
本实施例中数据同步平台根据设备状态信息和数据源标识对应的数据源访问量确定目标数据同步链路,数据同步平台将数据源访问量较少的数据源对应的数据同步链路作为目标同步链路,可以减少数据同步对数据源的干扰,使得数据同步不影响数据源的正常访问,这样的数据同步方案更加合理。
步骤S23,若各所述数据同步链路中的数据源标识相同,则根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路。
若各数据同步链路中的数据源标识相同,数据同步平台根据设备状态信息从数据同步链路中选择目标数据同步链路,具体地,包括:
步骤b1,提取所述设备状态信息中设备宽带、设备核数和设备内存容量;
步骤b2,查询预设映射表,获取所述设备宽带、所述设备核数和所述设备内存容量对应的数据同步数量;
步骤b3,按所述数据同步链路创建时间的先后顺序排序各所述数据同步链路,获取创建时间排序靠前的所述数据同步数量对应个数的数据同步链路作为目标数据同步链路。
即,数据同步平台提取设备状态信息中设备宽带、设备核数和设备内存容量;数据同步平台查询预设映射表,获取设备宽带、设备核数和设备内存容量对应的数据同步数量;数据同步平台按数据同步链路的创建时间排序各数据同步链路,数据同步平台获取创建时间排序靠前的数据同步数量对应个数的数据同步链路作为目标数据同步链路。
本实施例中数据同步平台在数据同步链路是针对一个数据源时,数据同步平台根据设备状态信息确定目标数据同步链路,以防止数据同步平台的压力过大。
与此同时,本实施例中数据同步平台将除目标同步链路之外的数据同步链路保存至消息中间件,数据同步平台实时地更新目标同步链路,这样的数据源数据同步方法既可以减少数据同步平台的压力,又不影响数据源的正常工作。
进一步地,在本发明上述实施例的基础上,提出了本发明数据同步方法的第三实施例。
本实施例是第一实施例中步骤S10之后的步骤,本实施例与上述实施例的区别在于:
在检测到数据源信息对应的数据源故障时,添加时间戳;
获取所述数据同步链路对应的SQL指令,并将所述SQL指令保存至消息中间件;
在检测到数据源信息对应的数据源恢复时,获取所述时间戳之后消息中间件中保存的SQL指令;
将所述SQL指令转化为大数据环境的操作指令,并执行所述大数据环境的操作指令,以完成数据同步操作。
本实施例中数据同步平台实时地对数据源信息对应的数据源进行监测,数据同步平台在检测到数据源信息对应的数据源故障时,数据同步平台添加时间戳;数据同步平台采集数据同步链路对应的SQL指令,并将SQL指令保存至消息中间件;数据源由于数据库宕机或者网络堵塞等原因发生故障时,数据已经不能正常同步,但是数据停止同步又会造成故障期间内产生的数据丢失,为了不丢失数据,数据同步平台将故障前的最后一条数据的时间戳保留。
在检测到数据源信息对应的数据源恢复时,数据同步平台获取时间戳之后消息中间件中保存的SQL指令;数据同步平台将SQL指令转化为大数据环境的操作指令,并执行大数据环境的操作指令,以完成数据同步操作。
在本实施例中数据同步平台不仅简单的把静态数据同步过来,还会把所有对数据库的操作在大数据环境进行回放,所有操作和数据库同步进行,所以在数据源恢复时,数据同步平台先把消息中间件中保存的数据回放完才继续回放最新的数据,这样保证了数据的顺序;此外,通过消息中间件进行数据同步实现了数据匀速同步的同时可以减少数据同步平台的压力。
本实施例中数据同步平台设置有故障恢复机制,如果数据源出现故障或因为其他原因需要暂停数据同步的,也不会造成数据丢失,而是先把这段时间的数据写入到消息中间件,在故障恢复后继续同步,并且严格保证数据的时序性,即先产生的操作先在大数据环境回放。
进一步地,在本发明上述实施例的基础上,提出了本发明数据同步方法的第四实施例。
本实施例是第一实施例中步骤S10之后的步骤,本实施例与上述实施例的区别在于:
在所述数据同步链路的数量小于或等于预设阈值时,判断所述数据源信息对应的数据源是否故障;
若所述数据源信息对应的数据源故障,则输出预警提示信息;
若所述数据源信息对应的数据源没有故障,则获取所述数据同步链路对应的SQL指令,将所述SQL指令转化为大数据环境的操作指令,并执行所述大数据环境的操作指令,以完成数据同步操作。
本实施例中在数据同步链路的数量小于或等于预设阈值时,数据同步平台判断数据源信息对应的数据源是否故障;具体地,数据同步平台访问数据源,若数据源正常响应,则数据同步平台判定数据源没有故障;若数据源不可以正常响应,则数据同步平台判定数据源故障。
若数据源信息对应的数据源故障,数据同步平台输出预警提示信息,以提示数据源运维人员进行数据源维护。
若数据源信息对应的数据源没有故障,数据同步平台获取数据同步链路对应的SQL指令,数据同步平台将SQL指令转化为大数据环境的操作指令,并执行大数据环境的操作指令,以完成数据同步操作。
本实施例中数据同步平台在数据同步链路的数量小于或等于预设阈值时,对数据源是否故障进行判断,在数据源故障时,输出预警提示信息,以进行数据源的及时维护;在数据源没有故障时,进行数据同步操作,使得数据同步操作更加高效。
此外,参照图4,本发明实施例还提出一种数据同步装置,所述数据同步装置包括:
请求接收模块10,用于在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路;
链路确定模块20,用于在所述数据同步链路的数量大于预设阈值时,采集设备状态信息并根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路;
数据同步模块30,用于获取所述目标数据同步链路对应的SQL指令,将所述SQL指令转化为大数据环境的操作指令,执行所述大数据环境的操作指令进行数据同步操作。
在一实施例中,所述请求接收模块10,包括:
提示输出单元,用于在接收到数据同步请求时,输出数据源配置提示;
链路创建单元,用于获取基于所述数据源配置提示输入的数据源信息,将所述数据源信息中数据源标识、数据库标识、数据表标识和字段标识关联生成数据同步链路。
在一实施例中,所述链路确定模块20,包括:
标识判断单元,用于在所述数据同步链路的数量大于预设阈值时,采集设备状态信息,并判断各所述数据同步链路中的数据源标识是否相同;
第一确定单元,用于若各所述数据同步链路中的数据源标识不同,则根据所述设备状态信息和所述数据同步链路中的数据源标识,从所述数据同步链路中选择目标数据同步链路;
第二确定单元,用于若各所述数据同步链路中的数据源标识相同,则根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路。
在一实施例中,所述链路确定模块20,包括:
信息提取单元,用于提取所述设备状态信息中设备宽带、设备核数和设备内存容量;
查询确定单元,用于查询预设映射表,获取所述设备宽带、所述设备核数和所述设备内存容量对应的数据同步数量;
链路获取单元,用于按所述数据同步链路创建时间的先后顺序排序各所述数据同步链路,获取创建时间排序靠前的所述数据同步数量对应个数的数据同步链路作为目标数据同步链路。
在一实施例中,所述第一确定单元,还用于:
提取所述设备状态信息中设备宽带、设备核数和设备内存容量;
查询预设映射表,获取所述设备宽带、所述设备核数和所述设备内存容量对应的数据同步数量;
获取所述数据同步链路中数据源标识,及所述数据源标识对应的数据源访问量,按所述数据源访问量从低到高排序各所述数据同步链路,获取数据源访问量排序靠前的所述数据同步数量对应个数的数据同步链路作为目标数据同步链路。
在一实施例中,所述的数据同步装置,包括:
时间戳添加模块,用于在检测到数据源信息对应的数据源故障时,添加时间戳;
采集保存模块,用于获取所述数据同步链路对应的SQL指令,并将所述SQL指令保存至消息中间件;
指令获取模块,用于在检测到数据源信息对应的数据源恢复时,获取所述时间戳之后消息中间件中保存的SQL指令;
转化执行模块,用于将所述SQL指令转化为大数据环境的操作指令,并执行所述大数据环境的操作指令,以完成数据同步操作。
在一实施例中,所述的数据同步装置,包括:
故障判断模块,用于在所述数据同步链路的数量小于或等于预设阈值时,判断所述数据源信息对应的数据源是否故障;
故障预警模块,用于若所述数据源信息对应的数据源故障,则输出预警提示信息;
数据同步模块,用于若所述数据源信息对应的数据源没有故障,则获取所述数据同步链路对应的SQL指令,将所述SQL指令转化为大数据环境的操作指令,并执行所述大数据环境的操作指令,以完成数据同步操作。
其中,数据同步装置的各个功能模块实现的步骤可参照本发明数据同步方法的各个实施例,此处不再赘述。
此外,本发明实施例还提出一种计算机存储介质。
所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例提供的数据同步方法中的操作。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体/操作/对象与另一个实体/操作/对象区分开来,而不一定要求或者暗示这些实体/操作/对象之间存在任何这种实际的关系或者顺序;术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的。可以根据实际的需要选择中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种数据同步方法,其特征在于,所述数据同步方法包括以下步骤:
在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路;
在所述数据同步链路的数量大于预设阈值时,采集设备状态信息并根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路;
获取所述目标数据同步链路对应的SQL指令,将所述SQL指令转化为大数据环境的操作指令,执行所述大数据环境的操作指令进行数据同步操作。
2.如权利要求1所述的数据同步方法,其特征在于,所述在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路的步骤,包括:
在接收到数据同步请求时,输出数据源配置提示;
获取基于所述数据源配置提示输入的数据源信息,将所述数据源信息中数据源标识、数据库标识、数据表标识和字段标识关联生成数据同步链路。
3.如权利要求1所述的数据同步方法,其特征在于,所述在所述数据同步链路的数量大于预设阈值时,采集设备状态信息并根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路的步骤,包括:
在所述数据同步链路的数量大于预设阈值时,采集设备状态信息,并判断各所述数据同步链路中的数据源标识是否相同;
若各所述数据同步链路中的数据源标识不同,则根据所述设备状态信息和所述数据同步链路中的数据源标识,从所述数据同步链路中选择目标数据同步链路;
若各所述数据同步链路中的数据源标识相同,则根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路。
4.如权利要求1所述的数据同步方法,其特征在于,所述根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路的步骤,包括:
提取所述设备状态信息中设备宽带、设备核数和设备内存容量;
查询预设映射表,获取所述设备宽带、所述设备核数和所述设备内存容量对应的数据同步数量;
按所述数据同步链路创建时间的先后顺序排序各所述数据同步链路,获取创建时间排序靠前的所述数据同步数量对应个数的数据同步链路作为目标数据同步链路。
5.如权利要求3所述的数据同步方法,其特征在于,所述根据所述设备状态信息和所述数据同步链路中的数据源标识,从所述数据同步链路中选择目标数据同步链路的步骤,包括:
提取所述设备状态信息中设备宽带、设备核数和设备内存容量;
查询预设映射表,获取所述设备宽带、所述设备核数和所述设备内存容量对应的数据同步数量;
获取所述数据同步链路中数据源标识,及所述数据源标识对应的数据源访问量,按所述数据源访问量从低到高排序各所述数据同步链路,获取数据源访问量排序靠前的所述数据同步数量对应个数的数据同步链路作为目标数据同步链路。
6.如权利要求1所述的数据同步方法,其特征在于,所述在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路的步骤之后,包括:
在检测到数据源信息对应的数据源故障时,添加时间戳;
获取所述数据同步链路对应的SQL指令,并将所述SQL指令保存至消息中间件;
在检测到数据源信息对应的数据源恢复时,获取所述时间戳之后消息中间件中保存的SQL指令;
将所述SQL指令转化为大数据环境的操作指令,并执行所述大数据环境的操作指令,以完成数据同步操作。
7.如权利要求1至6任意一项所述的数据同步方法,其特征在于,所述在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路的步骤之后,包括:
在所述数据同步链路的数量小于或等于预设阈值时,判断所述数据源信息对应的数据源是否故障;
若所述数据源信息对应的数据源故障,则输出预警提示信息;
若所述数据源信息对应的数据源没有故障,则获取所述数据同步链路对应的SQL指令,将所述SQL指令转化为大数据环境的操作指令,并执行所述大数据环境的操作指令,以完成数据同步操作。
8.一种数据同步装置,其特征在于,所述数据同步装置包括:
请求接收模块,用于在接收到数据同步请求时,获取所述数据同步请求对应的数据源信息,根据所述数据源信息创建数据同步链路;
链路确定模块,用于在所述数据同步链路的数量大于预设阈值时,采集设备状态信息并根据所述设备状态信息从所述数据同步链路中选择目标数据同步链路;
数据同步模块,用于获取所述目标数据同步链路对应的SQL指令,将所述SQL指令转化为大数据环境的操作指令,执行所述大数据环境的操作指令进行数据同步操作。
9.一种数据同步设备,其特征在于,所述数据同步设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中:
所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的数据同步方法的步骤。
10.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的数据同步方法的步骤。
CN202010135090.0A 2020-02-29 2020-02-29 数据同步方法、装置、设备和计算机存储介质 Active CN111400397B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010135090.0A CN111400397B (zh) 2020-02-29 2020-02-29 数据同步方法、装置、设备和计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010135090.0A CN111400397B (zh) 2020-02-29 2020-02-29 数据同步方法、装置、设备和计算机存储介质

Publications (2)

Publication Number Publication Date
CN111400397A true CN111400397A (zh) 2020-07-10
CN111400397B CN111400397B (zh) 2023-04-11

Family

ID=71434431

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010135090.0A Active CN111400397B (zh) 2020-02-29 2020-02-29 数据同步方法、装置、设备和计算机存储介质

Country Status (1)

Country Link
CN (1) CN111400397B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107967316A (zh) * 2017-11-22 2018-04-27 平安科技(深圳)有限公司 一种数据同步方法、设备及计算机可读存储介质
CN110222117A (zh) * 2019-05-23 2019-09-10 武汉达梦数据库有限公司 一种异构数据库的数据转换同步方法、设备及存储介质
CN110222086A (zh) * 2019-05-07 2019-09-10 深圳壹账通智能科技有限公司 基于区块链的数据管理方法、装置、设备和存储介质
CN110347747A (zh) * 2019-06-14 2019-10-18 平安科技(深圳)有限公司 数据库间数据同步方法、系统、计算机设备及存储介质
CN110704458A (zh) * 2019-08-15 2020-01-17 平安科技(深圳)有限公司 数据同步方法、装置、计算机设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107967316A (zh) * 2017-11-22 2018-04-27 平安科技(深圳)有限公司 一种数据同步方法、设备及计算机可读存储介质
CN110222086A (zh) * 2019-05-07 2019-09-10 深圳壹账通智能科技有限公司 基于区块链的数据管理方法、装置、设备和存储介质
CN110222117A (zh) * 2019-05-23 2019-09-10 武汉达梦数据库有限公司 一种异构数据库的数据转换同步方法、设备及存储介质
CN110347747A (zh) * 2019-06-14 2019-10-18 平安科技(深圳)有限公司 数据库间数据同步方法、系统、计算机设备及存储介质
CN110704458A (zh) * 2019-08-15 2020-01-17 平安科技(深圳)有限公司 数据同步方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN111400397B (zh) 2023-04-11

Similar Documents

Publication Publication Date Title
CN109492073B (zh) 日志搜索方法、日志搜索装置和计算机可读存储介质
CN111414416A (zh) 数据处理方法、装置、设备和存储介质
CN107273540A (zh) 分布式搜索及索引更新方法、系统、服务器及计算机设备
CN103049515A (zh) 一种应用程序分类的方法、装置和设备
CN108052661B (zh) 分布式环境下的聚合检索的方法、装置及可读存储介质
CN109412821B (zh) 消息处理方法和装置以及电子设备
CN106572131B (zh) 物联网中媒体数据分享的方法及系统
CN112882939A (zh) 自动化测试方法、装置、电子设备及存储介质
CN103312489A (zh) 一种终端与服务器进行同步的方法和装置
CN112269588B (zh) 算法的升级方法、装置、终端和计算机可读存储介质
CN111966762A (zh) 指标采集方法以及装置
CN111352951A (zh) 一种数据导出方法、装置及系统
CN113470263A (zh) 智能柜的快速存取件方法及装置
CN114661681A (zh) 数据同步方法及相关设备
CN104123299A (zh) 一种多终端设备间信息分享方法、装置及系统
CN102571424A (zh) 一种工程事件处理方法、装置和系统
CN112445861A (zh) 信息处理方法、装置、系统及存储介质
CN107103086B (zh) 一种数据采集审计的方法及系统、计算机可读存储介质
CN112035720B (zh) 事件提醒的触发方法和装置、存储介质及电子设备
CN111400397B (zh) 数据同步方法、装置、设备和计算机存储介质
CN112311818B (zh) 一种小程序数据包的下载方法、装置、终端及存储介质
CN112597123A (zh) 数据多版本动态切换方法及装置
CN115495463A (zh) 一种数据处理方法、装置、智能设备及存储介质
CN113472469B (zh) 一种数据同步方法、装置、设备及存储介质
CN113254523B (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