聚焦 OLAP 性能提升,火山引擎 ByteHouse 性能挑战赛圆满落幕
更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群
日前,ByteHouse 举办性能挑战赛活动,吸引来自等来自金融、泛互、消费、能源等众多行业开发者报名参与,共同探索 OLAP 性能提升和场景应用。
作为一款 OLAP 引擎,伴随字节跳动各业务的发展,ByteHouse 经过数百个应用场景和数万用户锤炼,在 2022 年 3 月,部署规模已超过 1 万 8000 台,最大的集群规模在 2400 余个节点,管理总数据量超过 700PB,并逐步在外部金融、泛互等场景应用和推广。为了更好支持字节内外部大规模数据和复杂场景应用,性能一直以来是 ByteHouse 重点打磨的产品基本功。
在之前发布的《云原生数据仓库 ByteHouse 性能白皮书》中,ByteHouse 基于 SSB 100G、TPC-H 100G、TPC-DS 100G 数据集进行性能测试,在查询效率方面的显著成果。以 TPC-H 数据集举例,在相同硬件和软件环境下, ByteHouse 查询效率高于本次基准测试产品几十倍。
此次 ByteHouse 性能挑战赛,邀请参赛者基于脚本和环境,对性能进行复现和挑战,进一步探索 OLAP 性能突破。
“无论在优化还是执行上,ByteHouse 性能表现都很惊艳。ByteHouse 用全局字典改变了建表逻辑,我试着把建表语句调整到标准 benchmark 的建表语句,除了对 ssb 有影响外,其他影响不大,ByteHouse 性能还是很强悍的”,来自某数据库产品开发者这样介绍到。
不仅仅聚焦在技术层面的性能调优,更多来自泛互联网、能源等行业的开发者,也在探索将 ByteHouse 高性能特性与自身实际应用场景结合。
来自某房产 APP 的开发者提到,“我们公司的使用场景包括两个方面,一个是管理人员看指标数据,如果发现指标有问题,要下钻到明细,找出指标异常原因,并根据明细数据情况,再采取进一步管理动作;另一个是业务场景中的指标明细大规模查询和下载。以上场景,要求 OLAP 引擎同时具备明细数据查询、数据聚合能力。之前,我们也调研了 Apache Kylin、ClickHouse 等多款产品,在明细数据和聚合查询等能力上不太满足需求,了解到物化视图相关优化,因而关注到 ByteHouse。”
基于在水利工程领域的实践,某位开发者也提出 OLAP 的性能优化思路,“在水利领域,对于大量的监测数据其实没有太复杂的逻辑运算,但是对动态取极值有着很多应用场景,这种需求没办法做预计算,可以对数据模型进行设计,设置出极值字段入库时进行计算落地,这种方案可以应用在 OLAP 性能优化上。”
经过为期一个月的赛程,参赛者们基于 ByteHouse 的脚本和环境,交出了一份又一份性能挑战成果,也对 ByteHouse 性能表示认可。据介绍,在复杂查询上,ByteHouse 解决了 ClickHouse 缺少优化器支持的问题,从 RBO(基于规则的优化能力)、CBO(基于代价的优化能力)、分布式计划生成方面推出了自研优化器,能够准确的计算出效率最大化执行路径,大幅度降低用户查询时间。除此之外,ByteHouse 还从 Exchange、Runtime Filter 以及并行化重构等方向进行了优化。在宽表查询上,ByteHouse 主要通过全局字典、Zero copy 以及 UncompressedCache 来进行性能提升。
卓越的性能,能够帮助企业及时处理复杂的分析查询,提高数据获取速度,减少数据分析的时间和资源消耗,快速、准确产出分析结果,助力企业人员实时掌握业务状况,并做出及时决策。结合字节跳动内部业务实践与外部落地应用,ByteHouse 将继续进行性能优化,为企业决策提效。
点击跳转火山引擎ByteHouse了解更多
版权声明: 本文为 InfoQ 作者【字节跳动数据平台】的原创文章。
原文链接:【http://xie.infoq.cn/article/7793b0bb62f20e610047fc653】。文章转载请联系作者。
评论