在当今的互联网应用中,业务流量往往具有很大的不确定性。
例如,电商平台在 “618”“双 11” 等促销活动期间,访问量会呈爆发式增长,可能是平时的十倍甚至百倍,导致系统无法承载如此高负载而崩溃。这就要求底层数据库具备“弹性”机制,能根据流量情况自动伸缩资源,以应对业务需求的动态变化。
而弹性正是云原生架构的核心特性。作为火山引擎推出的一款云原生数据仓库,ByteHouse一方面具备高性能特性,能支持用户实时数据分析和海量数据离线分析能力;另一方面,基于弹性伸缩能力,用户只需基于时间、资源负载等条件就能进行扩容、缩容配置,减轻手动管理的负担,提升资源利用率,进一步节省成本。
在传统的基础设施架构中,企业通常需要为峰值负载配置足够的资源,导致在大部分时间里,资源处于闲置状态,造成了极大的浪费。而ByteHouse云原生弹性能力允许企业根据实际需求动态调整资源,只在需要的时候分配 资源,实现随开随用,不使用时自动暂停,暂停期间不收取任何计算层费用,从而降低了成本。
除此之外,ByteHouse云原生弹性还可以确保资源得到最有效的利用。当应用负载较低时,系统可以自动回收多余的资源,并分配给其他需要的应用或服务。
那么,ByteHouse是如何实现云原生弹性能力?
在存储层面, ByteHouse采用 Serverless 架构,具有低成本、无限扩展的能力。在计算层面,ByteHouse则基于PaaS 模式,通过容器化实现无状态或弱状态,将整个计算组包装成租户和应用呈现给用户,保证租户之间不会发生资源征用冲突或性能劣化,让计算资源在秒级内实现弹性拉起和弹性扩缩容。
正是由于采用计算资源采用PaaS 方式,ByteHouse能让用户有效避免不规范 SQL 造成的过多资源消耗,且计价模式采用资源用量(CPU)方式,确保用户对账单可预期。
ByteHouse弹性伸缩的能力也广泛应用广告营销、游戏、金融等场景中。以中国某知名游戏厂商为例,该厂商基于ByteHouse构建了一体化实时数仓平台,具备实时数据接入、实时 ETL 数据加工、实时维表关联和实时数据服务等能力,不仅能支持20万+QPS高并发点查,性能提高2倍以上,在资源用量上,比之前架构减少了30%成本。
现如今,降本增效一直是企业重点关注的话题。不仅仅是弹性伸缩,ByteHouse将优化冷热隔离、数据压缩等能力,持续保障数据查询和分析高性能的同时,进一步降低资源成本。