Adventure項(xiàng)目分析(二)

本文是基于實(shí)現(xiàn)第一階段的業(yè)務(wù)目標(biāo)后,使用python、數(shù)據(jù)倉庫實(shí)現(xiàn)的自主更新可視化看板。

項(xiàng)目目錄

  • 項(xiàng)目介紹
  • 分析思路
  • 數(shù)據(jù)自動(dòng)化處理過程
  • 可視化報(bào)表搭建

一、項(xiàng)目介紹

基于已經(jīng)實(shí)現(xiàn)第一階段的業(yè)務(wù)需求后,公司希望業(yè)務(wù)部門能夠?qū)崿F(xiàn)自主分析,從而實(shí)現(xiàn)對市場的快速判斷,因此,要求數(shù)據(jù)部門和業(yè)務(wù)部門溝通需求的自主分析的數(shù)據(jù)指標(biāo),從而實(shí)現(xiàn)可視化看板。

二、分析思路

(一)項(xiàng)目操作流程

(二)項(xiàng)目解決思路

三、數(shù)據(jù)自動(dòng)化處理過程

(一)聚合生成dw_order_by_day表

從mysql數(shù)據(jù)庫中獲取ods_sales_orders訂單明細(xì)表并按日期分組聚合,得到每日銷量和每日銷售額。讀取日期維度表,與上表合并,得到dw_order_by_day每日環(huán)比表。
代碼如圖所示(部分):


(二)聚合生成dw_order_diff表

因?yàn)樵谏弦徊街幸呀?jīng)得到了dw_order_by_day每日環(huán)比表,將當(dāng)前時(shí)間維度和去年同期維度下相同字段進(jìn)行聚合,在計(jì)算銷售額,銷售量,和客單價(jià)的同比。
代碼如圖所示(部分):


(三)聚合生成update_sum_data表

獲取ods_sales_orders訂單明細(xì)表和ods_customer,并進(jìn)行連接,按照訂單日期/產(chǎn)品名/產(chǎn)品子類/產(chǎn)品類別/所在區(qū)域/所在省份/所在城市分組聚合,在獲取日期維度表,進(jìn)行連接,得到sum_customer_order
代碼如圖所示(部分):


(四)在Linux上做定時(shí)部署

把定時(shí)更新的任務(wù)寫到schedule.py上,然后將我們寫好的schedule.py文件掛到后臺(tái)
(1)定時(shí)更新dw_order_by_day,dw_order_diff,dw_customer_order表的schedule.py文件,導(dǎo)入schedule 模塊實(shí)現(xiàn)定時(shí)更新,設(shè)定時(shí)間是早上6:00更新
代碼如圖所示(部分):



(2)定時(shí)任務(wù)掛到linux服務(wù)器后臺(tái),等待更新

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

nohup :不掛斷地運(yùn)行命令

2>&1 將錯(cuò)誤輸出到終端,這里將輸出定向到日志文件

& 放在命令到結(jié)尾,表示后臺(tái)運(yùn)行
(3)驗(yàn)證schedule程序是否順利掛在后臺(tái)

ps aux| grep schedule_job.py

四、可視化報(bào)表搭建

(一)總體銷售情況展示

總體銷售情況

(二)最近21天銷售趨勢圖

最近21天銷售趨勢圖

(三)區(qū)域銷售詳情圖

區(qū)域銷售詳情圖

`

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容