导读
高途教育引入阿里云 SelectDB 替换 ClickHouse、MySQL 作为核心分析引擎,统一支撑续班与行课实时分析等核心业务。通过阿里云 SelectDB MPP 架构与向量化查询引擎,结合 SelectDB 倒排索引、Bloom Filter 等丰富索引机制,实现亿级数据量秒级多表关联查询,在 700+ 高并发查询压力下 P99 延迟低于 200ms,稳定满足核心报表 2s 内响应,有力支撑高途教育业务向"数据驱动运营"转型。
业务背景与需求
高途教育科技集团(NYSE:GOTU,以下简称高途教育)是一家兼具教育基因和科技驱动力的科技教育公司。目前,高途集团的业务涵盖了面向中小学生、大学生与成人、出国留学人群咨询和学习的产品和服务,以及以内容和文化为内核的直播电商等业务。
**本文主要介绍续班场景实时大屏及行课场景中工作台的报表分析。**在续班场景,高途教育通过续班大屏实时整合全国区域及课程品类的续班数据,为管理层与一线人员提供实时、动态的续班数据洞察,以驱动资源精准调配与潜力课程识别。在行课场景,高途教育需将数据分析大屏嵌入至教师、运营、管理者等多角色工作台,为每个角色实时提供高度定制化的行课数据视图,支撑教学质量和全流程优化。为满足双场景需求,数据分析平台具备以下能力:
- 高并发访问能力:在续班期间,支撑全部一线员工随时随地、并发访问实时续班大屏,确保信息全员同步,打破地域限制。在行课期间, 保障所有角色在日常工作中能够流畅访问数据工作台,确保业务无缝进行。
- 多表 Join 关联查询能力: 支持跨业务数据表 Join 关联查询,快速生成适配不同角色的专属报表视图。
- 实时数据更新能力:由于 TP 库中数据持续更新,因此要求分析系统具备实时数据更新能力。实现大屏与工作台数据的秒级刷新,确保大屏展示的续班数据与工作台展示的行课数据即时反映最新业务动态,为快速决策提供数据基础。
业务挑战
在支撑关键业务场景的数据分析能力上,高途教育过去选择了 ClickHouse 和 MySQL 组合。在续班场景中,由于该场景对查询响应延迟以及数据实时性要求高,高途教育选择了 ClickHouse,业务上仍然面临两个挑战。
- 查询并发能力低,服务能力受限:ClickHouse 高并发处理能力有限(仅支持约 100 QPS),导致实时报表访问受限,仅开放给管理人员和现场电视。一线人员只能在特定位置通过电视查看数据,若不在同一工区或楼层,无法实时感知续班数据变化。
- 报表维度单一,缺乏个性化分析支持,使用场景受限:系统在处理多表关联复杂查询时效率低下,仅能提供预设的单一维度报表,难以根据不同岗位(如管理层、运营、销售)提供差异化的分析视角,进而导致前线业务场景使用受限。
在行课场景中,由于 ClickHouse 无法支撑 2B 业务所需的高并发访问,系统最初采用了基于 MySQL 的定制化数据方案。各类报表需经过 ODS → DW → DM 的多层数据加工,再按业务场景进行定制化聚合开发。业务上遇到了数据定制流程复杂、响应慢、灵活性差的挑战。具体问题包括:
- 高度耦合的加工链条:每一张报表都需要经过 ODS → DW → DM 的多层数据加工过程,一旦有字段、逻辑或口径的调整,不仅需要同步修改各层数据加工逻辑,还会影响多个报表,造成修改成本高、风险大。
- 开发效率低,维护复杂:展示层的变更往往涉及前后端联动开发,不具备低成本快速迭代能力,无法支撑业务快速变化下的灵活调整需求。
- 难以支撑多角色、差异化的数据需求:报表设计通常以固定场景为主,缺乏统一的数据服务能力,不易复用,难以满足不同岗位对数据的个性化分析需求。
基于阿里云 SelectDB 升级实时报表
明确架构瓶颈后,高途教育联合阿里云与飞轮科技,选定基于 Apache Doris 内核的 阿里云 SelectDB 作为新一代实时分析引擎,实现 ClickHouse 与 MySQL 的全面替代,构建统一的实时分析平台。
阿里云 SelectDB 优势
SelectDB 凭借以下核心优势,精准匹配了高途教育对"高并发、高灵活性、低延迟"的分析需求:
- 高并发支撑能力:支撑千级别并发访问:通过倒排索引、ZoneMap、Bloom Filter 等多级索引机制,结合分区分桶技术,SelectDB 能在查询时快速裁剪无关数据,显著降低计算与 I/O 负载,稳定支撑成千上万用户同时在线访问。
- 秒级复杂查询响应:彻底解决多表 Join 性能瓶颈:SelectDB 支持秒级响应的多表 Join 与宽表查询,显著优于 ClickHouse 的复杂查询能力,满足实时业务对多维数据灵活组合分析的需求,提升业务场景适配性与数据服务能力。
- 实时更新能力:支持实时写入与高性能查询并存:借助 Unique Key 模型,SelectDB 实现了强一致语义下的实时更新与查询能力,在数据频繁变更场景下依然保持极高的查询性能,相比 ClickHouse 提供更强的数据鲜活性支持。
- 企业级可运维性:降低数据平台使用门槛:SelectDB 提供白屏化运维界面,内建 SQL 审计与查询追踪能力,大幅降低数据平台的运维与使用成本,支持开发人员专注业务逻辑开发,提升整体数据交付效率。
基于阿里云 SelectDB 数据架构

实时数据使用 Flink 快速写入 SelectDB,离线数据使用 SeaTunnel 写入 SelectDB。SelectDB 作为查询的统一入口,BI 通过查询入口接入。
阿里云 SelectDB 实践和调优
- 功能适配性:阿里云 SelectDB 集群管理、账号管理、实时监控预警、数据安全管理等企业级功能能够覆盖高途教育对集群的功能需求。此外,阿里云 SelectDB 逻辑视图功能实现计算与存储解耦,当业务需新增分析维度时,仅需改写视图 SQL,无需重构底层数据管道,解决行课场景 MySQL 数据库"牵一发而动全身"的耦合问题。
- 使用倒排索引:基于阿里云 SelectDB MPP 架构与向量化查询引擎,对亿级订单、课程、用户表进行实时多表 Join。针对高频查询字段启用阿里云 SelectDB 倒排索引功能,结合 Bloom Filter 预过滤无效数据,在 700+ 高并发查询压力下 P99 延迟低于 200ms,稳定满足核心报表 2s 内响应,相比 ClickHouse 性能提升 7+倍。
实践中我们积累了部署与查询过程中的调优经验,特此分享:
- 尽可能使用原字段形式进行过滤:比如过滤时间字段,尽量使用原格式进行过滤,不要针对时间格式转化后过滤,否则扫描量裁剪的效果不佳。
- 避免使用 Not In 的语法,Not In 的语法会进行全表的扫描,涉及计算的数据量较大,CPU 占用率也随之上升,集群稳定性易受到影响。
- 尽可能将不同业务线的查询拆分为不同的集群,隔离资源的互相影响。
- 这部分放到 SelectDB 中,实时任务的原因主要是,我们一开始的维表在 HBase 中,但是由于维度更新原因,我们把这部分放到了 SelectDB 中。

应用收益
阿里云 SelectDB 有效支持了高途教育续班及行课期间的实时报表场景,为高途教育带来了分析性能提升、架构灵活性突破、成本降低等收益:
- 分析性能提升 :在 700+ 高并发查询压力下 P99 延迟低于 200ms,稳定满足核心报表 2s 内响应。全部一线人员可秒级获取动态续班与行课数据,查询并发相比 ClickHouse 提升 7+ 倍,大幅提升运营决策、一线支持效率。
- 架构灵活性突破:实现查询逻辑与数据模型解耦,解决行课场景原 MySQL 架构需求变更需全链路改造的痛点,需求迭代周期大幅缩短。通过阿里云 SelectDB 多表 Join 查询能力,提升开发和交付效率,数据使用更为灵活。
- 整体成本降低 :阿里云 SelectDB 白屏化运维、SQL 审计和追踪,大幅简化高途教育运维开发流程,提升 70% 运维效率。此外,阿里云 SelectDB 统一了高途教育分析引擎,大幅降低多分析引擎导致的资源浪费。