首先介绍一下我们团队的情况,我司数据中台团队成立于2022年初,最开始聚焦于离线数仓和报表,人员配置在6个人左右的小团队。技术架构比较复杂,组件相对来说比较臃肿,一次报表刷新的时间大概在12小时左右,在我们数据量并不是特别大的情况下效率并不高。2023年年末团队经历一波换血过后,我们就开始着手整个数据中台的架构治理。治理包括基于SR 将 Doris和Hadoop 整合为一个数仓,然后通过Flink CDC 将所有的原表直接load到数仓。
StarRocks 是新一代极速全场景 MPP (Massively Parallel Processing) 数据库。StarRocks 的愿景是能够让用户的数据分析变得更加简单和敏捷。用户无需经过复杂的预处理,就可以用 StarRocks 来支持多种数据分析场景的极速分析。StarRocks 架构简洁,采用了全面向量化引擎,并配备全新设计的 CBO (Cost Based Optimizer) 优化器,查询速度(尤其是多表关联查询)远超同类产品。StarRocks 能很好地支持实时数据分析,并能实现对实时更新数据的高效查询。StarRocks 还支持现代化物化视图,进一步加速查询。使用 StarRocks,用户可以灵活构建包括大宽表、星型模型、雪花模型在内的各类模型。
我们直接通过Flink CDC 3.0 的 Pipeline 将需要的表实时导入到 StarRocks 的 ods 层,然后再通过构建异步物化视图,实时计算各种DAU。
StarRocks 作为一个MPP引擎,在我们的架构治理中起到了关键作用,效果也是显而易见的,优化过后我们的数据刷新时间从原来的12小时缩短为20分钟,由于我们没有增量的必要, 每次直接依赖于StarRocks的计算能力,暴力刷新所有的表。并且新版的StarRocks 支持存算分离,结合云厂商的廉价存储和SSD缓存,稳定性得到进一步提升。