CN111930748A - 流式计算系统数据追踪方法、装置、设备以及存储介质 - Google Patents
流式计算系统数据追踪方法、装置、设备以及存储介质 Download PDFInfo
- Publication number
- CN111930748A CN111930748A CN202010789729.7A CN202010789729A CN111930748A CN 111930748 A CN111930748 A CN 111930748A CN 202010789729 A CN202010789729 A CN 202010789729A CN 111930748 A CN111930748 A CN 111930748A
- Authority
- CN
- China
- Prior art keywords
- data
- computing system
- current state
- information
- streaming computing
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Debugging And Monitoring (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了流式计算系统数据追踪方法、装置、设备以及存储介质,涉及云计算技术领域。该方法的一具体实施方式包括:对进入流式计算系统的数据进行标识,生成所述数据的追踪标识符;在所述数据被流式计算系统中的计算节点处理完成后,持久化存储所述数据的记录信息,其中,所述记录信息包括所述数据的追踪标识符和所述数据的当前处理状态信息,其中,所述数据的检查点的存储状态和所述数据的记录信息的存储状态具有一致性,从而提高了评判数据丢失情况的准确性。
Description
技术领域
本申请涉及数据处理技术领域,具体涉及云计算技术领域,尤其涉及一种流式计算系统数据追踪方法、装置、设备以及存储介质。
背景技术
流式计算技术是指对持续产生的数据流进行实时的处理,相比批处理计算,流式计算的时效性更高。流式计算系统与其他数据传输系统对接,接收输入数据并在经过一系列处理后将数据输出到指定系统中。数据在流式计算系统中传输和处理时,会由于某些原因(也许是由于系统bug或者底层存储系统非预期出错导致的)造成非预期的数据丢失。
目前开源的流式计算系统主要是Apache Flink,Flink集群运营维护过程中,很难监控作业的运行情况。现有技术在使用Flink系统时,通过加入Heartbeat机制来检查是否存在数据丢失,并大致估算数据丢失的程度。但是,现有技术对数据丢失情况的评判并不准确。例如,当发现Heartbeat数据丢失时,真实数据可能没有发生丢失;或者当真实数据丢失时,Heartbeat数据没有丢失故而无法发现。同时,当发现Heartbeat数据丢失时,只能知道系统存在非预期的数据丢失情况,但是根本无法定位丢失了哪些数据,在哪个节点发生了数据丢失。另外,现有技术也不能获知每条数据当前在哪个节点处理以及该数据的最新处理状态。
发明内容
本申请的实施例提供了一种流式计算系统数据追踪方法、装置、设备以及存储介质。
第一方面,本申请的实施例提供了一种流式计算系统数据追踪方法,包括:对进入流式计算系统的数据进行标识,生成所述数据的追踪标识符;在所述数据被流式计算系统中的计算节点处理完成后,持久化存储所述数据的记录信息,其中,所述记录信息包括所述数据的追踪标识符和所述数据的当前处理状态信息,其中,所述数据的检查点的存储状态和所述数据的记录信息的存储状态具有一致性。
第二方面,本申请的实施例提供了一种流式计算系统数据追踪装置,包括:标识模块,被配置成对进入流式计算系统的数据进行标识,生成所述数据的追踪标识符;持久化存储模块,被配置成在所述数据被流式计算系统中的计算节点处理完成后,持久化存储所述数据的记录信息,其中,所述记录信息包括所述数据的追踪标识符和所述数据的当前处理状态信息,其中,所述数据的检查点的存储状态和所述数据的记录信息的存储状态具有一致性。
第三方面,本申请的实施例提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如第一方面中任一实现方式描述的方法。
第四方面,本申请实施例提出了一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行如第一方面中任一实现方式描述的方法。
本申请实施例提供的流式计算系统数据追踪方法、装置、设备以及存储介质,首先对进入流式计算系统的数据进行标识,生成所述数据的追踪标识符;之后在所述数据被流式计算系统中的计算节点处理完成后,持久化存储所述数据的记录信息,其中,所述记录信息包括所述数据的追踪标识符和所述数据的当前处理状态信息,其中,所述数据的检查点的存储状态和所述数据的记录信息的存储状态具有一致性,从而提高了评判数据丢失情况的准确性。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显。附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是本申请可以应用于其中的示例性系统架构;
图2是根据本申请的流式计算系统数据追踪方法的一个实施例的示意图;
图3是根据本申请的对处于分裂状态数据进行追踪的方法的一个实施例的示意图;
图4是根据本申请的流式计算系统数据追踪方法的一个应用场景示意图
图5是根据本申请的流式计算系统数据追踪装置的一个实施例的示意图
图6是用来实现本申请实施例的流式计算系统数据追踪方法的电子设备的框图;
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1示出了可以应用本申请的流式计算系统数据追踪方法或流式计算系统数据追踪装置的实施例的示例性系统架构100。
如图1所示,系统架构100中可以包括存储设备101、网络102和服务器103。网络102用以在存储设备101和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
存储设备101可以通过网络102与服务器103交互。存储设备101中可以提供原始数据流,包括但不限于数据库、用户终端等等。
服务器103可以提供各种服务,例如服务器103可以对从存储设备101获取到的原始数据流进行流式计算、数据追踪等处理,生成处理结果(例如存储数据的记录信息)。
需要说明的是,服务器103可以是硬件,也可以是软件。当服务器103为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务("Virtual Private Server",或简称"VPS")中,存在的管理难度大,业务扩展性弱的缺陷。当服务器103为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
需要说明的是,本申请实施例所提供的流式计算系统数据追踪方法一般由服务器103执行,相应地,流式计算系统数据追踪装置一般设置于服务器103中。
应该理解,图1中的存储设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的存储设备、网络和服务器。
继续参考图2,其示出了根据本申请的流式计算系统数据追踪方法的一个实施例的流程200。该流式计算系统数据追踪方法包括以下步骤:
步骤201,对进入流式计算系统的数据进行标识,生成数据的追踪标识符。
在本实例中,流式计算系统数据追踪方法的执行主体(例如图1所示的服务器103)可以对进入流式计算系统的数据进行标识。当数据从流式计算系统外部输入时,前述执行主体可以生成该数据的追踪标识符。每一个数据的追踪标识符都是唯一的。作为一个优选的实施例,数据的追踪标识符可以表征该数据进入流式计算系统的顺序。例如,若某一数据是第100个从流式计算系统的第一数据输入端进入到流式计算系统,可以将该数据的追踪标识符设计为importer_1_100。
步骤202,在数据被流式计算系统中的计算节点处理完成后,持久化存储数据的记录信息。
在本实施例中,上述执行主体可以持久化存储数据的记录信息。其中,数据的记录信息包括数据的追踪标识符和数据的当前处理状态信息。在这里,数据的检查点(checkpoint)的存储状态和数据的记录信息的存储状态具有一致性。在流式系统中,对数据自身的存储通常通过记录数据的检查点来实现。在本实施例中,数据自身和数据的记录信息作为一个事务被持久化存储,两者具有一致性,即同时存储成功或同时存储失败。避免记录了被处理数据的检查点,但是被处理数据的处理状态信息却没被记录,造成数据的状态信息缺失;或者记录了被处理数据的处理状态信息,但是数据的检查点却没有记录成功,导致记录的处理状态信息不符合数据实际处理情况。
在流式计算系统中,计算节点处理完成的数据需要持久化到存储系统,以确保该数据在未被下游计算节点处理完成前不会丢失。在存储数据本身时,也需要同时存储数据的当前处理状态信息。优选地,数据的当前处理状态信息包括当前处理该数据的计算节点信息以及该数据的当前状态。示例性地,计算节点信息包括该计算节点的ID等。
在本实施例中,计算节点可以在本地记录数据的追踪标识符和数据的当前处理状态信息,也可以将数据的追踪标识符和数据的当前处理状态信息记录至外部存储系统,例如存入checkpoint机制中的外部分布式存储系统HBase。优选地,数据的记录信息与落盘的checkpoint数据分离存储,互不影响。
与现有技术相比,本实施例在流式计算系统中每个落盘节点同步记录数据的处理状态,真正实现了对每条数据的追踪。通过检查数据的处理状态,可以十分准确的发现是否存在数据丢失情况,从而提高了评判数据丢失情况的准确性。
在本实施例中,在记录数据的当前处理状态信息时,会保存当前数据处理节点信息。当检查出该数据不符合预期时,可根据记录的计算节点信息迅速定位,缩小问题排查范围。
继续参考图3,其示出了根据本申请的对处于分裂状态数据进行追踪的方法的一个实施例的示意图。包括如下步骤:
步骤301,根据多个下游计算节点,数据被分裂成多个新数据。
在本实施例中,进入流式计算系统中的数据在某个计算节点按照1:N下发给下游,其中N为大于等于2的正整数。示例性地,该数据被分裂成N个新数据,每个新数据分配到下一个计算节点处理。
步骤302,对多个新数据中的每个新数据进行标识,生成新数据的追踪标识符。
在本实施例中,上述执行主体可以对步骤301中新生成的数据进行标识,生成新数据的追踪标识符。每一个新数据的追踪标识符都是唯一的。作为一个优选的实施例,可以采用简便的ID生成方法设置每个新数据的追踪标识符,例如追踪标识符为importer_1_100的数据按照1:3下发给3个下游计算节点,新生成3个新数据的追踪标识符可以设置为importer_1_100#1,importer_1_100#2,importer_1_100#3。
步骤303,持久化存储新数据的追踪标识符以及新数据的当前状态信息。
在本实施例中,上述执行主体可以持久化存储新数据的追踪标识符以及新数据的当前状态信息。优选地,新数据的当前状态信息包括最新处理该新数据的计算节点信息以及该数据的状态信息。示例性地,每个新数据在进入下游计算节点之前,将新数据的状态信息记录为输入。在这里,新数据的追踪标识符的存储状态和新数据的当前处理状态信息的存储状态具有一致性。数据的追踪标识符和数据的当前处理状态信息作为一个事务被持久化存储,两者具有一致性,即同时存储成功或同时存储失败。
为了便于理解,图4示出了根据本申请的流式计算系统数据追踪方法的一个应用场景示意图。如图4所示,数据流先从外部系统输入至流式计算作业系统,再经由数据输入端被传输至计算作业点,由计算作业点对数据进行处理。本领域技术人员可知,流式计算系统中的计算作业点可以按照1:1与下游计算作业点相连,也可以按照1:N(其中,N为大于1的整数)与多个下游计算作业点相连。图4示出了计算作业节点1与计算作业节点2按照1:1的方式相连。在本实施例中,若数据被计算作业节点1处理完成后,按照1:1下发给下游的计算作业节点2,记录该数据的当前状态为输入。在本实施例中,若数据计算作业节点1处理完成后,在计算作业节点2处被丢弃,记录该数据的当前状态为丢弃。在本实施例中,若数据被计算作业节点2处理完成后,经由数据输出端输出至流式计算系统之外,则记录该数据的当前状态为输出。
在本实施例中,通过设置输入、丢弃、输出三种数据的当前状态,丰富了数据的状态信息,为进一步分析计算作业特征并未进一步优化计算作业提供基础。
在本申请实施例的另一种应用场景中,数据被某一个计算作业节点处理完成后,按照1:N(其中,N为大于1的整数)下发给多个下游的计算作业节点,记录该数据的当前状态为分裂。示例性地,数据importer_1_100按照1:3下发给3个下游的计算作业节点,数据importer_1_100分裂成3个新的数据,对每个新生成的数据进行标识生成新的追踪标识符,例如3个新生成的数据的追踪标识符分别为:importer_1_100#1,importer_1_100#2,importer_1_100#3。记录新生成的三个数据的当前状态为输入。
在本实施例中,通过设置分裂这种数据的当前状态,进一步丰富了数据的状态信息,进一步为分析计算作业特征以及优化计算作业提供基础。
在一个优选的实施例中,丢弃、分裂、输出三种数据的当前状态为数据状态的终态,即为完成状态,表示该数据已经处理完成。输入这种数据的当前状态是一种中间态,表示该数据尚未处理完成。数据在流式计算系统中每个计算作业节点上流动而未处理完成时,该数据的当前状态都为输入状态。作为一个优选的实施例,若数据在流式计算系统中的计算作业节点上流动而未处理完成时,上述执行主体会更新最新处理该数据的计算作业节点的信息。
在本实施例中,通过检查数据的当前状态信息,若存在输入状态的数据,则说明流式计算系统中存在未完成的数据,表明该数据可能丢失。
在一个优选的实施例中,根据设置的生存时间确定数据的记录信息的存储时间。如图4所示,在持久化存储系统初始化时,通过指定数据的生存时间来确定记录信息的存储时间。在对数据进行持久化存储操作时,每条数据都会含有该数据的写入时间戳信息。持久化存储系统会检查数据的存储时间是否已经达到了设置的生成时间,若该数据的存储时间已经达到了生成时间,那么该条数据会被持久化存储系统删除。
在本实施例中,由于输入到流式计算系统的每条数据都会存储其记录信息,计算作业存储的数据量级可能很大,例如,一个小型作业的记录信息在一天内的数据存储量级可能达百G字节。通过设置预定的生成时间,可以实现对数据存储时间的控制。
进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种流式计算系统数据追踪装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的流式计算系统数据追踪装置500包括:标识模块501,被配置成对进入流式计算系统的数据进行标识,生成所述数据的追踪标识符;持久化存储模块502,被配置成在所述数据被流式计算系统中的计算节点处理完成后,持久化存储所述数据的记录信息,其中,所述记录信息包括所述数据的追踪标识符和所述数据的当前处理状态信息,其中,所述数据的检查点的存储状态和所述数据的记录信息的存储状态具有一致性。
在本实施例中,流式计算系统数据追踪装置500中:标识模块501和持久化存储模块502的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201-202的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,数据的当前处理状态信息包括:当前处理所述数据的计算节点信息和所述数据的当前状态。
在本实施例的一些可选的实现方式中,持久化存储模块进一步被配置成:若所述数据被输出至流式计算系统的外部,则数据的当前状态为输出。
在本实施例的一些可选的实现方式中,持久化存储模块进一步被配置成:若数据被丢弃,数据的当前状态为丢弃。
在本实施例的一些可选的实现方式中,持久化存储模块进一步被配置成:若数据将被下发给流式计算系统中的单个下游计算节点处理,则数据的当前状态为输入。
在本实施例的一些可选的实现方式中,持久化存储模块进一步被配置成:若数据将被分发给流式计算系统中的多个下游计算节点处理,则数据的当前状态为分裂。
在本实施例的一些可选的实现方式中,持久化存储模块还包括数据分裂模块、第二标识模块和第二持久化存储模块,其中,数据分裂模块被配置成根据多个下游计算节点,数据被分裂成多个新数据;第二标识模块被配置成对所述多个新数据中的每个新数据进行标识,生成新数据的追踪标识符;第二持久化存储模块被配置成持久化存储新数据的追踪标识符以及新数据的当前处理状态信息。
在本实施例的一些可选的实现方式中,新数据的当前状态信息包括:当前处理新数据的计算节点信息和新数据的当前状态。
在本实施例的一些可选的实现方式中,数据的当前状态包括:输入、丢弃、分裂、输出。
在本实施例的一些可选的实现方式中,存储时间控制模块,被配置成根据设置的生存时间确定数据的记录信息的存储时间。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图6所示,是根据本申请实施例的流式计算系统数据追踪的方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图6所示,该电子设备包括:一个或多个处理器601、存储器602,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图6中以一个处理器601为例。
存储器602即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的流式计算系统数据追踪的方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的流式计算系统数据追踪的方法。
存储器602作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的流式计算系统数据追踪的方法对应的程序指令/模块(例如,附图5所示的标识模块501、持久化存储模块502)。处理器601通过运行存储在存储器602中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的流式计算系统数据追踪方法。
存储器602可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据流式计算系统数据追踪方法的电子设备的使用所创建的数据等。此外,存储器602可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器602可选包括相对于处理器601远程设置的存储器,这些远程存储器可以通过网络连接至流式计算系统数据追踪方法的电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
流式计算系统数据追踪方法的电子设备还可以包括:输入装置603和输出装置604。处理器601、存储器602、输入装置603和输出装置604可以通过总线或者其他方式连接,图6中以通过总线连接为例。
输入装置603可接收输入的数字或字符信息,以及产生与流式计算系统数据追踪方法的电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置604可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,首先对进入流式计算系统的数据进行标识,生成所述数据的追踪标识符;之后在所述数据被流式计算系统中的计算节点处理完成后,持久化存储所述数据的记录信息,其中,所述记录信息包括所述数据的追踪标识符和所述数据的当前处理状态信息,其中,所述数据的追踪标识符的存储状态和所述数据的当前处理状态信息的存储状态具有一致性,从而提高了评判数据丢失情况的准确性。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (22)
1.一种流式计算系统数据追踪方法,包括:
对进入流式计算系统的数据进行标识,生成所述数据的追踪标识符;
在所述数据被流式计算系统中的计算节点处理完成后,持久化存储所述数据的记录信息,其中,所述记录信息包括所述数据的追踪标识符和所述数据的当前处理状态信息,其中,所述数据的检查点的存储状态和所述数据的记录信息的存储状态具有一致性。
2.根据权利要求1所述的方法,所述数据的当前处理状态信息包括:
当前处理所述数据的计算节点信息和所述数据的当前状态。
3.根据权利要求2所述的方法,包括:
若所述数据被输出至流式计算系统的外部,则所述数据的当前状态为输出。
4.根据权利要求1所述的方法,包括:
若所述数据被丢弃,所述数据的当前状态为丢弃。
5.根据权利要求1所述的方法,包括:
若所述数据将被下发给流式计算系统中的单个下游计算节点处理,则所述数据的当前状态为输入。
6.根据权利要求1所述的方法,包括:
若所述数据将被分发给流式计算系统中的多个下游计算节点处理,则所述数据的当前状态为分裂。
7.根据权利要求6所述的方法,还包括:
根据所述多个下游计算节点,所述数据被分裂成多个新数据;
对所述多个新数据中的每个新数据进行标识,生成新数据的追踪标识符;
持久化存储所述新数据的追踪标识符以及所述新数据的当前状态信息。
8.根据权利要求7所述的方法,所述新数据的当前状态信息包括:
当前处理所述新数据的计算节点信息和所述新数据的当前状态。
9.根据权利要求2或8所述的方法,所述数据的当前状态包括:
输入、丢弃、分裂、输出。
10.根据权利要求1所述的方法,包括:
根据设置的生存时间确定所述数据的记录信息的存储时间。
11.一种流式计算系统数据追踪装置,包括:
标识模块,被配置成对进入流式计算系统的数据进行标识,生成所述数据的追踪标识符;
持久化存储模块,被配置成在所述数据被流式计算系统中的计算节点处理完成后,持久化存储所述数据的记录信息,其中,所述记录信息包括所述数据的追踪标识符和所述数据的当前处理状态信息,其中,所述数据的检查点的存储状态和所述数据的记录信息的存储状态具有一致性。
12.根据权利要求11所述的装置,所述数据的当前处理状态信息包括:
当前处理所述数据的计算节点信息和所述数据的当前状态。
13.根据权利要求11所述的装置,所述持久化存储模块进一步被配置成:
若所述数据被输出至流式计算系统的外部,则所述数据的当前状态为输出。
14.根据权利要求11所述的装置,所述持久化存储模块进一步被配置成:
若所述数据被丢弃,所述数据的当前状态为丢弃。
15.根据权利要求11所述的装置,所述持久化存储模块进一步被配置成:
若所述数据将被下发给流式计算系统中的单个下游计算节点处理,则所述数据的当前状态为输入。
16.根据权利要求11所述的装置,所述持久化存储模块进一步被配置成:
若所述数据将被分发给流式计算系统中的多个下游计算节点处理,则所述数据的当前状态为分裂。
17.根据权利要求16所述的装置,所述持久化存储模块还包括数据分裂模块、第二标识模块和第二持久化存储模块,其中,所述数据分裂模块被配置成根据所述多个下游计算节点,所述数据被分裂成多个新数据;所述第二标识模块被配置成对所述多个新数据中的每个新数据进行标识,生成新数据的追踪标识符;所述第二持久化存储模块被配置成持久化存储所述新数据的追踪标识符以及所述新数据的当前处理状态信息。
18.根据权利要求17所述的装置,所述新数据的当前状态信息包括:
当前处理所述新数据的计算节点信息和所述新数据的当前状态。
19.根据权利要求12或18所述的装置,所述数据的当前状态包括:
输入、丢弃、分裂、输出。
20.根据权利要求11所述的装置,还包括:
存储时间控制模块,被配置成根据设置的生存时间确定所述数据的记录信息的存储时间。
21.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-10中任一项所述的方法。
22.一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010789729.7A CN111930748B (zh) | 2020-08-07 | 2020-08-07 | 流式计算系统数据追踪方法、装置、设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010789729.7A CN111930748B (zh) | 2020-08-07 | 2020-08-07 | 流式计算系统数据追踪方法、装置、设备以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111930748A true CN111930748A (zh) | 2020-11-13 |
CN111930748B CN111930748B (zh) | 2023-08-08 |
Family
ID=73307961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010789729.7A Active CN111930748B (zh) | 2020-08-07 | 2020-08-07 | 流式计算系统数据追踪方法、装置、设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111930748B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106249A (zh) * | 2013-01-08 | 2013-05-15 | 华中科技大学 | 一种基于Cassandra的数据并行处理系统 |
CN106104525A (zh) * | 2014-03-31 | 2016-11-09 | 华为技术有限公司 | 事件处理系统 |
CN106874133A (zh) * | 2017-01-17 | 2017-06-20 | 北京百度网讯科技有限公司 | 流式计算系统中计算节点的故障处理 |
CN107844388A (zh) * | 2012-11-26 | 2018-03-27 | 亚马逊科技公司 | 从备份系统流式恢复数据库 |
CN108287854A (zh) * | 2017-01-10 | 2018-07-17 | 网宿科技股份有限公司 | 一种流计算中数据持久化的方法和系统 |
CN109145023A (zh) * | 2018-08-30 | 2019-01-04 | 北京百度网讯科技有限公司 | 用于处理数据的方法和装置 |
US20190034221A1 (en) * | 2017-07-30 | 2019-01-31 | International Business Machines Corporation | Persisting distributed data sets into eventually consistent storage systems |
CN110569144A (zh) * | 2019-08-09 | 2019-12-13 | 苏宁金融科技(南京)有限公司 | 基于storm流式计算的数据处理方法和数据处理系统 |
CN110716959A (zh) * | 2019-10-09 | 2020-01-21 | 北京百度网讯科技有限公司 | 流式数据处理方法、装置、电子设备及存储介质 |
CN110908883A (zh) * | 2019-11-15 | 2020-03-24 | 江苏满运软件科技有限公司 | 用户画像数据监控方法、系统、设备及存储介质 |
CN111211993A (zh) * | 2018-11-21 | 2020-05-29 | 百度在线网络技术(北京)有限公司 | 流式计算的增量持久化方法及其装置 |
-
2020
- 2020-08-07 CN CN202010789729.7A patent/CN111930748B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107844388A (zh) * | 2012-11-26 | 2018-03-27 | 亚马逊科技公司 | 从备份系统流式恢复数据库 |
CN103106249A (zh) * | 2013-01-08 | 2013-05-15 | 华中科技大学 | 一种基于Cassandra的数据并行处理系统 |
CN106104525A (zh) * | 2014-03-31 | 2016-11-09 | 华为技术有限公司 | 事件处理系统 |
CN108287854A (zh) * | 2017-01-10 | 2018-07-17 | 网宿科技股份有限公司 | 一种流计算中数据持久化的方法和系统 |
CN106874133A (zh) * | 2017-01-17 | 2017-06-20 | 北京百度网讯科技有限公司 | 流式计算系统中计算节点的故障处理 |
US20180205776A1 (en) * | 2017-01-17 | 2018-07-19 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Fault handling for computer nodes in stream computing system |
US20190034221A1 (en) * | 2017-07-30 | 2019-01-31 | International Business Machines Corporation | Persisting distributed data sets into eventually consistent storage systems |
CN109145023A (zh) * | 2018-08-30 | 2019-01-04 | 北京百度网讯科技有限公司 | 用于处理数据的方法和装置 |
CN111211993A (zh) * | 2018-11-21 | 2020-05-29 | 百度在线网络技术(北京)有限公司 | 流式计算的增量持久化方法及其装置 |
CN110569144A (zh) * | 2019-08-09 | 2019-12-13 | 苏宁金融科技(南京)有限公司 | 基于storm流式计算的数据处理方法和数据处理系统 |
CN110716959A (zh) * | 2019-10-09 | 2020-01-21 | 北京百度网讯科技有限公司 | 流式数据处理方法、装置、电子设备及存储介质 |
CN110908883A (zh) * | 2019-11-15 | 2020-03-24 | 江苏满运软件科技有限公司 | 用户画像数据监控方法、系统、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
许丹亚;王晶;王利;张伟功;: "基于Spark的大数据访存行为跨层分析工具", 计算机研究与发展, no. 06 * |
Also Published As
Publication number | Publication date |
---|---|
CN111930748B (zh) | 2023-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170277753A1 (en) | Checkpointing in Distributed Streaming Platform for Real-Time Applications | |
EP3859533A2 (en) | Method and apparatus for testing map service, electronic device, storage medium and computer program product | |
US9674249B1 (en) | Distributed streaming platform for real-time applications | |
CN112486820B (zh) | 用于测试代码的方法、装置、设备以及存储介质 | |
US11307948B2 (en) | Fault injection method and apparatus, electronic device and storage medium | |
US10089169B2 (en) | Identifying solutions to application execution problems in distributed computing environments | |
CN111080243A (zh) | 业务处理的方法、装置、系统、电子设备及存储介质 | |
CN112527899A (zh) | 数据同步的方法、装置、设备以及存储介质 | |
CN111639027B (zh) | 一种测试方法、装置及电子设备 | |
CN111582375A (zh) | 数据增强策略搜索方法、装置、设备以及存储介质 | |
CN111309343A (zh) | 一种开发部署方法及装置 | |
CN112540914A (zh) | 单元测试的执行方法、执行装置、服务器和存储介质 | |
CN113238943A (zh) | 持续集成测试的方法和装置 | |
CN111461343A (zh) | 模型参数更新方法及其相关设备 | |
CN113051043A (zh) | 微服务异常补偿方法和装置 | |
CN112395333A (zh) | 用于排查数据异常的方法、装置、电子设备及存储介质 | |
CN111611767A (zh) | 验证方法和装置 | |
CN111241396A (zh) | 信息推送的方法和装置、电子设备、存储介质 | |
US20150160942A1 (en) | Data object with common statement series | |
CN112015995A (zh) | 数据分析的方法、装置、设备以及存储介质 | |
CN111984545A (zh) | 检测单元测试稳定性的方法、装置、电子设备及存储介质 | |
CN110673994A (zh) | 数据库测试方法及装置 | |
CN111930748A (zh) | 流式计算系统数据追踪方法、装置、设备以及存储介质 | |
CN111597026B (zh) | 用于获取信息的方法及装置 | |
CN111694686B (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 |