Architecture 独立于订单的数据处理是否有合适的名称?

Architecture 独立于订单的数据处理是否有合适的名称?,architecture,time-series,stream-processing,Architecture,Time Series,Stream Processing,如果以不同顺序处理数据不会改变最终结果/状态,那么如何调用(数据处理)系统 例如,它可以重新处理旧数据并得出相同的结果,而无需按照它们得出的确切顺序进行处理 我想到了“顺序/时间独立”,但看看行业对此是否有一个名称。一般来说,计算过程的结果确实取决于处理步骤(或指令)的执行顺序,这仅仅是因为处理步骤通常取决于前一步的结果(请参阅) 现在,计算系统可以尝试自动找到这些依赖项,并以不同的顺序安排独立的处理步骤,这可以通过以下概念或在运行时发生,例如。我知道的两种(非常古老的)方法是and 一种完全不

如果以不同顺序处理数据不会改变最终结果/状态,那么如何调用(数据处理)系统

例如,它可以重新处理旧数据并得出相同的结果,而无需按照它们得出的确切顺序进行处理


我想到了“顺序/时间独立”,但看看行业对此是否有一个名称。

一般来说,计算过程的结果确实取决于处理步骤(或指令)的执行顺序,这仅仅是因为处理步骤通常取决于前一步的结果(请参阅)

现在,计算系统可以尝试自动找到这些依赖项,并以不同的顺序安排独立的处理步骤,这可以通过以下概念或在运行时发生,例如。我知道的两种(非常古老的)方法是and


一种完全不同的方法是a,但它更适合于某些特殊应用,而不是通用系统。

对于事件流处理(至少在分布式系统的上下文中),它可以简单地称为“无序数据处理”,如Google Research的数据流模型论文的标题所示:

请注意,这是指,与Gerd的答案不同

根据您可能面临的问题,可以使用数据流模型的现有实现来解决这个问题。您可能还对该项目感兴趣,该项目是一个深受数据流模型启发的编程模型,可以使用一些底层处理引擎来执行实际计算

使用此模型的现有处理系统包括:

  • (由Apache梁支撑)
  • (由Apache梁支撑)

有时,Flink社区使用术语“事件时间处理”来指流式计算的结果(几乎)是确定性的,而不管事件处理的顺序如何。

令人尴尬的是,并行出现在脑海中;如果你浏览它的wiki页面,它有大量的例子和相关概念。很好的一点——这个术语在其他“类似数据流”的系统中使用,比如Google Cloud Dataflow本身、Beam、Kafka Streams和其他系统(尽管我在回答中没有提到这一点)。