作为一个PM,通过向开发同学的咨询和自我学习,整理了一下报表平台的架构体系(偏开发方面)~如有不足,请各位大佬指正~~~
先来讲报表平台的发展过程,报表平台的发展历经多个阶段,这些不同的阶段是用户诉求不断得到满足的一个过程。初始是以excel 表格的形式进行业务的数据分析,但存在数据量的限制,当数据量达到10万以上时,excel 会出现卡顿、等待时间较长的问题。所以出现了传统的数据报表系统,数据量的问题得到解决,但依旧存在着报表系统只是作为数据的展现无法进一步分析,报表逻辑修改无法及时响应业务诉求的问题。随着大数据的出现及技术的迭代更新,比如依赖于大数据平台的OLAP分析技术 ,促使当前的报表发展已经进入了智能阶段,报表的开发可以不强依赖开发人员,分析维度也可以根据业务的诉求自由组合,时效上可达到实时分析。
智能报表平台智能的原因是可以根据用户诉求实现自主分析,自主分析保证了用户各个维度可进行组合分析,这些操作的过程依赖的是OLAP技术。
OLAP快速实现多维数据的查询分析,只有这个技术不足以完成整个报表系统的运转,接下来将从数据源、数据建模、数据分析3大块来介绍报表平台的架构体系。
1、数据源
报表的数据是由数仓提供的,数仓的数据来源是经由上游业务系统的业务数据经过ETL(ETL包含抽取、清洗、转换,其中抽取包含3种,SQL语句抽取、数据文件同步、增量抽取,增量抽取通过记录最后抽取的时间,选择比最后一次抽取时间大的时间进行抽取;清洗完成重复数据、空数据、错误数据的清洗;转换处理的是字段格式的不