CN114661248A - 数据处理方法及装置 - Google Patents

数据处理方法及装置 Download PDF

Info

Publication number
CN114661248A
CN114661248A CN202210576549.XA CN202210576549A CN114661248A CN 114661248 A CN114661248 A CN 114661248A CN 202210576549 A CN202210576549 A CN 202210576549A CN 114661248 A CN114661248 A CN 114661248A
Authority
CN
China
Prior art keywords
data processing
task
target
state
checkpoint
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
CN202210576549.XA
Other languages
English (en)
Other versions
CN114661248B (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.)
Hundsun Technologies Inc
Original Assignee
Hundsun Technologies Inc
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 Hundsun Technologies Inc filed Critical Hundsun Technologies Inc
Priority to CN202210576549.XA priority Critical patent/CN114661248B/zh
Publication of CN114661248A publication Critical patent/CN114661248A/zh
Application granted granted Critical
Publication of CN114661248B publication Critical patent/CN114661248B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Retry When Errors Occur (AREA)

Abstract

本说明书提供数据处理方法及装置,其中所述数据处理方法包括:获取执行中的数据处理任务对应的数据处理状态;确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存;在针对所述检查点标识创建完成目标检查点的情况下,根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态;将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间。

Description

数据处理方法及装置
技术领域
本说明书涉及数据处理技术领域,特别涉及数据处理方法及装置。
背景技术
随着互联网技术的发展,Flink作为一种框架和分布式处理引擎,其提供强大的处理能力。可以实现在无边界和有边界数据流上进行有状态的计算,且Flink能在所有常见集群环境中运行,并能以内存速度和任意规模进行计算,实现支持开发和运行多种不同类型的程序。而现有技术中,在实时数仓数据同步处理阶段,此类Flink任务中,源端持续消费数据,且同时也需要将数据的消费点保存起来,以便在任务暂停、重启等问题的情况下,能够续接上次的消费点继续消费数据。然而,消费点的保存大多数基于额外的文件系统完成,需要消耗额外的计算资源,并且运维成本较高,因此亟需一种有效的方案以解决上述问题。
发明内容
有鉴于此,本说明书实施例提供了一种数据处理方法。本说明书同时涉及一种数据处理装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种数据处理方法,包括:
获取执行中的数据处理任务对应的数据处理状态;
确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存;
在针对所述检查点标识创建完成目标检查点的情况下,根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态;
将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间。
可选地,所述获取执行中的数据处理任务对应的数据处理状态,包括:
获取关联源端的所述数据处理任务;
通过执行所述数据处理任务读取所述源端对应的业务数据,并将所述业务数据发送至目标端;
确定所述业务数据对应的数据处理点位,作为执行中的所述数据处理任务对应的所述数据处理状态。
可选地,所述确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存,包括:
调用第一业务函数对应的快照策略对所述数据处理任务进行处理,获得任务快照信息;
根据所述任务快照信息确定所述数据处理任务关联的所述检查点标识;
在所述目标内存中申请事件管理内存,并将所述检查点标识和所述数据处理状态写入所述事件管理内存。
可选地,所述根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态,包括:
调用第二业务函数对应的通知策略获取所述检查点标识;
根据所述检查点标识在所述事件管理内存中,读取所述目标检查点关联的所述数据处理状态。
可选地,所述将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间,包括:
确定所述数据处理任务对应的业务数据库,将所述业务数据库作为所述目标检查点关联的所述目标存储空间;
确定所述数据处理任务对应的所述任务标识,并建立所述任务标识和所述数据处理状态的任务关联关系;
按照所述任务关联关系,将所述任务标识和所述数据处理状态异步写入所述目标存储空间。
可选地,所述确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存的步骤,通过状态管理线程完成;
相应的,所述在针对所述检查点标识创建完成目标检查点的情况下,根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态的步骤,通过状态存储线程完成。
可选地,还包括:
通过所述状态存储线程向所述状态管理线程发送检查点创建完成信息;
响应于所述创建完成信息,通过所述状态存储线程接收所述状态管理线程反馈的所述检查点标识。
可选地,所述将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间步骤执行之后,还包括:
在所述数据处理任务状态变更的情况下,按照所述任务标识在所述目标存储空间中读取至少一个初始数据处理状态;
在所述至少一个初始数据处理状态中选择所述目标检查点关联的初始数据处理状态,作为目标数据处理状态;
响应于业务用户针对所述目标数据处理状态提交的操作指令,执行所述数据处理任务。
可选地,所述响应于业务用户针对所述目标数据处理状态提交的操作指令,执行所述数据处理任务,包括:
向所述业务用户展示包含所述目标数据处理状态的操作界面;
接收所述业务用户通过所述操作界面提交的所述操作指令,根据所述操作指令确定状态偏移量;
按照所述状态偏移量对所述目标数据处理状态进行更新,并根据更新后的目标数据处理状态执行所述数据处理任务。
可选地,所述将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间,包括:
确定第一数据处理接口预设的所述目标存储空间,并调用所述第一数据处理接口将所述数据处理状态和所述任务标识写入所述目标存储空间;
相应的,所述将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间步骤执行之后,还包括:
确定所述第一数据处理接口关联的第二数据处理接口,并调用所述第二数据处理接口在所述目标存储空间中读取所述数据处理状态。
根据本说明书实施例的第二方面,提供了一种数据处理装置,包括:
获取模块,被配置为获取执行中的数据处理任务对应的数据处理状态;
确定模块,被配置为确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存;
读取模块,被配置为在针对所述检查点标识创建完成目标检查点的情况下,根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态;
写入模块,被配置为将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间。
根据本说明书实施例的第三方面,提供了一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令时实现所述数据处理方法的步骤。
根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现所述数据处理方法的步骤。
本说明书提供的数据处理方法,为了能够时实现消费点持久化且降低维护成本,可以在获取到执行中的数据任务对应的数据处理状态后,可以先确定数据处理任务关联的检查点标识,并将检查点标识和数据处理状态临时写入目标内存;当检测到目标检查点创建完成的情况下,即可根据检查点标识在目标内存中读取到目标检查点关联的数据处理状态,之后通过将数据处理状态和数据处理任务对应的任务标识,写入目标存储空间。实现通过存储空间对数据处理状态持久化存储,且同时目标存储空间是关联数据处理任务的,因此不需要额外的资源进行维护,从而达到降低运维成本的目的。
附图说明
图1是本说明书一实施例提供的一种数据处理方法的流程图;
图2是本说明书一实施例提供的一种数据处理方法的结构示意图;
图3是本说明书一实施例提供的一种数据处理方法的处理流程图;
图4是本说明书一实施例提供的一种数据处理装置的结构示意图;
图5是本说明书一实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
Flink:是一个框架和分布式处理引擎,用于在无边界和有边界数据流上进行有状态的计算。主要特性包括:批流一体化、精密的状态管理、事件时间支持以及精确一次的状态一致性保障等。
在本说明书中,提供了一种数据处理方法,本说明书同时涉及一种数据处理装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
实际应用中,实时数仓数据同步处理阶段,会建立Flink任务完成,为支持源端持续消费数据,需要将数据的消费点保存,以便在任务暂停、重启时,能够续接上次保存的消费点继续完成数据消费,但此类任务中,对数据的顺序性要求较高,对数据的处理性能要求较高。而现有技术中的状态保存方案具有一定的局限性。Flink处理引擎提供了三种可用的cheakpoint(检查点)状态存储方式,分别为Memory State Backend(基于内存的状态管理器),Fs State Backend(基于文件系统的状态管理器),和RocksDB State Backend(基于RocksDB的状态管理器)。
其中,Memory State Backend是将状态维护在 Java 堆上的一个内部状态后端存储方式,最适合小状态的应用场景,但是因为是保存在jvm堆中,没有持久化,进程退出后,保存的状态也消失了。
Fs State Backend是将cheakpoint状态保存在外部文件系统,需要配置额外文件系统,如HDFS,适用于处理大状态,长窗口,或者大键值状态的有状态处理任务,但是该方案需要额外的文件系统,其运维成本较高,资源消耗较大。
RocksDB State Backend是一个key/value的内存存储文件系统,原理是先将状态放到内存中,如果内存快满时,则写入磁盘中;但是该方案的权衡点在于所有的状态相关的操作都需要序列化(或反序列化)才能跨越 JNI 边界。与上面提到的堆上后端相比,这可能会影响应用程序的吞吐量;仅适用于对读写性能要求不高的作业;局限性较大。
有鉴于此,本说明书提供的数据处理方法,为了能够时实现消费点持久化且降低维护成本,可以在获取到执行中的数据任务对应的数据处理状态后,可以先确定数据处理任务关联的检查点标识,并将检查点标识和数据处理状态临时写入目标内存;当检测到目标检查点创建完成的情况下,即可根据检查点标识在目标内存中读取到目标检查点关联的数据处理状态,之后通过将数据处理状态和数据处理任务对应的任务标识,写入目标存储空间。实现通过存储空间对数据处理状态持久化存储,且同时目标存储空间是关联数据处理任务的,因此不需要额外的资源进行维护,从而达到降低运维成本的目的。
图1示出了根据本说明书一实施例提供的一种数据处理方法的流程图,具体包括以下步骤:
步骤S102,获取执行中的数据处理任务对应的数据处理状态。
本实施例提供的数据处理方法是对关系型数据库中数据进行同步处理,任务的源端是数据库,通过将数据处理状态写入数据库,可以实现数据处理状态持久化,且运维成本较低,用于降低资源消耗成本,提高业务方使用体验。
具体的,数据处理任务具体是指关联Flink的实时数仓同步处理任务,通过该任务实现将源端对应数据库中的数据实时同步到目标端对应的数据库。相应的,数据处理状态具体是指用于记录执行中的任务所读取数据消费点的状态,用于表征当前时刻通过执行数据处理任务,在数据库中读取数据的位置点。
基于此,通过执行数据处理任务,可以实现将源端数据库中的数据实时同步到目标端数据库,而在此过程中,为了避免任务重启或中断,导致任务执行失败,无法有效的完成数据同步,可以在每一次执行读取操作时,获取数据处理状态,用于表征当前时刻所读取的数据的位置点,并将数据处理状态进行保存,以支持任务重启或者中断后,能够通过数据处理状态确定中断或者重启时,所处的位置点,以在任务恢复后,可以续接最新的位置点继续进行数据同步。
进一步的,考虑数据处理任务是实时数据同步处理的操作,为了能够保证数据处理状态记录的精准度,可以在每次数据读取完成后,进行点位的记录,本实施例中,具体实现方式如下:
获取关联源端的所述数据处理任务;通过执行所述数据处理任务读取所述源端对应的业务数据,并将所述业务数据发送至目标端;确定所述业务数据对应的数据处理点位,作为执行中的所述数据处理任务对应的所述数据处理状态。
具体的,源端具体是指向外部输出数据的一端,目标端具体是指接收数据的一端;相应的,业务数据具体是指数据处理任务所同步的数据;相应的,数据处理点位具体是指源端进行数据同步时,当前时刻对应的数据消费点,即当前时刻在数据库中读取数据的位置点。
基于此,当确定关联源端的数据处理任务后,说明当前时刻需要在源端和目标端之间进行数据同步处理,因此通过执行数据处理任务,可以读取源端对应的业务数据,并将向其发送到目标端;考虑到数仓同步任务的数据量较大,因此业务数据的同步将是持续性的,而在此过程中,为避免任务中断或重启,而导致读取失败,可以在每次数据读取并发送后,确定当前时刻业务数据对应的数据处理点位,并将其作为执行中数据处理任务对应的数据处理状态,以方便后续对数据处理状态进行持久化存储,以达到任务恢复并续接完成任务的目的。
举例说明,A数据库向B数据库同步数据,此时将创建数据处理任务,并通过执行数据处理任务的方式,实现将A数据库中的数据实时同步到B数据库。由于A数据库中的数据量较大,将按批次逐步同步到数据库。在此过程中,为了能够保证数据处理任务执行完成,可以在每次将A数据库中的业务数据同步到B数据库后,记录当前时刻在A数据库中的消费点,即数据处理任务当前时刻对应的数据处理状态,以方便在任务中断并恢复后,可以按照数据处理状态继续完成数据同步。
综上,通过采用在任务执行中记录数据处理状态,保证数据处理状态可以对应每一次数据的同步操作,以保证在任务重启且恢复后,能够实现续接数据同步操作。
步骤S104,确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存。
具体的,在上述获取到执行中数据处理任务的数据处理状态后,进一步的,为支持任务恢复可以续接数据同步处理,则需要创建关联数据处理任务的检查点;在任务恢复后,可以基于检查点确定数据处理状态,用于继续进行数据同步处理操作。因此,获取到数据处理状态后,可以先确定当前时刻数据处理任务关联的检查点标识,并将检查点标识和数据处理状态写入目标内存,用于在检查点创建完后,可以通过读取目标内存完成对数据处理状态的持久化。
其中,检查点标识具体是指当前时刻所需要创建的checkpoint(检查点)所对应的唯一标识;相应的,目标内存具体是指在检查点创建完成前,用于临时存储数据处理状态和检查点标识的内存,如job Manager内存。
进一步的,为保证检查点标识具有唯一性,且目标内存当前时刻写入的数据处理状态和检查点标识对应于当前时刻的数据处理任务,可以通过Flink中的第一业务函数完成,本实施例中,具体实现方式如下:
调用第一业务函数对应的快照策略对所述数据处理任务进行处理,获得任务快照信息;根据所述任务快照信息确定所述数据处理任务关联的所述检查点标识;在所述目标内存中申请事件管理内存,并将所述检查点标识和所述数据处理状态写入所述事件管理内存。
具体的,第一业务函数具体是指Flink中用于进行调用快照策略的函数,通过快照策略可以实现容错回复机制;相应的,任务快照信息具体是指记录当前时刻数据处理任务执行中,各个节点所对应的信息,且通过任务快照信息能够确定检查点标识;相应的,事件管理内存具体是指目标内存中,用于管理关联检查点标识和数据处理状态的内存,且该部分内存对应于数据处理任务。
基于此,当确定当前时刻数据处理任务对应的数据处理状态后,可以在检查点触发创建前,调用Flink中的第一业务函数对应的快照策略,通过快照策略对数据处理任务进行处理,以获得当前时刻对应的任务快照信息。之后根据任务快照信息即可确定数据处理任务关联的检查点标识,实现在目标内存中申请事件管理内存后,可以将检查点标识和数据处理状态写入事件管理内存,用于对应数据处理任务,方便后续可以进行状态持久化存储。
沿用上例,在将A数据库中的数据发送到B数据后,将获得当前时刻对应的数据处理状态。进一步的,在checkpoint触发前,可以调用Input format Source Function(Flink中的容错回复机制)的snapshot State方法,确定当前时刻数据处理任务对应的任务快照信息,之后根据任务快照信息生成checkpoint Id,即检查点标识。以方便后续创建checkpoint Id对应的检查点。而在此基础上,为了能够方便后续对状态持久化,可以将checkpoint Id和数据处理状态写入job Manager内存中。
综上,通过调用第一业务函数对应的快照策略,对数据处理任务进行快照处理,用于生成当前时刻对应的检查点标识,实现可以在创建检查点之前临时将状态和标识写入内存,从而方便在状态持久化阶段,可以直接从内存中进行状态的读取,且保证读取的状态与数据处理任务相关联,用于保证状态可以持久化成功。
步骤S106,在针对所述检查点标识创建完成目标检查点的情况下,根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态。
具体的,在上述获取到数据处理状态和检查点标识后,进一步的,Flink为支持数据处理任务可以同步完成,将在此过程中,建立检查点标识对应的目标检查点,且目标检查点对应数据处理任务当前时刻的数据处理状态,用于在任务中断后,可以基于目标检查点完成数据处理状态的确定,并按照数据处理状态完成任务恢复处理,也就是说,目标检查点是支持任务恢复的基准节点。
在目标检查点创建完成后,考虑到数据处理状态和检查点标识是一同写入目标内存的,而目标检查点的创建和数据处理状态持久化的处理是由不同的两个线程完成,因此某一个线程完成目标检查点的创建后,需要通知另一个线程进行数据处理状态的读取,以用于后续写入目标存储空间,完成对当前时刻的数据处理状态的持久化。
其中,目标检查点具体是指用于支持恢复数据处理任务的节点,其关联当前时刻的数据处理状态,且会在任务中断且重启后,触发执行恢复处理操作。
进一步的,由于在向目标内存写入数据处理状态和检查点标识时,是在目标内存中注册一块事件管理内存完成的临时存储,因此在持久化阶段,需要通过Flink中的第二业务函数完成数据处理状态的读取处理操作,本实施例中,具体实现方式如下:
调用第二业务函数对应的通知策略获取所述检查点标识;根据所述检查点标识在所述事件管理内存中,读取所述目标检查点关联的所述数据处理状态。
具体的,第二业务函数具体是指用于调用通知策略的函数,相应的,通知策略具体是指用于支持不同线程内信号共享的策略,实现在目标检查点的线程完成创建后,可以通知另一个线程进行数据处理状态的持久化存储。
基于此,在确定关联检查点标识的目标检查点创建完成后,说明当前阶段已经能够进行数据处理状态的持久化,因此可以调用第二业务函数对应的通知策略获取检查点标识,之后利用检查点标识在事件管理内存中,读取目标检查点关联的数据处理状态,以用于后续使用。
此外,为了能够快速的完成对数据处理状态的持久化存储,可以通过状态管理线程完成步骤S104;通过状态存储线程完成步骤S106;也就是说,所述确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存的步骤,通过状态管理线程完成;相应的,所述在针对所述检查点标识创建完成目标检查点的情况下,根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态的步骤,通过状态存储线程完成。
其中,状态管理线程具体是指用于管理数据处理状态的线程,用于确定数据处理状态,以及将数据处理状态存储到目标内存;相应的,状态存储线程具体是指用于对数据处理状态持久化存储的线程,用于创建目标检查点,以及持久化数据处理状态。
在此基础上,状态存储线程和状态管理线程之间需要通过设定的函数,调用设定的策略才能够完成,本实施例中,具体实现方式如下:
通过所述状态存储线程向所述状态管理线程发送检查点创建完成信息;响应于所述创建完成信息,通过所述状态存储线程接收所述状态管理线程反馈的所述检查点标识。
具体的,创建完成信息具体是指状态存储线程创建完成目标检查点的信息,用于描述对应数据处理状态的目标检查点创建完成;基于此,当通过状态管理线程完成将数据处理状态和检查点标识存储到目标内存后,进一步的,状态存储线程也将结合检查点标识创建目标检查点。当状态存储线程完成目标检查点的创建完成后,可以通过状态存储线程向状态管理线程发送检查点创建完成信息,以支持状态存储线程可以响应于创建完成信息,确定检查点标识,最后基于检查点标识从内存中读取数据处理状态,用于后续的持久化处理。
沿用上例,在将数据处理状态和检查点标识写入job Manager内存后,若确定checkpoint创建完成,此时可以回调Checkpoint Listener的notify CheckpointComplate方法,用于确定当前时刻数据处理任务对应的checkpoint Id。之后,根据checkpoint Id在job Manager内存,读取其关联的数据处理状态,用于后续持久化存储。
综上,通过调用第二业务函数对应的通知策略进行检查点标识的确定,并结合标识在内存中读取数据处理状态,可以保证读取到的数据状态对应于当前时刻的数据处理任务,从而保证持久化的数据处理状态的准确度。
步骤S108,将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间。
具体的,在上述基于检查点标识在目标内存中读取到数据处理状态后,为支持任务恢复时可以继续进行数据处理任务,可以将数据处理状态和数据处理任务对应的任务标识一同写入目标存储空间,以实现建立当前时刻的数据处理状态与数据处理任务的关联关系,实现在任务恢复阶段,可以从目标存储空间中读取到关联数据处理任务的数据处理状态,用于恢复数据处理任务,继续进行数据同步的处理操作。其中,任务标识具体是指数据处理任务对应的唯一标识,相应的,目标存储空间具体是指数据处理任务关联的存储空间,可以是数据处理任务中源端数据库,还可以是指定的数据库。
进一步的,在向目标存储空间写入数据处理状态和任务标识时,考虑到不同的任务对应不同的数据库,因此需要先确定数据处理任务关联的数据库,再进行状态持久化处理,实现向数据库中写入数据处理状态,不需要额外的文件系统进行维护,且不会因为任务中断或重启而丢失,本实施例中,具体实现方式如下:
确定所述数据处理任务对应的业务数据库,将所述业务数据库作为所述目标检查点关联的所述目标存储空间;确定所述数据处理任务对应的所述任务标识,并建立所述任务标识和所述数据处理状态的任务关联关系;按照所述任务关联关系,将所述任务标识和所述数据处理状态异步写入所述目标存储空间。
具体的,业务数据库具体是指数据处理任务关联的数据库;相应的,任务关联关系具体是指数据处理状态和任务标识之间的对应关系,用于明确存储到目标存储空间中的数据处理状态所关联的数据处理任务。
基于此,在得到数据处理状态后,为了能够保证持久化的数据处理状态可以明确与数据处理任务之间的关联关系,可以先确定数据处理任务对应的业务数据库,并将其作为目标存储空间,之后建立数据处理任务的任务标识与数据处理状态的任务关联关系,最后按照任务关联关系将数据处理状态和任务标识异步写入业务数据库,以实现对数据处理状态的持久化存储。
沿用上例,当确定数据处理状态后,可以先确定数据处理任务对应的任务标识,之后异步将任务标识和数据处理状态保存到A数据库中,以实现在A数据库中体现数据处理任务和当前时刻的数据处理状态的关联性,且完成对数据处理状态的持久化操作。
综上,通过选择业务数据库完成对数据处理状态的存储,实现不需要额外的文件系统维护数据处理状态,有效的降低了运维成本,同时保证数据处理状态可以持久化,以确保数据处理任务可以顺利执行完成。
更进一步的,当数据处理任务发生重启或者中断的情况下,说明无法继续进行数据同步处理操作,为了能够支持数据处理任务可以顺利完成,避免造成数据丢失等问题,可以在任务重启后,通过目标检查点读取任务中断前的数据处理状态,用于恢复数据处理任务,本实施例中,具体实现方式如下:
在所述数据处理任务状态变更的情况下,按照所述任务标识在所述目标存储空间中读取至少一个初始数据处理状态;在所述至少一个初始数据处理状态中选择所述目标检查点关联的初始数据处理状态,作为目标数据处理状态;响应于业务用户针对所述目标数据处理状态提交的操作指令,执行所述数据处理任务。
具体的,任务状态具体是指数据处理任务当前时刻所对应的状态,包括但不限于执行状态、中断状态、待执行状态等;相应的,初始数据处理状态具体是指数据处理任务执行过程中,所记录的全部数据处理状态;相应的,目标数据处理状态具体是指续接任务中断时的数据处理状态,基于该状态可以进行数据同步处理操作;相应的,业务用户具体是指维护数据处理任务的开发人员;相应的,操作指令具体是指触发数据处理任务继续执行的指令。
基于此,在数据处理任务状态变更的情况下,说明数据处理任务发生任务中断并恢复,为了能够继续支持数据处理任务完成,可以按照数据处理任务对应的任务标识,在存储数据处理状态的目标存储空间中读取至少一个初始数据处理任务,这部分数据处理任务都是在任务执行过程中写入目标存储空间的数据处理状态,因此可以在至少一个初始数据处理状态中选择关联目标检查点的数据处理状态,作为目标数据处理状态,最后通过响应于业务用户针对目标数据处理状态提交的操作指令,执行数据处理任务即可,即用于恢复数据处理任务继续执行。
沿用上例,在A数据库向B数据库进行数据同步的数据处理任务中断并恢复后,为了能够继续向B数据库同步A数据库中的数据,且已经同步的数据不需要再进行同步,可以根据数据处理任务对应的任务标识在A数据库中读取多个初始数据处理状态,以从多个初始数据处理状态中选择与任务中断时刻最接近的数据处理状态,作为目标数据处理状态,之后以目标数据处理状态为A数据库中的消费点,继续从A数据库中读取数据并同步到B数据库的操作即可。
综上,通过在目标存储空间中选择与目标检查点对应的数据处理状态,并以该数据处理状态为起点继续执行数据处理任务,可以支持数据处理任务继续执行,且已经同步完成的数据不需要重新处理,有效的节省了资源消耗。
此外,考虑到部分业务场景下,数据处理任务的中断或重启是由业务用户操作实现的,比如A数据库中的部分数据不需要同步,如果持续执行数据处理任务,会导致这部分数据也被同步,为避免造成存储空间和传输资源的浪费,业务用户可以手动中断,并选择在指定的数据处理状态处继续执行数据处理任务,因此可以响应于业务用户的操作指令,确定用户指定的数据处理状态,本实施例中,具体实现方式如下:
向所述业务用户展示包含所述目标数据处理状态的操作界面;接收所述业务用户通过所述操作界面提交的所述操作指令,根据所述操作指令确定状态偏移量;按照所述状态偏移量对所述目标数据处理状态进行更新,并根据更新后的目标数据处理状态执行所述数据处理任务。
具体的,操作界面具体是指向用户可视化数据处理状态的界面,用于告知用户数据处理任务的执行状态等信息;相应的,状态偏移量具体是指对数据处理状态进行调整的偏移量,用于在目标数据处理状态的基础上,重新定位新的数据处理状态。
基于此,在确定数据处理任务恢复后,为了能够支持用户自定义选择恢复消费点,可以向业务用户展示包含目标数据处理状态的操作界面,当接收到业务用户通过操作界面提交的操作指令后,可以根据操作指令确定状态偏移量,以按照状态偏移量对目标检查点对应的目标数据处理状态进行更新,获得业务数据处理状态,最后通过业务数据处理状态继续执行数据处理任务即可。
举例说明,在确定A数据库和B数据库之间的数据处理任务对应的消费点为S1的情况下,业务用户可以根据自身需求通过操作界面提交操作指令,该操作指令中携带有偏移量,此时说明业务用户需要从自定义的消费点继续进行数据处理任务,因此可以根据偏移量对消费点S1进行更新,得到更新后的消费点S2,之后在A数据库中明确S2对应的位置,并继续执行数据处理任务,向B数据库同步数据即可。
综上,通过支持用户修改数据处理状态,实现在执行数据处理任务时,可以更加灵活,且满足业务用户在不同需求下的调整方案,进一步提高了业务方的使用体验。
除此之外,在向目标存储空间中写入数据处理状态和任务标识时,还可以通过指定的接口关联目标存储空间,以提高状态持久化效率,本实施例中,具体实现方式如下:
确定第一数据处理接口预设的所述目标存储空间,并调用所述第一数据处理接口将所述数据处理状态和所述任务标识写入所述目标存储空间;在所述数据处理任务状态变更的情况下,确定所述第一数据处理接口关联的第二数据处理接口,并调用所述第二数据处理接口在所述目标存储空间中读取所述数据处理状态。
具体的,第一数据处理接口具体是指用于指向目标存储空间的接口,通过该接口可以直接将持久化的数据处理状态存储到目标存储空间;相应的,第二数据处理接口具体是指用于读取数据处理状态的接口,通过该接口可以直接从目标存储空间中读取数据数据状态,用于恢复数据处理任务。
基于此,在向目标存储空间中写入任务标识和数据处理状态时,可以先确定第一数据处理接口预设的目标存储空间,之后再调用第一数据处理接口将数据处理状态和任务标识写入目标存储空间;而在数据处理任务状态变更的情况下,可以先确定第一数据处理接口关联的第二数据处理接口,即读取数据处理状态的接口,之后再调用第二数据处理接口在目标存储空间中读取数据处理状态,用于后续恢复数据处理任务,继续进行数据同步处理操作。
综上,通过采用数据处理接口的方式进行数据处理状态的读取和写入,可以有效的提高数据处理状态持久化的效率。
参见图2所示的示意图,为了能够时实现消费点持久化且降低维护成本,可以在获取到执行中的数据处理任务对应的数据处理状态后,可以先确定数据处理任务关联的检查点标识,并将检查点标识和数据处理状态临时写入目标内存;当检测到目标检查点创建完成的情况下,即可根据检查点标识在目标内存中读取到目标检查点关联的数据处理状态,之后通过将数据处理状态和数据处理任务对应的任务标识,写入数据库。实现通过数据库对数据处理状态持久化存储,且同时数据库是关联数据处理任务的,因此不需要额外的资源进行维护,从而达到降低运维成本的目的。
下述结合附图3,以本说明书提供的数据处理方法在实时数仓同步场景中的应用为例,对所述数据处理方法进行进一步说明。其中,图3示出了本说明书一实施例提供的一种数据处理方法的处理流程图,具体包括以下步骤:
步骤S302,获取关联源端的数据处理任务。
步骤S304,通过执行数据处理任务读取源端对应的业务数据,并将业务数据发送至目标端。
步骤S306,确定业务数据对应的数据处理点位,作为执行中的数据处理任务对应的数据处理状态。
步骤S308,调用第一业务函数对应的快照策略对数据处理任务进行处理,获得任务快照信息。
步骤S310,根据任务快照信息确定数据处理任务关联的检查点标识。
步骤S312,在目标内存中申请事件管理内存,并将检查点标识和数据处理状态写入事件管理内存。
步骤S314,调用第二业务函数对应的通知策略获取检查点标识。
步骤S316,根据检查点标识在事件管理内存中,读取目标检查点关联的数据处理状态。
步骤S318,确定数据处理任务对应的业务数据库,将业务数据库作为目标检查点关联的目标存储空间。
步骤S320,确定数据处理任务对应的任务标识,并建立任务标识和数据处理状态的任务关联关系。
步骤S322,按照任务关联关系,将任务标识和数据处理状态异步写入目标存储空间。
步骤S324,在数据处理任务状态变更的情况下,按照任务标识在目标存储空间中读取至少一个初始数据处理状态。
步骤S326,在至少一个初始数据处理状态中选择目标检查点关联的初始数据处理状态,作为目标数据处理状态。
步骤S328,响应于业务用户针对目标数据处理状态提交的操作指令,执行数据处理任务。
具体的,向业务用户展示包含目标数据处理状态的操作界面;接收业务用户通过操作界面提交的操作指令,根据操作指令确定状态偏移量;按照状态偏移量对目标数据处理状态进行更新,并根据更新后的目标数据处理状态执行数据处理任务。
综上所述,为了能够时实现消费点持久化且降低维护成本,可以在获取到执行中的数据任务对应的数据处理状态后,可以先确定数据处理任务关联的检查点标识,并将检查点标识和数据处理状态临时写入目标内存;当检测到目标检查点创建完成的情况下,即可根据检查点标识在目标内存中读取到目标检查点关联的数据处理状态,之后通过将数据处理状态和数据处理任务对应的任务标识,写入目标存储空间。实现通过存储空间对数据处理状态持久化存储,且同时目标存储空间是关联数据处理任务的,因此不需要额外的资源进行维护,从而达到降低运维成本的目的。
与上述方法实施例相对应,本说明书还提供了数据处理装置实施例,图4示出了本说明书一实施例提供的一种数据处理装置的结构示意图。如图4所示,该装置包括:
获取模块402,被配置为获取执行中的数据处理任务对应的数据处理状态;
确定模块404,被配置为确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存;
读取模块406,被配置为在针对所述检查点标识创建完成目标检查点的情况下,根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态;
写入模块408,被配置为将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间。
一个可选的实施例中,所述获取模块402进一步被配置为:
获取关联源端的所述数据处理任务;通过执行所述数据处理任务读取所述源端对应的业务数据,并将所述业务数据发送至目标端;确定所述业务数据对应的数据处理点位,作为执行中的所述数据处理任务对应的所述数据处理状态。
一个可选的实施例中,所述确定模块404进一步被配置为:
调用第一业务函数对应的快照策略对所述数据处理任务进行处理,获得任务快照信息;根据所述任务快照信息确定所述数据处理任务关联的所述检查点标识;在所述目标内存中申请事件管理内存,并将所述检查点标识和所述数据处理状态写入所述事件管理内存。
一个可选的实施例中,所述读取模块406进一步被配置为:
调用第二业务函数对应的通知策略获取所述检查点标识;根据所述检查点标识在所述事件管理内存中,读取所述目标检查点关联的所述数据处理状态。
一个可选的实施例中,所述写入模块408进一步被配置为:
确定所述数据处理任务对应的业务数据库,将所述业务数据库作为所述目标检查点关联的所述目标存储空间;确定所述数据处理任务对应的所述任务标识,并建立所述任务标识和所述数据处理状态的任务关联关系;按照所述任务关联关系,将所述任务标识和所述数据处理状态异步写入所述目标存储空间。
一个可选的实施例中,所述确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存的步骤,通过状态管理线程完成;相应的,所述在针对所述检查点标识创建完成目标检查点的情况下,根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态的步骤,通过状态存储线程完成。
一个可选的实施例中,所述数据处理装置,还包括:
线程处理模块,被配置为通过所述状态存储线程向所述状态管理线程发送检查点创建完成信息;响应于所述创建完成信息,通过所述状态存储线程接收所述状态管理线程反馈的所述检查点标识。
一个可选的实施例中,所述数据处理装置,还包括:
处理模块,被配置为在所述数据处理任务状态变更的情况下,按照所述任务标识在所述目标存储空间中读取至少一个初始数据处理状态;在所述至少一个初始数据处理状态中选择所述目标检查点关联的初始数据处理状态,作为目标数据处理状态;响应于业务用户针对所述目标数据处理状态提交的操作指令,执行所述数据处理任务。
一个可选的实施例中,所述处理模块进一步被配置为:
向所述业务用户展示包含所述目标数据处理状态的操作界面;接收所述业务用户通过所述操作界面提交的所述操作指令,根据所述操作指令确定状态偏移量;按照所述状态偏移量对所述目标数据处理状态进行更新,并根据更新后的目标数据处理状态执行所述数据处理任务。
一个可选的实施例中,所述写入模块408进一步被配置为:
确定第一数据处理接口预设的所述目标存储空间,并调用所述第一数据处理接口将所述数据处理状态和所述任务标识写入所述目标存储空间;
相应的,所述数据处理装置,还包括:
读取状态模块,被配置为确定所述第一数据处理接口关联的第二数据处理接口,并调用所述第二数据处理接口在所述目标存储空间中读取所述数据处理状态。
本说明书提供的数据处理装置,为了能够时实现消费点持久化且降低维护成本,可以在获取到执行中的数据任务对应的数据处理状态后,可以先确定数据处理任务关联的检查点标识,并将检查点标识和数据处理状态临时写入目标内存;当检测到目标检查点创建完成的情况下,即可根据检查点标识在目标内存中读取到目标检查点关联的数据处理状态,之后通过将数据处理状态和数据处理任务对应的任务标识,写入目标存储空间。实现通过存储空间对数据处理状态持久化存储,且同时目标存储空间是关联数据处理任务的,因此不需要额外的资源进行维护,从而达到降低运维成本的目的。
上述为本实施例的一种数据处理装置的示意性方案。需要说明的是,该数据处理装置的技术方案与上述的数据处理方法的技术方案属于同一构思,数据处理装置的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
图5示出了根据本说明书一实施例提供的一种计算设备500的结构框图。该计算设备500的部件包括但不限于存储器510和处理器520。处理器520与存储器510通过总线530相连接,数据库550用于保存数据。
计算设备500还包括接入设备540,接入设备540使得计算设备500能够经由一个或多个网络560通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备540可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本说明书的一个实施例中,计算设备500的上述部件以及图5中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图5所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备500可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备500还可以是移动式或静止式的服务器。
其中,处理器520用于执行如下计算机可执行指令:
获取执行中的数据处理任务对应的数据处理状态;
确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存;
在针对所述检查点标识创建完成目标检查点的情况下,根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态;
将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的数据处理方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于:
获取执行中的数据处理任务对应的数据处理状态;
确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存;
在针对所述检查点标识创建完成目标检查点的情况下,根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态;
将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的数据处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书并不受所描述的动作顺序的限制,因为依据本说明书,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。

Claims (13)

1.一种数据处理方法,其特征在于,包括:
获取执行中的数据处理任务对应的数据处理状态;
确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存;
在针对所述检查点标识创建完成目标检查点的情况下,根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态;
将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间。
2.根据权利要求1所述的数据处理方法,其特征在于,所述获取执行中的数据处理任务对应的数据处理状态,包括:
获取关联源端的所述数据处理任务;
通过执行所述数据处理任务读取所述源端对应的业务数据,并将所述业务数据发送至目标端;
确定所述业务数据对应的数据处理点位,作为执行中的所述数据处理任务对应的所述数据处理状态。
3.根据权利要求1所述的数据处理方法,其特征在于,所述确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存,包括:
调用第一业务函数对应的快照策略对所述数据处理任务进行处理,获得任务快照信息;
根据所述任务快照信息确定所述数据处理任务关联的所述检查点标识;
在所述目标内存中申请事件管理内存,并将所述检查点标识和所述数据处理状态写入所述事件管理内存。
4.根据权利要求3所述的数据处理方法,其特征在于,所述根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态,包括:
调用第二业务函数对应的通知策略获取所述检查点标识;
根据所述检查点标识在所述事件管理内存中,读取所述目标检查点关联的所述数据处理状态。
5.根据权利要求1所述的数据处理方法,其特征在于,所述将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间,包括:
确定所述数据处理任务对应的业务数据库,将所述业务数据库作为所述目标检查点关联的所述目标存储空间;
确定所述数据处理任务对应的所述任务标识,并建立所述任务标识和所述数据处理状态的任务关联关系;
按照所述任务关联关系,将所述任务标识和所述数据处理状态异步写入所述目标存储空间。
6.根据权利要求1所述的数据处理方法,其特征在于,所述确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存的步骤,通过状态管理线程完成;
相应的,所述在针对所述检查点标识创建完成目标检查点的情况下,根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态的步骤,通过状态存储线程完成。
7.根据权利要求6所述的数据处理方法,其特征在于,还包括:
通过所述状态存储线程向所述状态管理线程发送检查点创建完成信息;
响应于所述创建完成信息,通过所述状态存储线程接收所述状态管理线程反馈的所述检查点标识。
8.根据权利要求1所述的数据处理方法,其特征在于,所述将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间步骤执行之后,还包括:
在所述数据处理任务状态变更的情况下,按照所述任务标识在所述目标存储空间中读取至少一个初始数据处理状态;
在所述至少一个初始数据处理状态中选择所述目标检查点关联的初始数据处理状态,作为目标数据处理状态;
响应于业务用户针对所述目标数据处理状态提交的操作指令,执行所述数据处理任务。
9.根据权利要求8所述的数据处理方法,其特征在于,所述响应于业务用户针对所述目标数据处理状态提交的操作指令,执行所述数据处理任务,包括:
向所述业务用户展示包含所述目标数据处理状态的操作界面;
接收所述业务用户通过所述操作界面提交的所述操作指令,根据所述操作指令确定状态偏移量;
按照所述状态偏移量对所述目标数据处理状态进行更新,并根据更新后的目标数据处理状态执行所述数据处理任务。
10.根据权利要求1所述的数据处理方法,其特征在于,所述将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间,包括:
确定第一数据处理接口预设的所述目标存储空间,并调用所述第一数据处理接口将所述数据处理状态和所述任务标识写入所述目标存储空间;
相应的,所述将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间步骤执行之后,还包括:
确定所述第一数据处理接口关联的第二数据处理接口,并调用所述第二数据处理接口在所述目标存储空间中读取所述数据处理状态。
11.一种数据处理装置,其特征在于,包括:
获取模块,被配置为获取执行中的数据处理任务对应的数据处理状态;
确定模块,被配置为确定所述数据处理任务关联的检查点标识,并将所述检查点标识和所述数据处理状态写入目标内存;
读取模块,被配置为在针对所述检查点标识创建完成目标检查点的情况下,根据所述检查点标识在所述目标内存中读取所述目标检查点关联的所述数据处理状态;
写入模块,被配置为将所述数据处理状态和所述数据处理任务对应的任务标识,写入目标存储空间。
12.一种计算设备,其特征在于,包括存储器和处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,以实现权利要求1至10任意一项所述方法的步骤。
13.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1至10任意一项所述方法的步骤。
CN202210576549.XA 2022-05-25 2022-05-25 数据处理方法及装置 Active CN114661248B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210576549.XA CN114661248B (zh) 2022-05-25 2022-05-25 数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210576549.XA CN114661248B (zh) 2022-05-25 2022-05-25 数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN114661248A true CN114661248A (zh) 2022-06-24
CN114661248B CN114661248B (zh) 2022-10-04

Family

ID=82038422

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210576549.XA Active CN114661248B (zh) 2022-05-25 2022-05-25 数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN114661248B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117093408A (zh) * 2023-10-20 2023-11-21 恒生电子股份有限公司 数据处理方法以及装置
CN117112302A (zh) * 2023-08-30 2023-11-24 广州经传多赢投资咨询有限公司 一种金融数据的异常容灾方法、系统、设备及介质
WO2024104046A1 (zh) * 2022-11-15 2024-05-23 华为云计算技术有限公司 一种主动变更的方法、系统、服务器及存储介质
CN118626348A (zh) * 2024-08-12 2024-09-10 杭州玳数科技有限公司 一种Flink状态信息的可视化方法及系统

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080120620A1 (en) * 2006-09-27 2008-05-22 Richard Lett Systems and methods for scheduling, processing, and monitoring tasks
EP1950658A1 (en) * 2003-02-20 2008-07-30 Hitachi Ltd. Data restoring apparatus using journal data and identification information
CN105871603A (zh) * 2016-03-29 2016-08-17 中国科学院软件研究所 一种基于内存数据网格的实时流式数据处理失效恢复系统及方法
CN107145403A (zh) * 2017-04-20 2017-09-08 浙江工业大学 面向Web开发环境的关系型数据库数据回溯方法
US20180081767A1 (en) * 2016-09-22 2018-03-22 Oracle International Corporation Enhancing consistent read performance for in-memory databases
CN109271412A (zh) * 2018-09-28 2019-01-25 中国-东盟信息港股份有限公司 智慧城市的实时流数据处理方法及系统
CN110018790A (zh) * 2019-03-26 2019-07-16 华中科技大学 一种保证持久性内存中数据崩溃一致性的方法及系统
CN110928906A (zh) * 2019-11-08 2020-03-27 杭州安恒信息技术股份有限公司 基于flink仅一次写入carbonData的方法
CN112287007A (zh) * 2020-10-30 2021-01-29 常州微亿智造科技有限公司 基于Flink SQL引擎的工业生产数据实时处理方法、系统
CN112379887A (zh) * 2020-11-30 2021-02-19 天翼电子商务有限公司 一种flink state状态迁移方案
CN112905668A (zh) * 2021-03-05 2021-06-04 北京中经惠众科技有限公司 基于分布式数据流处理引擎的数据库导数方法、设备和介质

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1950658A1 (en) * 2003-02-20 2008-07-30 Hitachi Ltd. Data restoring apparatus using journal data and identification information
US20080120620A1 (en) * 2006-09-27 2008-05-22 Richard Lett Systems and methods for scheduling, processing, and monitoring tasks
CN105871603A (zh) * 2016-03-29 2016-08-17 中国科学院软件研究所 一种基于内存数据网格的实时流式数据处理失效恢复系统及方法
US20180081767A1 (en) * 2016-09-22 2018-03-22 Oracle International Corporation Enhancing consistent read performance for in-memory databases
CN107145403A (zh) * 2017-04-20 2017-09-08 浙江工业大学 面向Web开发环境的关系型数据库数据回溯方法
CN109271412A (zh) * 2018-09-28 2019-01-25 中国-东盟信息港股份有限公司 智慧城市的实时流数据处理方法及系统
CN110018790A (zh) * 2019-03-26 2019-07-16 华中科技大学 一种保证持久性内存中数据崩溃一致性的方法及系统
CN110928906A (zh) * 2019-11-08 2020-03-27 杭州安恒信息技术股份有限公司 基于flink仅一次写入carbonData的方法
CN112287007A (zh) * 2020-10-30 2021-01-29 常州微亿智造科技有限公司 基于Flink SQL引擎的工业生产数据实时处理方法、系统
CN112379887A (zh) * 2020-11-30 2021-02-19 天翼电子商务有限公司 一种flink state状态迁移方案
CN112905668A (zh) * 2021-03-05 2021-06-04 北京中经惠众科技有限公司 基于分布式数据流处理引擎的数据库导数方法、设备和介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
M. REZA HOSEINYFARAHABADY ET AL.: "Q-Flink: A QoS-Aware Controller for Apache Flink", 《IEEE XPLORE》 *
郭文鹏 等: "面向Flink迭代计算的高效容错处理技术", 《计算机学报》 *
龙翔等: "Linux中检查点(Checkpoint)的核心支持――ckpt文件系统的设计", 《计算机工程与应用》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024104046A1 (zh) * 2022-11-15 2024-05-23 华为云计算技术有限公司 一种主动变更的方法、系统、服务器及存储介质
CN117112302A (zh) * 2023-08-30 2023-11-24 广州经传多赢投资咨询有限公司 一种金融数据的异常容灾方法、系统、设备及介质
CN117112302B (zh) * 2023-08-30 2024-03-12 广州经传多赢投资咨询有限公司 一种金融数据的异常容灾方法、系统、设备及介质
CN117093408A (zh) * 2023-10-20 2023-11-21 恒生电子股份有限公司 数据处理方法以及装置
CN117093408B (zh) * 2023-10-20 2024-01-23 恒生电子股份有限公司 数据处理方法以及装置
CN118626348A (zh) * 2024-08-12 2024-09-10 杭州玳数科技有限公司 一种Flink状态信息的可视化方法及系统

Also Published As

Publication number Publication date
CN114661248B (zh) 2022-10-04

Similar Documents

Publication Publication Date Title
CN114661248B (zh) 数据处理方法及装置
EP4033374A1 (en) Method and device for synchronizing node data
US8886609B2 (en) Backup and restore of data from any cluster node
CN110795503A (zh) 分布式存储系统的多集群数据同步方法及相关装置
CN112131237A (zh) 数据同步方法、装置、设备及计算机可读介质
US20160350350A1 (en) Ensuring the same completion status for transactions after recovery in a synchronous replication environment
CN110765165B (zh) 一种跨系统数据同步处理的方法、装置及系统
WO2023241528A1 (zh) 数据处理方法以及装置
CN113806301A (zh) 数据同步方法、装置、服务器及存储介质
US8090695B2 (en) Dynamic restoration of message object search indexes
CN115098537B (zh) 事务执行方法、装置、计算设备及存储介质
CN112181724B (zh) 大数据容灾方法、装置和电子设备
US11157690B2 (en) Techniques for asynchronous execution of computationally expensive local spreadsheet tasks
CN113051055A (zh) 一种任务处理方法和装置
CN117435569A (zh) 缓存系统动态扩容方法、装置、设备、介质和程序产品
CN109445966B (zh) 事件处理方法、装置、介质和计算设备
CN115586872A (zh) 一种容器镜像管理方法、装置、设备及存储介质
US20230281187A1 (en) Method for keeping data consistent across different storage systems, computing device, and storage medium
CN113761075A (zh) 切换数据库的方法、装置、设备和计算机可读介质
US20200265064A1 (en) Data Replication Using Probabilistic Replication Filters
CN114676166B (zh) 数据处理方法及装置
CN118503298B (zh) 基于双缓存的数据处理方法、装置、设备及存储介质
CN117171266B (zh) 一种数据同步方法、装置、设备和存储介质
CN115827172A (zh) 执行数据库事务的方法以及装置
CN110865979A (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