基于mondrian的多维分析系统



0 术语与约束

1)  Extraction-Transformation-Loading 是对OLTP数据进行抽取,转换,装载的过程(以下皆简称ETL)

2) 文档的说明均按照ETL→DW→CUBE→presentation

 

1 ETL相关

1.1维度表

1.1.1时间维度

1) 说明:该维度记录了每天的时间,粒度最高精确到日,并可分周,月,年等粒度.

2) 对应表:tbl_dimdate

3) 对应过程: pro_supportdw_dimdate

4) 是否公用:是

5) 说明:此维度可建Hierarchy(层),见下图:

基于mondrian的多维分析系统_第1张图片

1.1.2设备维度

1) 说明:该维度记录了的设备信息. 并可分品牌,机型等粒度.

2) 对应表: tbl_dimdevice

3) 对应过程: pro_supportdw_dimdevice

4) 是否公用:否

5) 说明:此维度可建Hierarchy(层),见下图:

 

 

1.1.3地域维度

1) 说明:该维度记录了的地域信息. 并可分国家,省,区等粒度.

2) 对应表: tbl_dimgeography

3) 对应过程: 无,必要时手动加入地区数据

4) 是否公用:否

5) 说明:此维度无Hierarchy(层) ,见下图:

 基于mondrian的多维分析系统_第2张图片

1.1.4分辨率维度

1) 说明:该维度记录了分辨率的信息.

2) 对应表: tbl_dimresolution

3) 对应过程: pro_supportdw_dimresolution

4) 是否公用:否

5) 说明:此维度无Hierarchy(层),仅有Level(级别)

1.1.5操作系统维度

1) 说明:该维度记录了的操作系统的信息.

2) 对应表: tbl_dimos

3) 对应过程: pro_supportdw_dimos

4) 是否公用:否

5) 说明:此维度无Hierarchy(层),仅有Level(级别)

1.1.6网络类型维度

1) 说明:该维度记录了网络类型的信息.

2) 对应表: tbl_dimnetworktype

3) 对应过程: 无,手动维护数据

4) 是否公用:否

5) 说明:此维度无Hierarchy(层),仅有Level(级别)

1.1.7运营商维度

1) 说明:该维度记录了运营商类型的信息.

2) 对应表: tbl_dimoperator

3) 对应过程: 无,手动维护数据

4) 是否公用:否

5) 说明:此维度无Hierarchy(层),仅有Level(级别)

1.1.8系统维度

1) 说明:该维度记录了的系统(类似项目 market[市场],桌面[LAU])信息)的信息.

2) 对应表: tbl_dimsystem

3) 对应过程: 无,手动维护数据

4) 是否公用:是

5) 说明:此维度无Hierarchy(层),仅有Level(级别)

1.1.9包维度

1) 说明:该维度记录了包的信息.

2) 对应表: tbl_cms_apk_package_ref

3) 对应过程: 无,手动维护数据,来源于tbl_cms_apk_package(需做数据同步)

4) 是否公用:是

5) 说明:此维度无Hierarchy(层),仅有Level(级别)

1.1.10厂商维度

1) 说明:该维度记录了厂商的信息.

2) 对应表: tbl_user

3) 对应过程: 无

4) 是否公用:是

5) 说明:此维度无Hierarchy(层),仅有Level(级别)

1.1.11系统版本维度

1) 说明:该维度记录了系统的版本信息.

2) 对应表: tbl_dimappversion

3) 对应过程: pro_supportdw_dimappversion

4) 是否公用:是

5) 说明:此维度无Hierarchy(层),仅有Level(级别)

1.1.12广告资源维度

1) 说明:该维度记录了资源或则广告的信息.

2) 对应表: tbl_dimresource

3) 对应过程: 无,手动维护数据,来源于tbl_resource (需做数据同步)

4) 是否公用: 否,广告资源模型独有

5) 说明:此维度无Hierarchy(层),仅有Level(级别)

1.1.13广告资源区分维度

1) 说明:该维度记录了资源或广告区分的信息.

2) 对应表: tbl_dimadres_type

3) 对应过程: 无,手动维护数据

4) 是否公用: 否,广告资源模型独有

5) 说明:此维度无Hierarchy(层),仅有Level(级别)

1.1.14广告资源新旧区分维度

1) 说明:该维度记录了资源或广告区分的信息.

2) 对应表: tbl_dimnewold

3) 对应过程: 无,手动维护数据

4) 是否公用: 否,广告资源模型独有

5) 说明:此维度无Hierarchy(层),仅有Level(级别)

1.1.15系统类型维度

1) 说明:该维度记录了系统子类型(类似airpush类型,uubao类型)的信息

2) 对应表: tbl_dimsystemtype

3) 对应过程: 无,手动维护数据

4) 是否公用: 否,广告资源模型独有

5) 说明:此维度无Hierarchy(层),仅有Level(级别)

1.1.16系统来源维度

1) 说明:该维度记录了系统的来源类型(来源类似广告资源,人工采编)的信息

2) 对应表: tbl_dimresourcetype

3) 对应过程: 无,手动维护数据

4) 是否公用: 否,广告资源模型独有

5) 说明:此维度无Hierarchy(层),仅有Level(级别)

 

1.2事实表与measure(度量)

1.2.1 Market事实表与measure(度量)

1.2.1.1 market事实表

1)  TBL_FACTMARKET 该表为market事实表,含有的指标有新增,独立用户,启动次数,留存等.维度精确到IMEI

2)  TBL_FACTMARKET_FIN该表为维度精确到APK_ID

1.2.1.2 market measure(度量)

1) 新增: Market新增用户数量统计

2) 独立: Market独立用户数量统计

3) 启动: Market启动量统计

4) 隔1天market用户留存,此为postUpdate

5) 隔7天market用户留存,此为postUpdate

6) 隔15天market用户留存,此为postUpdate

7) 隔21天market用户留存,此为postUpdate

8) 隔30天market用户留存,此为postUpdate

9) 周留存率

10) 月留存率

1.2.2 广告资源事实表与measure(度量)

1.2.2.1 广告资源事实表

1)  TBL_FACTADRES该表为广告资源事实表,含有的指标有接收,阅读,下载,下载完成,安装等.维度精确到IMEI

 

2)  TBL_FACTADRES_FIN该表为广告资源事实表,含有的指标有,阅读,点击,下载,下载完成,安装等.维度精确到APK_ID

1.2.2.2 广告资源measure(度量)

1) 接收: 广告资源的接收量统计

2) 阅读量: 广告资源的阅读量统计

3) 下载量: 广告资源的下载量统计

4) 下载完成量: 广告资源的下载完成量统计

5) 安装量: 广告资源的安装量统计

1.3 ETL

1.3.1 Market模型

1) pro_supportdw_factmarketmarket2.0以上事实表抽取

2) pro_support_oldfactmarketmarket1.2版本事实表抽取(含airpush)

3) pro_supportdw_loadfactmarketmarket事实表抽取汇总(聚合至apk_id维度)

4) pro_supportdw_preservemarket2.0留存抽取 (此为PostUpdate)

1.3.2 广告资源模型

1) pro_supportdw_factadres 广告资源事实表抽取

 

1.3.3 厂商模型

1)  pro_supportdw_loadaggrmarket 此为market模型和广告资源模型的汇集,维度到apk_id

1.4 ETL调度

1.4.1 维度表job

1)  Job对应过程:pro_supportDW_Dim_jobs

2)  包含维度表过程如下:

pro_supportdw_dimdevice(sysdate);--设备维度(设计品牌机型)

pro_supportdw_dimos(sysdate);  --操作系统维度

pro_supportdw_dimresolution(SYSDATE);--分辨率维度

pro_new_user_install(SYSDATE); --新用户信息,AdRes对照新旧用户时用

pro_supportdw_dimresource;  ---- 新加广告维度数据更新

1.4.2 事实表job

1.4.2.1 market job

1)  market Job对应过程: PRO_Support_Market_JOBs

2)  包含事实表表过程如下:

pro_supportdw_factmarket

pro_support_oldfactmarket

pro_supportdw_loadfactmarket

1.4.2.2 广告资源 job

1) 此job包含在厂商job中

1.4.2.3 厂商job

1) 厂商Job对应过程: pro_support_adres_agg_jobs

2) 包含事实表表过程如下:

pro_supportdw_factadres

pro_supportdw_loadaggrmarket

 

2 Cube相关

 

2.1 Cube介绍

2.1.1 cube说明

An OLAPcube is an array of data understood in termsof its 0 or more dimensions.

Cube是一个多维数据模型的简称.

2.1.1 cube相关术语

1)多维数据集: 多维数据集是联机分析处理 (OLAP) 中的主要对象,是一项可对数据仓库中的数据进行快速访问的技术.多维数据集是一个数据集合,通常从数据仓库的子集构造,并组织和汇总成一个由一组维度和度量值定义的多维结构.

 

2)维度: 是多维数据集的结构性特性.它们是事实数据表中用来描述数据的分类的有组织层次结构(级别).这些分类和级别描述了一些相似的成员集合,用户将基于这些成员集合进行分析.

 

3.度量值: 在多维数据集中,度量值是一组值,这些值基于多维数据集的事实数据表中的一列,而且通常为数字.此外,度量值是所分析的多维数据集的中心值.即,度量值是最终用户浏览多维数据集时重点查看的数字数据.您所选择的度量值取决于最终用户所请求的信息类型.一些常见的度量值有 sales、cost、expenditures 和 production count 等.

 

4)元数据: 不同 OLAP 组件中的数据和应用程序的结构模型.元数据描述 OLTP 数据库中的表、数据仓库和数据集市中的多维数据集这类对象,还记录哪些应用程序引用不同的记录块.

 

5)级别: 级别是维度层次结构的一个元素.级别描述了数据的层次结构,从数据的最高(汇总程度最大)级别直到最低(最详细)级别.

 

6)数据挖掘: 数据挖掘使您得以定义包含分组和预测规则的模型,以便应用于关系数据库或多维 OLAP 数据集中的数据.之后,这些预测模型便可用于自动执行复杂的数据分析,以找出帮助识别新机会并选择有获胜把握的机会的趋势.

 

7)多维:  OLAP (MOLAP): MOLAP 存储模式使得分区的聚合和其源数据的复本以多维结构存储在分析服务器计算机上.根据分区聚合的百分比和设计,MOLAP 存储模式为达到最快查询响应时间提供了潜在可能性.总而言之,MOLAP 更加适合于频繁使用的多维数据集中的分区和对快速查询响应的需要.

 

8)关系: OLAP (ROLAP): ROLAP 存储模式使得分区的聚合存储在关系数据库的表(在分区数据源中指定)中.但是,可为分区数据使用 ROLAP 存储模式,而不在关系数据库中创建聚合.

 

9)混合:  OLAP (HOLAP): HOLAP 存储模式结合了 MOLAP 和 ROLAP 二者的特性.

 

10)粒度: 数据汇总的层次或深度.

 

11)聚合|聚集: 聚合是预先计算好的数据汇总,由于在问题提出之前已经准备了答案,聚合可以改进查询响应时间.

 

12)切块: 由多个维的多个成员限定的分区数据,称为一个切块.

 

13)切片: 由一个维的一个成员限定的分区数据,称为一个切片.

 

14)数据钻取: 最终用户从常规多维数据集、虚拟多维数据集或链接多维数据集中选择单个单元,并从该单元的源数据中检索结果集以获得更详细的信息,这个操作过程就是数据钻取.

备注: Mondrian 是基于ROLAP的

2.2 Pentaho工具说明

2.2.1 mondrian

Mondrianis an OLAP (online analytical processing) engine written in Java.

Java写的OLAP引擎.

2.2.2 schema workbench

TheMondrian Schema Workbench is a designer interface that allows you to create andtest Mondrian OLAP cube schemas visually.

SchemaWorkbench是一个图形化工具,可以定义MondrianOLAP cube的模式..

 

2.2.3 biserver

PentahoBI Server which functions as a web based report management system,application integration server and lightweight workflow engine (actionsequences.) It is designed to be easily integrated into any business processes.

PentahoBI服务器,提供Cube的展示和访问.

2.2.4 schema

多维分析模式xml代码,见如下截图:

基于mondrian的多维分析系统_第3张图片

 

2.3 Pentaho部署

 

2.3.1 数据源配置

2.2.2 administration-console

1) 双击 D:\ProgramFiles\biserver-ce-4.5.0-stable\biserver-ce\start-pentaho.bat

2) 双击 D:\ProgramFiles\biserver-ce-4.5.0-stable\administration-console\start-pac.bat

3) 输入localhost:8099(或则IP地址) 配置数据源

基于mondrian的多维分析系统_第4张图片

 

2.3.2 schema workbench

点击schemaworkbench里的connection选项

基于mondrian的多维分析系统_第5张图片

2.3.2 发布

 

1) schema workbench里打开cube对应的xml文件.点击发布至biserver里.

 

基于mondrian的多维分析系统_第6张图片

2.3.2 访问

1) 输入http://localhost:8080/pentaho/Home

2) 点击New Analysis → Cube名称(如AdRes)

3) 进入如下Cube展示页面.

 基于mondrian的多维分析系统_第7张图片

 

 

 


你可能感兴趣的:(BI)