[发明专利]一种数据导入方法、装置、设备及介质在审
申请号: | 202211530020.0 | 申请日: | 2022-11-30 |
公开(公告)号: | CN115858584A | 公开(公告)日: | 2023-03-28 |
发明(设计)人: | 毛小毫;杨迪 | 申请(专利权)人: | 杭州安恒车联网安全技术有限公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F16/22;G06F16/27;G06F9/46 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 姚文杰 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 导入 方法 装置 设备 介质 | ||
本申请公开了一种数据导入方法、装置、设备及介质,涉及计算机技术领域,包括:获取数据导入请求和待导入数据,对所述待导入数据进行分片处理,以得到各分片数据;将预设的事务置为开启状态,并利用多线程将各所述分片数据导入至本地的数据表;执行事务提交操作,然后判断事务提交操作是否执行成功,若事务提交操作执行成功,则结束数据导入。通过本申请的上述技术方案,能够有效提高数据导入的效率,增加数据导入的安全性,避免数据导入较多时出现故障情况,保证数据的一致性。
技术领域
本发明涉及计算机技术领域,特别涉及一种数据导入方法、装置、设备及介质。
背景技术
现阶段的数据导入大部分都是基于单线程模型来进行开发,这也就导致效率在根本上无法进行显著提升,并且在数据导入过程中可能由于系统突然崩溃而导致数据导入失败,剩下的数据无法再次进行导入,无法达到高可用的状态。Java是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。目前,基于Java语言单线程的数据导入方案,导入任务开始后数据串行导入,不支持数据重试,在导入过程中发生异常时无法对数据进行重试恢复,单库单表进行查询与写入,导入效率低下,当有大量数据时耗时长,并且查询与写入效率低,在高并发情况下容易导致死锁,当导入发生异常时无法进行数据重试,容易导致数据丢失,在一些敏感数据下容易导致重大事故,造成大量损失,并且导入数据无法做到一制,在异常情况下容易导致数据库产生大量垃圾数据。
由上可见,如何提高数据导入的效率,增加数据导入的安全性,避免数据导入较多时出现故障情况,保证数据的一致性是本领域有待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种数据导入方法、装置、设备及介质,能够提高数据导入的效率,增加数据导入的安全性,避免数据导入较多时出现故障情况,保证数据的一致性。其具体方案如下:
第一方面,本申请公开了一种数据导入方法,包括:
获取数据导入请求和待导入数据,对所述待导入数据进行分片处理,以得到各分片数据;
将预设的事务置为开启状态,并利用多线程将各所述分片数据导入至本地的数据表;
执行事务提交操作,然后判断事务提交操作是否执行成功,若事务提交操作执行成功,则结束数据导入。
可选的,所述对所述待导入数据进行分片处理,以得到各分片数据,包括:
采用MAX(ID)方法确定出各数据分片范围;
按照各所述数据分片范围对所述待导入数据进行分片处理,以得到各分片数据。
可选的,所述采用MAX(ID)方法确定出各数据分片范围之后,还包括:
获取所有的数据分片范围,并将所述所有的数据分片范围保存至本地的分片表;
从本地的所有节点中确定出执行分片处理的执行节点,并从所述执行节点中确定出起始执行节点,将所述起始执行节点保存至所述分片表。
可选的,所述利用多线程将各所述分片数据导入至本地的数据表,包括:
基于所述数据导入请求创建线程池,并从所述线程池中确定出各线程;
采用多线程批次导入的方式,并利用多线程的countdowmlatch、多线程的future以及所述线程池将各所述分片数据导入至本地的数据表。
可选的,所述判断事务提交操作是否执行成功之后,还包括:
若事务提交操作未执行成功,则生成用于表征事务提交操作未执行成功的执行任务记录;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州安恒车联网安全技术有限公司,未经杭州安恒车联网安全技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211530020.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种橄榄球推顶训练装置
- 下一篇:控制方法、装置及电子设备和存储介质
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置