Adventure项目详情

本文是对Adventure案例的一个总结,记录了整个项目需求分析与实现的过程,主要任务是使用Hive SQL和python代码完成ETL过程,并且连接到PowerBI实现可视化。中间加入了个人的一些思考,最终将整个分析成果展示出来。

分析成果:

分析基本思路图:

本文目录:

项目背景介绍

需求分析与实现

报表制作

一、项目背景介绍:

Adventure是Adventure样本数据库所虚构的公司,这是一家在全国范围内销售自行车及其周边产品的公司。

1、产品介绍

这家公司主要有下面四个产品线:

自行车;

自行车部件,例如车轮,踏板或制动组件;

自行车服装;

自行车配件。

2、分析背景和目的:

2019年12月业务组组长需要向领导汇报2019年11月自行车销售情况,为精细化运营提供数据支持,能精准的定位目标客户群体。

二、需求分析与实现

项目任务

从Hive数据库中读取数据

探索数据库并罗列分析指标

汇总数据并存入数据库中

1、数据导入

目标:源数据存储在hive数据库中,通过sql语句和python代码提取源数据,进行清洗,整合计算。

2、探索数据并罗列分析指标

目的:了解数据库包含哪些信息,根据业务需要,罗列可分析的指标。

(1)查看数据库,了解包含哪些可用信息

数据库共有3个表:

订单明细表:ods_sales_orders

每日新增用户表:ods_customer

日期维度表:dim_date_df

表名与解释

  (2)明确分析目标和需求,分解任务

结合项目目标和现有数据,根据分析目标,需要生成如下三个表,每个表所包含的列如下所示

(3)数据分析与初步整理

a. E-R图

通过E-R图进一步分析事实表与各维度表之间的关联,比如dw_order_by_day,以"create_date"为索引,通过对ods_sales_orders的"unit_price"求和,"customer_key"求总个数,然后和dim_date_df中的"create_date"字段进行merge操作。

dw_customer_order首先通过"customer_key"连接”ods_sales_orders“和"ods_customer",对各个字段进行计算,随后计算结果和"dim_date_df"通过字段"create_date"字段联系。

b. 指标体系

分析维度:

时间维度——年、季度、月、周、日

地区维度——销售大区、州/省、城市

产品维度——产品类别、产品子类

分析指标:

总销售额

总订单量

客单价=总销售额/客户总数

销售额、销量目标达成率

不同维度(时间、地区、产品)下的销售额、订单量

3、计算汇总数据

目的:根据实际业务需要,对已经建立好的基础层数据进行加工聚合,然后存入部门数据库中。

dw_order_by_day表

dw_amount_diff表

dw_customer_order表

log日志文件

定时自动更新数据代码

三、报表制作

目的:将汇总层数据导入Power BI,建立各表之间的关联,并制作销售报表。

1、数据导入

将Power BI连接到hive数据库,将加工后的事实表导入。

3、制作报表

选择合适的可视化工具,从多个维度展示销售情况。

(1)数据清洗

数据格式:hive数据库中的数据导入后,可能需要进行格式转换。比如文本格式转换为日期格式,文本格式转换为整数格式,文本格式转换为小数格式,小数格式转换为百分比格式。虽然在汇总层中已经将日期处理成yyyy-mm-dd格式,但是在Power BI中默认是文本格式,要进行设置。这里想说明一点,虽然Power BI中可以设置格式,但是最好还是回到hive中进行数据清洗,否则刷新数据时可能会出现格式不匹配。

新建度量值:对于新增的客单价、收入利润率等指标,可以通过新建度量值的方式进行处理。当然,最好还是在hive中创建字段,这样代码对其他项目做销售数据分析更有借鉴意义。

(2)核心操作

可视化工具:这里用到的可视化工具柱形图、仪表、卡片、柱状图、切片器、地图等。可以根据需要选择图例、轴、列,以及设置数据处理方式,求和、平均值、最大值、最小值等。

筛选器:有三种筛选器:视觉对象、此页、所有页面。这里用于日期、区域等字段的筛选。

书签窗格:这里将按钮和书签结合使用,用于制作导航栏和动态图表。

选择窗格:可以选择显示/隐藏视觉对象,这里用于bike和非bike类商品图表的切换显示。

(3)报表展示

报表一共有3页,包括主页、区域分布图、月份/季度/年同比图。

a. 主页展示内容:

今年基本销售指标,包括销售额、订单量、客单价、销售额目标完成率等

从时间维度分析今天销售情况,并和去年的今天做同期比较

分析自行车产品销量TOP10的情况

b. 从地区维度分析在各大区、各省市的销售情况

c.从时间维度分析昨天销售情况,并和去年的昨天做同期比较

d.从时间维度分析本月销售情况,并和去年的同一月份做同期比较


d.从时间维度分析本季度销售情况,并和去年的同一季度做同期比较

d.从时间维度分析今年销售情况,并和去年进行比较

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,723评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,003评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,512评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,825评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,874评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,841评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,812评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,582评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,033评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,309评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,450评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,158评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,789评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,409评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,609评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,440评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,357评论 2 352