8月24日,火山引擎正式对外发布ByteHouse,为客户提供企业级分析型数据库的技术支持服务。ByteHouse支持用户交互式分析PB量级的数据,通过多种自研表引擎,灵活支持各类数据分析和应用。
DB-Engine上ClickHouse的排名趋势图
据悉,ByteHouse是基于开源ClickHouse而开发的数据库。ClickHouse是由俄罗斯互联网公司Yandex为其Yandex.Metrica网络分析服务开发的。自2016年开源以来,ClickHouse凭借其数倍于业界顶尖分析型数据库的性能,成为交互式分析领域的后起之秀。截至2021年8月份,ClickHouse在开源社区Github上获得18.2K Star,在数据库流行度网站DB-Engines的排名近一年也上升16位。不过,由于ClickHouse上手容易、用好很难,阻挡了一批“想用而不敢用”的企业级用户。
字节跳动早在2017年就使用ClickHouse,从分析场景开始,逐步扩展到广告业务、用户增长、A/B测试、算法模型优化等大量内部场景,并发展为国内最大规模的ClickHouse使用者。伴随着深度应用,火山引擎技术团队通过自研的方式,进一步丰富ClickHouse可使用的场景,提高运维的人效。该举措不仅解决了ClickHouse开源版上手难和试错成本高的痛点,同时也使得火山引擎有足够的能力对外提供基于ClickHouse而开发的ByteHouse,帮助更多企业用好这款分析型数据库。
ByteHouse产品架构
火山引擎对外开放的ByteHouse,功能上包括自研引擎、分级存储、增强运维,其主要亮点如下:
分布式查询增强:支持星型模型等复杂的多表关联场景,进一步去除数据冗余和数据准备成本;
支持Upsert语义:既保留了ClickHouse高效的数据写入性能,又支持Upsert(update or insert)写入方式,帮助业务更简单地开发实时分析应用;
实时数据引擎:支持实时数据高效写入,支持exactly once语义,写入性能远超原生架构;
数据分级存储:冷热数据分级存储在HDFS和本地存储,自动化管理数据热度,自动转存不同存储,有效缓解业务存储空间持续增长的问题;
企业级运维工具:自助运维能力,包括配置下发、指标告警、集群健康度监控、查询任务诊断、集群负载管理等功能,极大提高了运维人效。
目前字节跳动内部的ByteHouse节点总数超过1万5千个,管理总数据量超过600PB,最大的集群规模在2400余个节点。火山引擎相关负责人表示,ByteHouse经过了字节跳动内部海量数据场景的打磨和极限的业务要求,更加符合企业高速增长诉求。
对于未来,该负责人指出,ByteHouse会不断以字节跳动和外部最佳实践输出给行业用户,帮助企业更好地构建交互式大数据分析平台。“火山引擎也会广泛的与ClickHouse研发者社群共享经验,共同推动ClickHouse社区的发展。”
火山引擎是字节跳动旗下企业级技术服务平台,目前已服务京东、苏宁、vivo、建设银行、银河证券、吉利、B站、华润等知名企业。