使用saiku基于FOODMART设计数据分析课程

  • Post author:
  • Post category:其他


基于FOODMART设计数据分析课程

课程 数据仓库课程设计
题目 Foodmart批发店销售分析系统
主讲内容 基于Foodmart实例数据库,进行数据分析,要求满足以下分析要求

1. 按时间级别分析不同商店的销售额、销售成本额

2. 按时间级别分析每个产品的销售额、销售成本额

3. 按时间级别分析不同批发店(每个城市、省国家、拥有者)的销售额、销售成本额

4. 按时间级别分析不同批发店类型的销售额、销售成本额

5. 按时间级别分析不同商店(每个城市、省、国家)销售产品的销售额、销售成本额

6. 按时间级别分析不同地区的销售额、销售成本额

7. 按时间级别分析不同产品的销售额、销售成本额
要求 基本要求:

1. 按照需求完成详细的设计,包括实施白哦和维度的设计;

2. 按实际方案选择先关数据表以及各表的字段,表的之间的关系;

3. 有详细的数据准备方案,包括验证、清理、转换、装载等;

4. 将表中的任命(如销售人)的姓、名进行合并;

5. 按照设计方案构建多维度的数据集;

6. 按需求分析数据。

高级要求:

可以分析按不同汇率显示销售额和销售成本额
工作计划(工作分解) 提前两周:分组、选题

提前一周:明确需求分析、组内分工

第一天:与指导老师讨论,明确需求,分工并开始设计

第二到四天:构建多维数据集,分析数据

第五天:完成设计书,答辩

第六天:针对答辩意见修改设计说明书,打印,上交

1:数据清洗

2:数据分析及操作

常见问题

1. mondrian配置的时候的数据源链接地址

答案:url:

jdbc:mysql://127.0.0.1:3306/foodmart?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8

2. 已知类型如何让他们转义成易读文字。例如food希望展示为食品,Drink希望展示为饮料

答案:可以使用内部表或者新建表来实现分类查看。

3. 按照时间维度统计各种产品的销售情况,如果没有时间维度的话,显示数据为空。这个需要确认下原因。

答案:Hierarchy有个属性

hasAll

,如果该值为false时,默认是选择第一个匹配的维度值作为条件进行查询。举例说明,我们使用事实表sales_fact_1998,同时表time_by_day里的年度有1997和1998两个年度的数据,当我们采用按照商品类型进行分析销量时,如果

hasAll=false

时对应的是数据为空,因为匹配的时间维度为1997.如果

hasAll=true

时就可以展示所有数据了。

4. 重新设置了schema,但是点击后发现没有生效。

答案:这个由于saiku使用了缓存,如果schema发生了变更,那么对应的datasources需要更换名称或者重启服务。这样就能解决问题了。

5. 如何获取saiku的license和账号


参看网址:


链接

参考资料

  1. [mondrian 源码]

    https://github.com/pentaho/mondrian

  2. 【saiku源码】

    https://github.com/OSBI/saiku

  3. 【课题1】

    https://max.book118.com/html/2017/1018/137415630.shtm

  4. 【mondrian 学习写schema】

    https://mondrian.pentaho.com/documentation/schema.php

  5. 【学习mondrian 写schema的聚合表】

    https://mondrian.pentaho.com/documentation/aggregate_tables.php#Another_aggregate_table

  6. 【微软mdx文档】

    https://docs.microsoft.com/zh-cn/sql/mdx/mdx-syntax-elements-mdx?view=sql-server-ver15



版权声明:本文为xubaoyong原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。