轻松搭建一个BI销售数据分析系统

    xiaoxiao2025-11-28  25

    通过最佳实践帮助您实现上述案例效果

    Step1:准备工作

    1.1 新建表

    1.1.1 开通MaxCompute阿里云实名认证账号访问https://www.aliyun.com/product/odps ,开通MaxCompute,选择按量付费进行购买。

    https://img.alicdn.com/tps/TB1TxkNOVXXXXaUaXXXXXXXXXXX-1124-472.png" width="836">

    https://img.alicdn.com/tps/TB1qRw3OVXXXXX_XFXXXXXXXXXX-1243-351.png" width="836">

    https://img.alicdn.com/tps/TB1gvgQOVXXXXXUXVXXXXXXXXXX-1208-337.png" width="836">

    1.1.2 数加上创建MaxCompute project

    操作步骤:

    步骤1: 进入数加管理控制台,前面开通MaxCompute成功页面,点击管理控制台,或者导航产品->大数据(数加)->MaxCompute 点击管理控制台。

    https://img.alicdn.com/tps/TB1G7o4OVXXXXXEXFXXXXXXXXXX-1281-473.png" width="836">

    步骤2: 创建项目。付费模式选择I/O后付费,输入项目名称:

    https://img.alicdn.com/tps/TB1SY78OVXXXXcqXpXXXXXXXXXX-1347-590.png" width="836">

    步骤3: 创建MaxCompute表。进入大数据开发套件的数据开发页面:

    以开发者身份进入阿里云数加平台>大数据开发套件>管理控制台,点击对应项目操作栏中的进入工作区

    创建脚本文件。点击顶部菜单栏中的数据开发,点击“新建”处新建脚本,也可直接点击“新建脚本”任务框

    编辑建表语句

    —-创建在线交易表: CREATE TABLE IF NOT EXISTS demo_dplus_good_sale ( create_time DATETIME COMMENT '时间', good_cate STRING COMMENT '商品种类', brand STRING COMMENT '品牌', buyer_id STRING COMMENT '用户id', trans_num BIGINT COMMENT '交易量', trans_amount DOUBLE COMMENT '金额', click_cnt BIGINT COMMENT '点击次数', addcart_cnt BIGINT COMMENT '加入购物车次数', collect_cnt BIGINT COMMENT '加入收藏夹次数' ); —-创建用户信息表: CREATE TABLE IF NOT EXISTS demo_dplus_buyer ( buyer_id STRING COMMENT '用户id', buyer_prov STRING COMMENT '省份', gender STRING COMMENT '性别', age_range STRING COMMENT '年龄段', zodiac STRING COMMENT '星座' ); --结果数据存储表: --涵盖绝大多数维度和指标的汇总表: CREATE TABLE IF NOT EXISTS demo_dplus_summary ( prov STRING COMMENT '省份', gender STRING COMMENT '性别', age_range STRING COMMENT '年龄段', zodiac STRING COMMENT '星座', good_cate STRING COMMENT '商品种类', brand STRING COMMENT '品牌', trans_num BIGINT COMMENT '交易量', trans_amount DOUBLE COMMENT '金额', click_cnt BIGINT COMMENT '点击次数', addcart_cnt BIGINT COMMENT '加入购物车次数', collect_cnt BIGINT COMMENT '加入收藏夹次数' ); --用户数的汇总表: CREATE TABLE IF NOT EXISTS demo_dplus_buyer_cnt ( buyer_cnt BIGINT COMMENT '用户数' );

    https://img.alicdn.com/tps/TB1MJwwOVXXXXaUaFXXXXXXXXXX-953-844.png" width="836">

    1.2 新建数据源

    1.2.1 以开发者身份进入阿里云数加平台>大数据开发套件>管理控制台,点击对应项目操作栏中的进入工作区

    1.2.2 点击顶部菜单栏中的项目管理,点击左侧导航数据源管理

    1.2.3 点击新增数据源

    https://img.alicdn.com/tps/TB1hMssOVXXXXaBaFXXXXXXXXXX-1271-655.png" width="836">

    RDS环境

    RDS实例ID:rm-uf635k52032xm03l0

    RDS实例购买者ID:1811270634786818

    数据库名:trainning_db1

    用户名:ram_trainning1

    密码:ram_trainning1

    1.2.4 点击测试连通性。

    1.2.5 若测试连通性成功,则点击保存按钮完成配置信息保存。

    1.3 新建任务

    1.3.1 在“数据开发”界面的工具栏中,新建任务

    1.3.2 在新建任务弹出框中填写各配置项

    https://img.alicdn.com/tps/TB1nCkyOVXXXXcnapXXXXXXXXXX-799-547.png" width="836">

    1.3.3 点击创建

    Step2:数据导入

    2.1 导入本地用户信息表到demo_dplus_buyer

    源数据地址:demo_dplus_buyer

    2.1.1 以开发者身份进入阿里云数加平台>大数据开发套件>管理控制台,点击对应项目操作栏中的进入工作区

    2.1.2 点击顶部菜单栏中的数据开发,导航至“导入”,选择导入本地数据

    2.1.3 选择本地数据文件,配置导入信息,点击下一步

    https://img.alicdn.com/tps/TB1vc.xOVXXXXclapXXXXXXXXXX-791-661.png" width="836">

    2.1.4 选择目标表,并选择字段匹配方式(本示例选择按位置匹配),点击导入

    https://img.alicdn.com/tps/TB17Kw_OVXXXXaQXpXXXXXXXXXX-793-478.png" width="836">

    2.1.5 文件导入成功后,系统右上角将提示文件导入成功,同时可以执行read语句查看数据

    https://img.alicdn.com/tps/TB17xAYOVXXXXa3XFXXXXXXXXXX-603-531.png" width="836">

    2.2 同步数据

    2.2.1 新建数据同步节点rds_to_maxcompute

    进入数据开发中的新建任务,向工作流设计器中拖入数据同步节点

    2.2.2 同步rds中在线交易表数据到demo_dplus_good_sale表

    源数据地址:demo_dplus_good_sale

    双击数据同步进入数据同步节点配置界面

    https://img.alicdn.com/tps/TB1ZkE6OVXXXXbZXpXXXXXXXXXX-981-656.png" width="836">

    https://img.alicdn.com/tps/TB1l7Z_OVXXXXbEXXXXXXXXXXXX-925-493.png" width="836">

    Step3:数据加工

    3.1 新建ODPS_SQL节点进行数据加工“交易分析”并写入数据

    3.1.1 新建ODPS_SQL节点

    进入数据开发中的新建任务,向工作流设计器中拖入ODPS_SQL节点

    https://img.alicdn.com/tps/TB1Zck1OVXXXXX8XFXXXXXXXXXX-786-337.png" width="836">

    3.1.2 双击ODPS_SQL,编写SQL语句将加工好的结果写入demo_dplus_summary表,运行成功后保存

    \----汇总表,涵盖维度省份、性别、年龄段、星座、商品种类、品牌,涵盖指标销售量、销售额、点击次数、加入购物车次数、加入收藏夹次数 INSERT OVERWRITE TABLE demo_dplus_summary SELECT buyer.buyer_prov , buyer.gender , buyer.age_range , buyer.zodiac , sale.good_cate , sale.brand , SUM(sale.trans_num) AS trans_num , SUM(sale.trans_amount) AS trans_amount , SUM(sale.click_cnt) AS click_cnt , SUM(sale.addcart_cnt) AS addcart_cnt , SUM(sale.collect_cnt) AS collect_cnt FROM demo_dplus_good_sale sale JOIN demo_dplus_buyer buyer ON sale.buyer_id = buyer.buyer_id GROUP BY buyer.buyer_prov,buyer.gender,buyer.age_range,buyer.zodiac,sale.good_cate,sale.brand ;

    https://img.alicdn.com/tps/TB1basAOVXXXXaFapXXXXXXXXXX-711-420.png" width="836">

    3.2 新建ODPS_SQL节点进行数据加工“用户数”并写入数据

    3.2.1 新建ODPS_SQL节点

    进入数据开发中的新建任务,向工作流设计器中拖入ODPS_SQL节点

    3.2.2 双击ODPS_SQL,编写SQL语句将加工好的结果写入demo_dplus_buyer_cnt表,运行成功后保存

    \----用户数汇总表 INSERT OVERWRITE TABLE demo_dplus_buyer_cnt SELECT count(distinct buyer_id) AS buyer_cnt FROM demo_dplus_good_sale;

    3.3 设置调度属性

    首先用线将工作流节点连接,表示节点执行先后顺序

    https://img.alicdn.com/tps/TB1Kt3DOVXXXXcLaXXXXXXXXXXX-484-199.png" width="484">

    然后点击右侧导航栏调度属性,设置整个工作流的调度属性,让每日的数据导入、加工自动执行

    https://img.alicdn.com/tps/TB1p.3zOVXXXXXMapXXXXXXXXXX-420-658.png" width="420">

    3.4 提交任务,并测试工作流

    3.4.1 点击顶部菜单栏提交

    https://img.alicdn.com/tps/TB1aaU5OVXXXXbsXpXXXXXXXXXX-801-513.png" width="836">

    3.4.2 提交成功后点击测试运行

    测试任务触发成功后,点击“前往运维中心”即可查看任务进度。

    https://img.alicdn.com/tps/TB1R6sGOVXXXXXhapXXXXXXXXXX-1258-831.png" width="836">

    Step4:数据展现

    4.1.1 新建BI数据源

    进入QuickBI首页,在屏幕中间点击管理控制台,就可以进入QuickBI系统新建数据源

    https://img.alicdn.com/tps/TB1I.wxOVXXXXcWapXXXXXXXXXX-1079-664.png" width="836">

    4.1.2 创建数据集

    刚才创建好的数据源rds_demo下的表的列表 如下图所示:

    https://img.alicdn.com/tps/TB1Fj0hPXXXXXXtXXXXXXXXXXXX-1196-719.png" width="836">

    依次点击下面两张表后面的新建数据集按钮,创建每个表对应的数据集:

    涵盖绝大多数维度和指标的汇总表:demo_dplus_summary

    用户数的汇总表:demo_dplus_buyer_cnt

    创建成功后会自动跳转到数据集列表,如下图所示:

    https://img.alicdn.com/tps/TB1RtNaPXXXXXb3XXXXXXXXXXXX-1084-313.png" width="836">

    由于MaxCompute的主要功能是支持离线计算,为了提升查询性能,可通过加速功能对数据集进行加速。点击对应数据集后的“设为极速”,如图所示:

    https://img.alicdn.com/tps/TB1KDM8OVXXXXaIXpXXXXXXXXXX-1260-649.png" width="836">

    4.2 数据展现

    老板想要看的指标: 1.销售总额、总交易量、总点击次数、总加入购物车次数、总加入收藏夹次数用户总数和; 2.各省交易量和交易金额; 3.销售交易量和销售金额top10商品种类; 4.销售交易量和销售金额top5手机品牌 5.用户购买能力分布(性别、星座、年龄段)

    数据展现效果如下:

    4.2.1 销售总额、总交易量、总点击次数等数据展示

    1.创建仪表板

    点击左侧导航栏作品,选择新建--->新建空白仪表板,进入新建仪表板编辑页面

    https://img.alicdn.com/tps/TB15cIwOVXXXXb9apXXXXXXXXXX-486-314.png">

    在右侧画布属性显示标题老板驾驶舱

    https://img.alicdn.com/tps/TB1RAXdPXXXXXaoXXXXXXXXXXXX-814-294.png" width="836">

    2.将左侧列布局拖入仪表板,设置列数量为6

    https://img.alicdn.com/tps/TB1PcM6OVXXXXc1XpXXXXXXXXXX-1270-382.png" width="836">

    3.将指标看板分别拖入6个列布局中展示每一个指标

    https://img.alicdn.com/tps/TB166wGOVXXXXbsaXXXXXXXXXXX-1259-505.png" width="836">

    4.分别点击前五个指标看板在右侧依次设置数据和样式(度量每个指标看板选一个)

    5.第六个指标看板要改变数据集

    https://img.alicdn.com/tps/TB1W6ozOVXXXXb9apXXXXXXXXXX-264-540.png">

    6.点击更新图表,结果如下:

    4.2.2 各省交易量和交易金额的数据展示

    1.点击左侧导航栏作品,选择新建-->新建工作表,进入数据集页面

    2.选择数据集demo_dplus_summary,点击其后面的分析按钮

    https://img.alicdn.com/tps/TB1Kxk0OVXXXXbXXFXXXXXXXXXX-1199-123.png" width="836">

    3.点击工作表页面左上角的“编辑数据集”,将省份类型切换为省后保存

    4.右侧分析面板里行选择省份,列选择交易量和金额,点击下侧智能图标,如图所示:

    您可以在图上切换金额和交易量,点击保存

    5.点击左侧导航栏作品--->我的仪表盘,选择老板驾驶舱,将列布局拖入画布中间,右侧布局占比改为40(可自由修改)

    https://img.alicdn.com/tps/TB1O.wZOVXXXXbIXFXXXXXXXXXX-233-165.png">

    6.在左侧列布局里添加色彩地图,右侧添加交叉表

    https://img.alicdn.com/tps/TB1ruUzOVXXXXaIapXXXXXXXXXX-251-623.png">

    https://img.alicdn.com/tps/TB1j0w8OVXXXXbwXpXXXXXXXXXX-252-624.png">

    7.分别点击两个列布局,在右侧选择刚新建的工作表进行设置,结果如图:

    4.2.3 销售交易量top10商品种类的数据展示

    1.点击左侧导航栏作品,选择新建-->新建工作表,进入数据集页面

    2.选择数据集demo_dplus_summary,点击其后面的分析按钮

    3.右侧分析面板里行选择商品种类,列选择交易量(因为求交易量销售前十的商品种类,所以要进行设置)

    4.点击下侧智能图标,进行保存,如图所示:

    同样方法可以新建工作表求得销售金额top10的商品种类,进行保存

    4.2.4 销售交易量top5手机品牌的数据展示

    1.点击左侧导航栏作品,选择新建-->新建工作表,进入数据集页面

    2.选择数据集demo_dplus_summary,点击其后面的分析按钮

    3.右侧分析面板里行选择品牌,列选择交易量,点击高级过滤和交易量进行相关设置,进行保存

    同样方法可以新建工作表求得销售金额top5的手机品牌,进行保存

    4.点击左侧导航栏作品-->我的仪表盘,选择老板驾驶舱,将列布局拖入画布中间

    5.在两侧列布局分别拖入tab,进行命名,分别向4页tab中拖入柱状图,在右侧选择新建的工作表进行设置,点击保存,结果如图:

    4.2.5 用户购买能力分布的数据展示

    分别通过性别、星座和年龄段来对用户购买能力进行分析

    在仪表盘页面向画布拖入tab,在右侧设置tab页数为3,在每个tab页中放入tab,进行重命名

    https://img.alicdn.com/tps/TB1u6wBOVXXXXaUapXXXXXXXXXX-490-123.png">

    向用户购买能力--性别tab中拖入饼图,在右侧选择数据集demo_dplus_summary进行设置(只需改变维度和度量即可得到各自的分析),更新图表

    https://img.alicdn.com/tps/TB1cfZKOVXXXXa4aXXXXXXXXXXX-1170-474.png" width="836">

    向用户购买能力--星座tab中拖入矩形树图,在右侧选择数据集demo_dplus_summary进行设置(只需改变维度和度量即可得到各自的分析),更新图表

    https://img.alicdn.com/tps/TB1Ij3xOVXXXXc_aXXXXXXXXXXX-1169-478.png" width="836">

    向用户购买能力--性别tab中拖入饼图,在右侧选择数据集demo_dplus_summary进行设置(只需改变维度和度量即可得到各自的分析),更新图表

    https://img.alicdn.com/tps/TB1HhoyOVXXXXc6aXXXXXXXXXXX-1166-515.png" width="836">

    以上就是所有报表,记得点击保存。

    附件

    新建表demo_dplus_good_sale的源数据:demo_dplus_good_sale

    新建表demo_dplus_buyer的源数据:demo_dplus_buyer

    本实验共需新建四张表,语句为:建表语句

    数据加工过程中写入的SQL语句:SQL语句

    如您不会SQL,可以采用本教程中提供的RDS结果表信息作为数据源,jdbc连接信息如下:jdbc:mysql://rm-bp180925lcrm7xtc6.mysql.rds.aliyuncs.com:3306/bi_demo登录名:bi_demo密码:bi_demo

    点此查看本实验报表效果图

    更多示例demo:1、网站流量分析2、销售数据分析

    相关资源:python入门教程(PDF版)
    最新回复(0)