Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache kafka kappa架构和lambda架构之间有什么区别_Apache Kafka_Batch Processing_Stream Processing_Lambda Architecture_Bigdata - Fatal编程技术网

Apache kafka kappa架构和lambda架构之间有什么区别

Apache kafka kappa架构和lambda架构之间有什么区别,apache-kafka,batch-processing,stream-processing,lambda-architecture,bigdata,Apache Kafka,Batch Processing,Stream Processing,Lambda Architecture,Bigdata,如果Kappa架构直接对流进行分析,而不是将数据分成两个流,那么在像Kafka这样的messagin系统中,数据存储在哪里?或者可以在数据库中重新计算 单独的批处理层是否比使用流处理引擎重新计算批处理分析更快 “一个非常简单的例子是当算法应用到 实时数据和历史数据是相同的,那么 显然,使用相同的代码库进行处理非常有益 历史和实时数据,从而实现用例 使用Kappa架构”。“现在,用于处理 历史数据和实时数据并不总是相同的 在这种情况下,批处理算法可以优化,因为它 可以访问完整的历史数据集,然后性能

如果Kappa架构直接对流进行分析,而不是将数据分成两个流,那么在像Kafka这样的messagin系统中,数据存储在哪里?或者可以在数据库中重新计算

单独的批处理层是否比使用流处理引擎重新计算批处理分析更快

“一个非常简单的例子是当算法应用到 实时数据和历史数据是相同的,那么 显然,使用相同的代码库进行处理非常有益 历史和实时数据,从而实现用例 使用Kappa架构”。“现在,用于处理 历史数据和实时数据并不总是相同的 在这种情况下,批处理算法可以优化,因为它 可以访问完整的历史数据集,然后性能优于 实时算法的实现。这里,在 Lambda和Kappa成为支持批处理执行的选择 性能优于基于代码的简单性”。“最后,还有更多 复杂的用例,即使是实时和 批处理算法是不同的。例如,机器学习 生成批处理模型需要大量时间的应用程序 以及可实现实时最佳结果的资源 计算并近似更新该模型。在这种情况下 无法合并批处理层和实时层,并且Lambda 必须使用“体系结构”

  • 分批分流层
  • 更高的代码复杂度
  • 使用单独的批次/流提高性能
  • 对于批处理和流处理中的不同算法更好
  • 用数据存储代替数据库进行批量计算更便宜

  • 只有蒸汽处理层
  • 易于维护,复杂度较低,批处理和存储算法单一 溪流
  • 如果从数据库重新计算批处理数据,那么太多的数据将非常昂贵
  • 如果从数据库或从kafka重新计算批处理的数据过多,则处理速度会变慢

您也可以阅读讨论这两个问题的原始文章

引用原始博客文章

“这两种方法之间的效率和资源权衡有点不公平。Lambda体系结构要求始终运行重新处理和实时处理,而我所建议的只是在需要重新处理时运行作业的第二个副本。但是,我的建议需要在输出数据库中临时拥有2倍的存储空间,并且需要一个支持大容量写入的数据库来重新加载。在这两种情况下,再处理的额外负荷很可能是平均值。如果您有许多这样的作业,它们不会一次全部重新处理,因此在一个有几十个这样作业的共享集群上,您可能会为在任何给定时间积极重新处理的少数作业预算额外的容量的百分之几

真正的优势根本不是效率,而是效率 允许人们开发、测试、调试和操作他们的系统 单个处理框架的顶部。因此,在简单性很重要的情况下 重要的是,将此方法视为LAMBDA的替代方案。 建筑。”