摘要:水滴筹大数据部门的数据开发工程师韩园园老师为大家分享水滴筹基于阿里云EMR StarRocks的实战经验。
本篇内容将会围绕以下五个方面展开:
1.公司介绍
2.StarRocks 概览
3.场景实战
4.最佳实践
5.未来规划
一、公司介绍
水滴创立于2016年,业务包括水滴筹、水滴保险商城等,于2021年5月7日上市。水滴以“用互联网科技助推广大人民群众有保可医,保障亿万家庭”为使命,致力于为用户提供健康保障解决方案。希望联合合作伙伴打造中国版联合健康集团,让用户以更低的费用享受到更好的诊疗。
自2016年7月至2022年末,水滴筹平台的捐款人达到了4.3亿,有超过277万的大病患者得到了帮助,总计筹集医疗资金达到569亿元,并提供了755个保险产品。
二、StarRocks 概览
使用历程
首先来梳理一下水滴筹在OLAP方面的发展历程。
- 2018年,引入ClickHouse,主要用于监控报警和用户相关的行为分析工作,包括漏斗、留存等。
- 2020年,引入TiDB,主要用于OLAP分析和报表展示。
- 2021年,针对当时组件的一些痛点,也为了探索更多的OLAP引擎,引入StarRocks v1.17.8(DorisDB)版本,自建StarRocks集群,用于OLAP分析。
- 2022年2月,升级StarRocks集群到v1.19.5版本,用于报表展示。
- 2022年10月,迁移自建StarRocks集群至阿里云EMR StarRocks,并将大数据的TiDB所有的服务迁移到StarRocks上,版本为v2.3.2。
- 2023年3月,参加阿里云EMR Serverless StarRocks集群公测,并将集群新功能尝试应用于新业务中。
水滴现状
从上表可以看到水滴对各个组件的使用场景,以前以TiDB作为主要组件进行OLAP分析和OLTP,少部分服务使用StarRocks;实时监控、用户行为分析还在ClickHouse中。
随着近几年业务的发展、实验的沉淀, OLAP组织架构也存在一些问题,如组件维护困难,数据冗余存储,数据收口和出口不统一等情况。水滴大数据希望引入一款实时OLAP数据库,统一数据的监控和查询,用于解决各业务线对数据高效实时数据查询和数据统计分析的需求。
水滴OLAP组件技术选型
水滴对OLAP引擎最关注的有四点,分别是:并发能力,物化视图,join能力和写入实时。
上表是基于水滴通过近几年的实践得到的结论,可以看出:
- StarRocks在并发能力、物化视图、join能