Apache Spark Streaming、Kafka 与 HarmonicIO:面向企业与科学计算的性能基准及架构比较
分布式、并行与集群计算
2019-12-20 v4
摘要
本文给出流处理吞吐量的基准测试,比较 Apache Spark Streaming(基于文件、TCP 套接字和 Kafka 的流集成)与原型 P2P 流处理框架 HarmonicIO。测量了多种流处理负载下的最大吞吐量,具体而言,包括大消息尺寸(高达 10MB)与高 CPU 负载——这比企业场景更典型于科学计算用例(如显微成像)。在这些流源下、不同负载中对性能特征的详细探究揭示了性能权衡的相互作用,揭示了各框架与流源集成良好性能的边界。我们在每种情况下与理论界进行比较。基于这些结果,我们建议对于给定的负载哪些框架与流源可能提供良好性能。宽泛地说,Spark 丰富特性集的优势是以对消息尺寸(尤其)的敏感性为代价的——常见流源集成在 1MB–10MB 范围内表现可能不佳。HarmonicIO 的简洁性在该区域提供了更稳健的性能,尤其对于原始 CPU 利用率。
引用
@article{arxiv.1807.07724,
title = {Apache Spark Streaming, Kafka and HarmonicIO: A Performance Benchmark and Architecture Comparison for Enterprise and Scientific Computing},
author = {Ben Blamey and Andreas Hellander and Salman Toor},
journal= {arXiv preprint arXiv:1807.07724},
year = {2019}
}