[发明专利]数据传输方法、装置、电子设备及存储介质在审
申请号: | 201911399587.7 | 申请日: | 2019-12-30 |
公开(公告)号: | CN111177267A | 公开(公告)日: | 2020-05-19 |
发明(设计)人: | 高英哲;丁徕卿 | 申请(专利权)人: | 中信百信银行股份有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F21/60 |
代理公司: | 北京市兰台律师事务所 11354 | 代理人: | 张峰 |
地址: | 100029 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据传输 方法 装置 电子设备 存储 介质 | ||
本发明公开了一种数据传输方法,包括:从源数据库中获取数据包,将加密的服务器时间戳作为所述数据包的指纹;将所述指纹与预存在目标数据库的指纹做对比,若一致,则将所述数据包的内容写入所述目标数据库;若不一致,则终止所述数据传输。使用此方法可避免数据在传输过程中发生丢包现象,提高异构数据库间数据传输的可靠性。
技术领域
本发明涉及互联网技术领域,特别是涉及一种数据传输方法和装置。
背景技术
随着互联网服务不断发展,公司各业务部门对业务数据的需求也逐步增加,如数据分析、报表展示等,而各部门为适应自身业务需求,使用的数据库有所不同。
为实现各异构数据库间数据交流,最原始的办法是从各数据库中将业务数据提取出来生成excel表,再发送给各个部门,或使用离线数据同步工具/平台将异构数据库中数据相互传输。大量的业务数据产生大量的数据库间操作,包括备份、传输、恢复等多个步骤,容易出现误操作,发生数据丢失等现象。
对于离线数据同步平台数据传输的可靠性问题,现阶段并无对策。
发明内容
基于此,本发明提供一种数据传输的方法和装置,能够在数据传输过程中保证数据不丢包,便于提升数据传输的可靠性。
本发明第一个方面,提供一种数据传输方法,该方法包括:
从源数据库中获取数据包,将加密的服务器时间戳作为所述数据包的指纹;
将所述指纹与预存在目标数据库的指纹做对比,若一致,则将所述数据包的内容写入所述目标数据库;若不一致,则终止所述数据传输。
具体地,该方法还包括:
从所述源数据库获取数据包时对所述数据包进行预校验,判断所述数据包是否包含所述目的数据库已有字段,
若包含,则将所述数据包中字段对应的值与所述目的数据库字段对应的值相比较,若相同,则终止所述数据传输,若不同,则继续所述数据传输,
若不包含,则继续所述数据传输。
具体地,该方法还包括:
将所述数据包分解成子数据包,根据任意设置的通道数和/或线程数将所述子数据包分组进行传输。
具体地,该方法还包括:
所述源数据库、所述目的数据库各自独立包括:Mysql、Oracle、DRDS、Hive或SQLServer。
具体地,该方法还包括:
所述指纹为128位,通过MD5加密获得。
本发明第二方面提供一种数据传输装置,该装置包括:
数据库写入模块,用于从源数据库中获取数据包,将加密的服务器时间戳作为所述数据包的指纹;
写前校验模块,用于将所述指纹与预存在目标数据库的指纹做对比,若一致,则将所述数据包的内容写入所述目标数据库;若不一致,则终止所述数据传输。
具体地,所述装置还包括:
预校验模块,从所述源数据库获取数据包时对所述数据包进行预校验,判断所述数据包是否包含所述目的数据库已有字段,若包含,则将所述数据包中字段对应的值与所述目的数据库字段对应的值相比较,若相同,则终止所述数据传输;若不同,则继续所述数据传输,
若不包含,则继续所述数据传输。
具体地,所述装置还包括:
分配模块,用于将所述数据包分解成子数据包,根据任意设置的通道数和/或线程数将所述子数据包分组进行传输。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中信百信银行股份有限公司,未经中信百信银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911399587.7/2.html,转载请声明来源钻瓜专利网。