批处理与事件流区别?


随着数据成为现代企业中越来越重要的一部分,组织经常发现自己需要处理大量数据。处理数据的两种常见方法是批处理和事件流。

批处理

  • 批处理涉及通常在预定的时间间隔(例如每天或每周)内一次处理数据。
  • 常用于不需要实时处理的任务和可以容忍一定延迟的任务。
  • 如果您有一组固定的要处理的输入数据,那就太好了。
  • 批处理的示例是Apache Spark

事件流

  • 事件流涉及在数据发生时对其进行处理。事件流是可以(近)实时收集和处理的连续数据流。
  • 通常用于需要实时洞察力的应用程序。这方面的例子可以是欺诈检测或实时推荐。
  • 实时处理数据为组织提供了他们可以立即采取行动和分析的信息,正确地完成这可以为您的企业提供竞争优势。
  • 事件可以是无限数据(连续数据,或永无止境),因此如果您需要实时处理此类信息,那么流式传输可以提供帮助。
  • 流式传输的示例是Apache Kafka

何时使用批处理或事件流?

  • 与往常一样,取决于您的用例。您的数据处理能否容忍一些延迟?那么也许批处理可能更合适。您需要立即处理数据吗?您是否有立即处理信息的优势?那么流媒体事件可能更有意义。
  • 请记住考虑批处理选项和流选项之间的成本。
  • 使用模式来帮助您的下游消费者。请记住,对于流式处理和批处理,您可以在特定阶段应用集成模式。示例是丰富事件/消息,因为它们通过您的流供下游消费者使用。