在运维层面,我们比较关心数据系统的扩展性,以及多租户性,保证资源隔
离、各个业务不互相干扰。
数据分析演进
简单给大家介绍小米内部的几种主要的数据分析和统计系统。
数据工场是小米内部的数据仓库平台,服务于小米绝大部分的业务。这套系统
的局限和不足也有很多,比如说报表展现比较简单。一个任务对应一个图表,
工作量会随统计需求呈现出正相关的增长。
第二,就是简单实时的统计系统。在实时性要求比较高的场景里,我们用开源
的方案,去比较快速地搭建这样的系统,这样的系统比较满足我们实时性比较
高的需求,维护的成本相对比较低,缺陷是对于大跨度的历史数据查询性能得
不到满足,且不支持多表 Join。
第三,是传统的 BI 系统。BI 比较重量级,需要比较大的维护成本。优点是丰
富的可视化图表,统计分析功能也会非常强大。它主要是偏人工定制,因而能
够满足各种各样的数据需求。不足点也很明显,第一难以支撑海量数据多维的
灵活分析,第二是整个系统的开发运维成本较高,因为大部分都是靠人工写代
码,对计算逻辑正确性、系统稳定性等方面有较高要求。
最后,是我们 2018 年启动的增长分析系统,该系统基于“事件模型”为互联
网业务提供 App 内的用户行为分析能力,使用 SparkSQL+Kudu 的技术方案实
现实时多维分析,能够同时提供统计聚合和明细粒度的查询分析。这个系统的
优点是能够提供实时多维的数据查询分析,实时动态增加字段,支持多种用户
行为分析的模型。不足之处,在数据规模比较大的情况下,查询响应时间较
长,另外整个系统的硬件成本比较高。
我们正在研发的 Big BI 自助 BI 报表平台,主要用到 Kylin+Doris 两个开源
OLAP 系统的多维分析能力。
BigBI 希望通过自动化的方式去实现业务数据从 0 到 1 的过程,从最开始的
数据源接入到数据处理(包括数据清洗 ETL 和数据建模),再到数据展现,实
现全环节可配置化,提升 BI 系统研发效率。技术架构图如下:
评论