[发明专利]数据写入存储方法、装置、设备和计算机可读存储介质在审
申请号: | 202011066646.1 | 申请日: | 2020-10-02 |
公开(公告)号: | CN112306965A | 公开(公告)日: | 2021-02-02 |
发明(设计)人: | 周朝卫 | 申请(专利权)人: | 中盈优创资讯科技有限公司 |
主分类号: | G06F16/16 | 分类号: | G06F16/16 |
代理公司: | 上海嘉蓝专利代理事务所(普通合伙) 31407 | 代理人: | 金波 |
地址: | 201800 上海市嘉定区安*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 写入 存储 方法 装置 设备 计算机 可读 介质 | ||
本发明的实施例提供了一种数据写入存储方法、装置、设备和计算机可读存储介质。所述方法包括在执行一批次任务时,生成对应的数据文件,写入临时目录;判断元数据文件中是否存在当前批次任务对应的文件标识列表,如果是,则删除数据目录中所述文件标识列表对应的数据文件;将写入临时目录的数据文件的文件标识映射为数据目录下的文件标识列表,并将所述文件标识列表及对应的批次号写入元数据文件;将当前临时目录中的数据文件移动至数据目录中,并对所述数据文件进行重命名。以此方式,可以在任务运行失败或数据存储异常情况发生时对数据进行重新处理,自动清理历史脏数据,保证数据不丢失、不重复。
技术领域
本发明的实施例一般涉及数据处理领域,并且更具体地,涉及一种数据写入存储方法、装置、设备和计算机可读存储介质。
背景技术
在典型的实时ETL场景下,Spark Structured Streaming按照批次处理数据,即每间隔一段时间从数据源拉取数据,处理后,写入目标存储。但由于任务运行失败以及网络故障、主机故障、集群故障等问题导致数据存储异常情况时有发生。而如果不重新处理这些数据,则将会丢失该批次任务的数据。即使重新处理失败任务,也无法识别出该批次任务对应的数据文件。
发明内容
根据本发明的实施例,提供了一种数据写入存储方案。
在本发明的第一方面,提供了一种数据写入存储方法。该方法包括:
步骤1:在执行一批次任务时,生成对应的数据文件,写入临时目录;
步骤2:判断元数据文件中是否存在当前批次任务对应的文件标识列表,如果是,则删除数据目录中所述文件标识列表对应的数据文件,并执行步骤3;否则直接执行步骤3;
步骤3:将写入临时目录的数据文件的文件标识映射为数据目录下的文件标识列表,并将所述文件标识列表及对应的批次号写入元数据文件;
步骤4:将当前临时目录中的数据文件移动至数据目录中,并对所述数据文件进行重命名。
进一步地,所述元数据文件用于存储任务的批次号和所述批次号对应的文件标识列表。
进一步地,所述临时目录用于临时存储数据文件,删除移动后的数据文件。
进一步地,所述写入临时目录,包括:
判断所述临时目录中是否有目标批次号的数据文件,如果有,则将待写入的目标批次号的数据文件写入所述临时目录,并覆盖所述临时目录中已有的目标批次号的数据文件;否则直接将待写入的目标批次号的数据文件写入所述临时目录。
进一步地,如果当前批次任务执行失败,则重新执行该批次任务,返回步骤1。
进一步地,在元数据文件中,对所述数据目录中的数据文件按照批次号进行排序,按照顺序保留靠近当前批次号的若干个数据文件,并删除其余的数据文件。
进一步地,所述将所述文件标识列表及对应的批次号写入元数据文件,包括:
判断所述元数据文件中是否有目标批次号的文件标识列表,如果有,则将待写入的目标批次号及对应的文件标识列表写入所述元数据文件,并覆盖所述元数据文件中已有的目标批次号的文件标识列表;否则直接将待写入的目标批次号的文件标识列表写入所述元数据文件。
在本发明的第二方面,提供了一种数据写入存储装置。该装置包括:
生成模块,用于在执行一批次任务时,生成对应的数据文件,写入临时目录;
判断模块,用于判断元数据文件中是否存在当前批次任务对应的文件标识列表,如果是,则删除数据目录中所述文件标识列表对应的数据文件,并调用映射模块;否则直接调用映射模块;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中盈优创资讯科技有限公司,未经中盈优创资讯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011066646.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种土壤铷盐循环浸出及含量计算方法
- 下一篇:一种快速收纳的侧方停车辅助装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置