美文网首页
Adventure项目分析(二)

Adventure项目分析(二)

作者: 我就是那个无敌大长腿 | 来源:发表于2020-08-07 18:16 被阅读0次

本文是基于实现第一阶段的业务目标后,使用python、数据仓库实现的自主更新可视化看板。

项目目录

  • 项目介绍
  • 分析思路
  • 数据自动化处理过程
  • 可视化报表搭建

一、项目介绍

基于已经实现第一阶段的业务需求后,公司希望业务部门能够实现自主分析,从而实现对市场的快速判断,因此,要求数据部门和业务部门沟通需求的自主分析的数据指标,从而实现可视化看板。

二、分析思路

(一)项目操作流程

(二)项目解决思路

三、数据自动化处理过程

(一)聚合生成dw_order_by_day表

从mysql数据库中获取ods_sales_orders订单明细表并按日期分组聚合,得到每日销量和每日销售额。读取日期维度表,与上表合并,得到dw_order_by_day每日环比表。
代码如图所示(部分):


(二)聚合生成dw_order_diff表

因为在上一步中已经得到了dw_order_by_day每日环比表,将当前时间维度和去年同期维度下相同字段进行聚合,在计算销售额,销售量,和客单价的同比。
代码如图所示(部分):


(三)聚合生成update_sum_data表

获取ods_sales_orders订单明细表和ods_customer,并进行连接,按照订单日期/产品名/产品子类/产品类别/所在区域/所在省份/所在城市分组聚合,在获取日期维度表,进行连接,得到sum_customer_order
代码如图所示(部分):


(四)在Linux上做定时部署

把定时更新的任务写到schedule.py上,然后将我们写好的schedule.py文件挂到后台
(1)定时更新dw_order_by_day,dw_order_diff,dw_customer_order表的schedule.py文件,导入schedule 模块实现定时更新,设定时间是早上6:00更新
代码如图所示(部分):



(2)定时任务挂到linux服务器后台,等待更新

nohup python3 schedule_job.py > schedule_job.log 2>&1 &

nohup :不挂断地运行命令

2>&1 将错误输出到终端,这里将输出定向到日志文件

& 放在命令到结尾,表示后台运行
(3)验证schedule程序是否顺利挂在后台

ps aux| grep schedule_job.py

四、可视化报表搭建

(一)总体销售情况展示

总体销售情况

(二)最近21天销售趋势图

最近21天销售趋势图

(三)区域销售详情图

区域销售详情图

`

相关文章

网友评论

      本文标题:Adventure项目分析(二)

      本文链接:https://www.haomeiwen.com/subject/bbsrrktx.html