首页
/ Apache Gluten 1.4.0版本发布:多引擎统一加速框架的重大升级

Apache Gluten 1.4.0版本发布:多引擎统一加速框架的重大升级

2025-07-02 11:03:31作者:平淮齐Percy

Apache Gluten项目团队近日正式发布了1.4.0版本,这是这个多引擎统一加速框架的一个重要里程碑。作为Apache孵化器项目,Gluten旨在为大数据处理提供统一的跨引擎加速方案,通过向量化执行引擎显著提升Spark等计算框架的性能表现。

核心架构与技术亮点

Gluten 1.4.0版本在架构层面进行了多项重要改进。该版本继续强化了其作为中间层的核心定位,能够无缝对接不同后端执行引擎(如Velox和ClickHouse)与前端计算框架(如Spark)。这种解耦设计使得用户可以在不修改现有Spark应用代码的情况下,获得接近原生C++的执行性能。

在Spark版本支持方面,1.4.0版本全面兼容Spark 3.2.2、3.3.1、3.4.4和3.5.2,其中特别将3.4.x支持升级到了3.4.4版本。这种多版本兼容策略确保了企业用户可以在不同Spark环境中平滑迁移。

性能优化与功能增强

本次版本在查询性能方面做出了显著提升。其中最重要的改进包括:

  1. Join操作优化:实现了BNLJ(Block Nested Loop Join)全外连接支持,大幅提升了复杂连接操作的执行效率。测试表明,在某些TPC-H查询场景下,性能提升可达30%以上。

  2. Shuffle增强:对RSS(Remote Shuffle Service)ShuffleReader进行了深度优化,解决了多个关键性问题。新版本在shuffle阶段的稳定性和吞吐量都有明显改善,特别是在大规模数据集场景下。

  3. 动态资源调整:创新性地引入了Stage级别资源动态调整功能,系统现在可以根据查询执行情况智能调整各阶段的资源分配,显著提高了集群资源利用率。

  4. 内存管理改进:修复了多个未跟踪内存导致的OOM问题,增强了系统的稳定性。新的内存管理机制能够更精确地追踪和管控内存使用。

新增功能与扩展支持

1.4.0版本丰富了函数支持矩阵,新增了多个常用Spark函数的原生实现:

  • 日期处理函数:date_format、make_date
  • JSON处理:from_json、json_array_length
  • 字符串操作:btrim
  • 复杂类型处理:map_filter、map_concat、array_append

在数据湖支持方面,新版本加强了对Iceberg和Hudi的测试覆盖,为现代数据湖架构提供了更好的支持。特别是通过优化Parquet文件的读取逻辑,显著提升了在加密Parquet文件场景下的回退机制可靠性。

开发者体验与工具链改进

1.4.0版本带来了多项开发者友好特性:

  1. 查询追踪:新增的Query Trace功能让开发者能够深入分析查询执行过程,快速定位性能瓶颈。

  2. 资格验证工具:新引入的Qualification Tool帮助用户评估工作负载是否适合使用Gluten加速,降低了采用门槛。

  3. Docker支持:更新了构建环境,提供基于CentOS 8的JDK 11和JDK 17镜像,简化了开发环境配置。

  4. 文档完善:大幅更新了技术文档,新增了Java/Scala调试指南、函数支持矩阵等实用内容。

生态系统整合

在生态系统整合方面,1.4.0版本将Celeborn升级到0.5.4,Uniffle升级到0.9.2,提供了更稳定可靠的shuffle服务。同时,Velox引擎代码库更新至2025年5月12日版本,获得了最新的性能优化和功能增强。

总结

Apache Gluten 1.4.0版本通过全面的性能优化、功能增强和稳定性提升,进一步巩固了其作为大数据加速中间件的领先地位。无论是对于希望提升现有Spark工作负载性能的企业用户,还是对于寻求统一加速方案的平台开发者,这个版本都提供了显著的价值。项目团队持续关注实际生产环境中的需求,通过社区驱动的方式不断推动技术创新,为大数据处理领域注入了新的活力。

登录后查看全文
热门项目推荐
相关项目推荐