为什么选择ByteHouse构建数仓
前言
ByteHouse 是火山引擎在 ClickHouse 的基础上自研并大规模实践的一款高性能、高可用企业级分析性数据库,支持用户交互式分析 PB 级别数据。其自研的表引擎,灵活支持各类数据分析和保证实时数据高效落盘,实现了热数据按生命周自动冷存,缓解存储空间压力;同时引擎内置了图形化运维界面,可轻松对集群服务状态进行运维;整体架构采用多主对等架构设计,架构安全可靠稳定,可确保单点无故障瓶颈。
ByteHouse 的架构简洁,采用了全面向量化引擎,并配备全新设计的优化器,查询速度有数量级提升(尤其是多表关联查询)。
用户使用 ByteHouse 可以灵活构建包括大宽表、星型模型、雪花模型在内的各类模型。
ByteHouse 可以满足企业级用户的多种分析需求,包括 OLAP 多维分析、定制报表、实时数据分析和 Ad-hoc 数据分析等各种应用场景。
ByteHouse 优势一:实时数据高吞吐的接入能力
面对业务大数据量的产生,需要高效可靠实时数据的接入能力,为此我们自研了 Kafka 数据源接入表引擎 HaKafka ,该表引擎可高效的将 Kafka 的数据接入 ByteHouse ,具有有如下特性:
数据接入高吞吐性,支持了多线消费 Kafka topic 对应 Partition 的数据,满足大数据量实时数据接入的需求。
数据接入高可靠性,通过 Zookeeper 来实现主备消费节点管理,比如,当线上出现某个节点出现故障或无法提供服务时,可以通过 Zookeeper 心跳感知机制自动切换到另一个节点提供服务,以此来保障业务的稳定性。
数据接入原子性,引擎自行管理 Kafka offset ,将 offset 和 parts 进行绑定在一起,来实现单批次消费写入的原子性,当中途消费写入失败,会自动将绑定的 parts 撤销,从而实现数据消费的稳定性。