文章主题:让快更快, 火山引擎, ByteHouse, ClickHouse
让快更快,火山引擎ByteHouse为ClickHouse提速
2023-08-29 16:56:22 作者:姚立伟
近期,火山引擎数智平台VeDI与DataFun共同举办了一场以“OLAP计算引擎”为核心的直播活动。在活动中,VeDI的产品专家们深入探讨了技术选型、能力分析、性能优化及应用场景等方面的内容,重点介绍了如何利用火山引擎ByteHouse的实时计算能力,对其进行升级改造。
火山引擎ByteHouse,这一实时数据仓库解决方案,源于字节跳动多年的内部技术积累。随着业务场景的日益丰富和数据分析需求的持续增长,如何实现实时数据处理的需求也日益凸显。尤其是在大数据量和高并发的情况下,数据引擎需要具备高度的灵活性。据透露,自2019年以来,字节内部每日新增数据量已达到惊人的100TB。因此,如何在海量数据的基础上,提供高效、灵活的数据处理能力,成为了摆在新一代数据引擎面前的挑战。当前,业界已有如Redis、SparkSQL等开源方案能从不同角度满足这两个需求。然而,这些方案往往需要与多款开源数据库协同工作,这无疑增加了成本。因此,如何选择一款既能满足数据处理需求,又能避免成本无限制扩展的计算引擎,已经成为了字节数据研发团队的首要任务。
点击House因其卓越的性能、强大的灵活性和主要依赖于磁盘的特性,成为了字节跳动内部计算引擎的首选。然而,原始的ClickHouse能力在处理一些特定场景,如 upset 和实时数据更新等方面,存在明显的局限性。
· 单表性能强劲,但多表能力局限,且对标准 SQL 兼容性低。
· 缺乏成熟运维管理工具,运维复杂程度高。
· ClickHouse 为 MPP 架构(存算一体架构),性能强,但横向扩容成本非常高、数据隔离性差。
ByteHouse产品专家在直播中介绍到,“为了解决以上问题,我们主要从4个方向进行优化,让OLAP引擎能力、性能、运维、架构进一步升级。”
首先,我们拥有功能强大的自研表引擎,实现了OLAP引擎能力的提升。ByteHouse弥补了ClickHouse表引擎的不足之处,同时发展出了全新的表引擎家族,其中包括高可用性表引擎、实时数据引擎、唯一性引擎以及位图引擎。以唯一性引擎为例,它成功解决了社区版ReplacingMergeTree在实时更新过程中出现的延迟问题,实现了真正的实时更新“upset”。
点击House在处理多表场景时,性能存在不足,而ByteHouse则通过自主研发的CBO(基于代价的优化器)和RBO(基于规则的优化器),实现了多层嵌套下推、连接子查询下推、连接重排序、Bucket Join以及Runtime Filter等优化功能。这些特性使得TPC-DS的性能达到了99条SQL100%覆盖,极大地提升了多表场景下的性能表现。除此之外,ByteHouse还提供了全局字典和多种索引类型,例如Bitmap索引,进一步提高了查询效率。
在现代企业中,OLAP引擎的自动化和可视化已经成为运维管理的重要趋势。为了适应这一变化,ByteHouse 提供了全面的运维服务,包括标准化运维、集群健康度检测以及问题发生时的诊断工具。这些工具旨在提升运维人员的效率,降低运维风险,并使运维工作更加智能化。其中,集群健康度检测工具的作用尤为突出。它类似于集群的实时巡检,能够准确地报告当前集群的状态、发现的问题以及解决方案。这种 proactive 的 approach 使得问题得以提前发现和解决,从而大大降低了运维风险。据实际应用情况显示,18000个节点仅需不到10名运维人员即可得到有效支持。这不仅提高了运维效率,也优化了企业的整体运营成本。因此,可以预见,随着 ByteHouse 这种先进的运维服务的发展,未来的 OLAP 引擎运维将更加高效、智能和安全。
在第四部分中,我们探讨了存算分离如何推动OLAP引擎架构的进化。在此背景下,ByteHouse推出了MPP 2.0架构,它采用了存算分离的设计原则。这种设计模式的优势在于,它可以更好地实现资源的隔离。具体来说,每个计算任务都被分配到不同的计算资源上,确保了用户之间的独立性,并且能够根据需求灵活地扩展或缩小存储和计算资源。此外,存算分离还能够让系统真正实现云原生部署。ByteHouse的存储层不仅支持HDFS,还支持S3对象或其他对象存储,这为云计算提供了更大的灵活性。因此,通过采用存算分离的架构,OLAP引擎得以实现更高的性能和更强大的功能。
目前,ByteHouse已经在行为分析、精准营销、实时监控等业务场景中落地。以实时监控为例,很多互联网APP有线上运营活动、直播电商等业务,数据实时性格外重要。数据从生产到展现在大屏上,延迟往往要控制在分钟级甚至秒级以内。而ByteHouse高吞吐性能、查询性能,使数据从输入端到输出端的流程达到秒级。在数据保障层面,ByteHouse 也能精细到Exactly Once 的语义,保证数据不丢失、不重复,最终达到数据高效存储、准确查询。(作者:吴卓港) 返回搜狐,查看更多
责任编辑:
AI时代,拥有个人微信机器人AI助手!AI时代不落人后!
免费ChatGPT问答,办公、写作、生活好得力助手!
搜索微信号aigc666aigc999或上边扫码,即可拥有个人AI助手!