ProtonBase 在教育行业的实践与落地
导读
该客户作为一家以医药护行业人才培训为核心的大型企业,长期致力于医药护职业考证及技能培训。自成立以来,就高度重视 IT 平台的建设。本文将分享该教育行业客户如何通过引入 ProtonBase 替换 SQL Server 分析引擎,利用新的实时数据仓库实现降本增效,助力业务更加精细化增长的实践经验。本文将涵盖以下内容:
- 业务场景
- ProtonBase 构建在线弹性伸缩实时数仓
- 总结与未来展望
一、业务场景
该客户多年来一直致力于医药护考前培训,已在全国各地建立多个直营教学点,覆盖全国多个省份、自治区和市区,此外,建立了广州、北京、沈阳、成都、兰州、南京、武汉、郑州 8 大师资中心。
业务挑战:高成本、低弹性
该客户的系统演进经历了三个阶段:
- 1.0 阶段:以快速搭建平台支持业务为首要目标,主要依赖第三方产品。
- 2.0 阶段:随着平台和业务趋于稳定,开始考虑合理降低 IT 成本,转向自主研发。
- 3.0 阶段:结合业务发展与团队特点,对 1.0 和 2.0 阶段的系统进行优化和完善。
在选择 ProtonBase 之前,客户的 2.0 和 3.0 版本系统同时运行,所有数据都存储在 SQL Server 上。尽管自研系统在初期运行良好且性能较高,但随着业务的快速扩展,2.0 和 3.0 版本之间的数据逐渐形成孤岛。此外,随着数据分析和计算需求的激增,SQL Server 的技术瓶颈逐渐显现。业务部门希望数据录入后能够迅速在报表中展示结果,然而系统的延迟和成本问题也因此暴露出来。每年 10 月的执业药师考试高峰期前各学校老师查询报表导致资源使用出现明显的波峰波谷,造成了资源的严重浪费。
为了解决这些问题,该客户开始寻找一种成本更低、弹性更好的实时数据仓库 OLAP 解决方案。
二、ProtonBase 构建在线弹性伸缩实时数仓
ProtonBase 全面替换 SQL Server 进行数据分析
经过一系列的调研与对比,该客户决定使用 ProtonBase 取代 SQL Server 进行所有数据分析处理。ProtonBase 通过支持行列混合存储的优势,显著加快了各种查询的处理速度。此外,ProtonBase 的物化视图功能突破了 SQL Server 在物化视图方面的限制,特别是在各种 join 操作上,成功构建了高效的实时数据仓库解决方案。
实时数仓的数据处理链路如下:
- 数据同步:通过 ProtonBase 的数据同步工具,实时接入 MySQL Binlog,实现数据快速入仓。
- 数据清洗:在 ProtonBase 中,将数据仓库划分为 ODS、DWD、DWS、ADS 等四个层级。每个层级的数据由 ProtonBase 的物化视图提供线上服务访问,并且通过 Dagster 平台进行调度执行刷新任务。
- 数据存储:所有数据统一存储在 ProtonBase 中,并由 ProtonBase 作为大数据查询引擎,统一提供线上数据加工处理。支持的业务场景包括实时看板、实时大屏、实时业务分析等。
ProtonBase 实时数仓支持在线弹性伸缩
教育行业的应用通常具有明显的波峰波谷特点,该客户的业务高峰期集中在每天白天,晚上基本无人使用。过去,基于传统的固定费用计算模式,需要全天保持满足高峰期需求的资源配置,这不仅造成了大量资源浪费,也使成本居高不下。
ProtonBase 的一大优势在于其可以在秒级时间内调整计算资源,以适应不断变化的负载需求。秒级的弹性扩缩容功能允许系统根据实际需要自动增加或减少数据库实例的计算资源,如 CPU、内存和存储容量,确保系统性能和可用性。并且可以在调整计算资源的时候保持系统可用,业务无需停机或者进行任何操作。
这意味着在高峰负载期间,可以快速扩容,而在负载减小时则迅速缩容,从而提高资源利用率、降低成本,并保持系统的高响应性。具体来说,该客户会在高峰期前在线增加 ProtonBase 的规格,并在中午业务量减少时缩减规格。
与传统的固定费用或许可模式不同,ProtonBase 采用按量计费的模式,客户只需为实际使用的计算和存储资源支付费用。这种按需付费的模式提供了极大的灵活性,该客户可以根据实际需求灵活扩展或缩减资源,无需提前支付或购买长期许可。通过这种方式,能够有效控制成本、提高资源利用率,并适应不断变化的工作负载。
三、总结
10x 性能提升,统一的数据库和数仓体验
该客户的实时数据仓库在成本管理和数据实时处理方面取得了显著成效。与以往的方案相比,ProtonBase 提供了更稳定、可靠且建设成本更低的解决方案,实现了降本增效,推动了业务的精细化增长。具体的成果总结如下:
统一的数据库和数仓体验,降低多数据产品架构复杂度
在架构方面,ProtonBase 具备同时支持数据库、数据仓库和搜索引擎的能力,同时在每一领域都表现出色。该客户计划将 MongoDB 中的数据处理也逐步迁移至 ProtonBase,以进一步简化架构和提升性能。
性能极大提升,极速交互式分析
在性能方面,ProtonBase 通过深度优化存储格式、索引、优化器和执行引擎,在各个场景下都表现优异。以教育场景为例,之前用户回访情况等实时报表可以简单地实现。
极致弹性和秒级无损扩容,应对业务突发流量
在弹性方面,ProtonBase 实现了秒级扩容,且扩容过程不影响服务的稳定性。扩容后,性能随着计算节点的增加呈线性增长。与大多数云产品的扩容相比,ProtonBase 更能有效应对紧急扩容需求。
多云原生,多云中立,跨云一致体验
该客户使用多个云平台,ProtonBase 作为云中立产品,可以在多个云环境中部署,避免被单个云平台绑定。跨云迁移只需要非常简单的配置就可以在新的云环境中启动新数据库,并支持与现有数据库保持数据一致。
四、未来展望
未来,该客户与 ProtonBase 将在更多场景中开展创新合作,推动更广泛的应用实践。双方的合作方向包括:
- 非结构化数据支持:当前客户大量使用 MongoDB 来处理非结构化数据需求,如题库等。然而,MongoDB 在跨表查询方面存在局限性,限制了业务发展。ProtonBase 希望通过引入 JSONB 数据类型,实现关系型数据库与文档型数据库的完美结合,有望解决这些挑战。
- 向量检索:客户在多个场景中存在向量检索需求,比如知识库,学员知识问答等。ProtonBase 非常适合需要与数据库紧密结合的向量检索场景。通过标准 PostgreSQL 接口,ProtonBase 能轻松支持结构化与非结构化数据的联合检索,满足复杂查询需求。
- 只读 Replica 功能:客户经常需要发布新的报表需求,但由于业务人员的 SQL 编写能力参差不齐,可能会编写出性能较差的查询,从而影响线上服务的稳定性。ProtonBase 支持只读 Replica 功能,基于同一份数据实现场景隔离,在满足业务人员即席查询需求的同时,保障系统的稳定运行。
通过这些合作方向,该客户与 ProtonBase 将继续深化合作,助力教育行业的数字化转型,并推动行业技术的持续创新。