C++重写Apache Spark可获得高达20倍的性能

2020-09-25 05:31:49

今天,我们宣布在Azure Databricks上预览Photon Powered Delta Engine--快速、简单、协作的分析和人工智能服务。Photon是用C++从头开始构建的,与Spark API完全兼容,它是一个矢量化查询引擎,它利用现代CPU架构和Delta Lake将Apache Spark 3.0的性能提高高达20倍。随着世界各地的组织接受数据驱动的决策,投资于能够快速分析海量和类型数据的平台变得势在必行。然而,这一直是一个挑战。虽然存储和网络性能提高了10倍,但CPU处理速度仅略微提高。这就引出了一个问题,如果CPU已经成为瓶颈,我们如何才能达到下一级的性能呢?Photon的答案在于CPU处理在数据级和指令级都有更大的并行性。Photon Powered Delta Engine是一个100%与Apache Spark兼容的矢量化查询引擎,旨在利用现代CPU架构实现极快的数据并行处理。该引擎使用C++从头开始编写,以利用现代硬件并利用数据级和CPU指令级并行性,优化了文本处理和正则表达式,以实现对真实数据和应用程序的快速性能。它与Apache Spark™API完全兼容,确保工作负载在不更改代码的情况下无缝运行。与Apache Spark相比,Azure Databricks已经非常快了,现在,Photon Powered Delta Engine在Azure上为现代分析和AI工作负载提供了更快的性能。我们运行了30TB TPC Benchmark DS(TPC-DS),行业标准基准测试来测量处理速度,发现Photon Powered Delta引擎比Spark 2.4快20倍。