目录

一、简介

二、Metabase入门级实践

三、ETL配置结合Python提取数据

四、生成图表看板


一、简介

1. Metabase:一个数据分析工具,可以用来查询数据、定制报表、数据可视化。

2. ETL:数据仓库技术,是英文Extract-Transform-Load的缩写。用来描述将数据从来源端经过抽取(Extract)、转换(Transform)、加载(Load)至目的端的过程。

二、Metabase入门级实践

1. 主页

etree python 参数 python做etl_sql

 1)根据你的数据实时这些透视:该区域显示一些数据表

 2)分析:显示所有的仪表盘、问题和定时任务

 3)我们的数据:已连接到Metabase的数据库的列表

2. 创建问题

 1)简单查询:挑选并浏览数据,添加简单的过滤或聚合,然后将数据可视化

etree python 参数 python做etl_数据_02

 2)自定义查询:使用高级查询编辑器完成关联,创建自定义列,实现数学计算等更多高级功能

etree python 参数 python做etl_etree python 参数_03

 3)原生查询:通过写下自己的sql或者原生查询,回答更多复杂的疑问

etree python 参数 python做etl_sql_04

3. 数据可视化

 1)可以看到以上三个类型的”创建问题“,左下方都有”可视化“的按钮,点击按钮后,可配置”可视化方式“

etree python 参数 python做etl_etree python 参数_05

 2)假如我选择”组合“,也就是折线图和柱状图的组合,然后配置下图中的”数据、显示、坐标轴和标签”,即可形成类似右侧的图表

etree python 参数 python做etl_sql_06

4. 保存问题并生成图表看板

 1)完成数据可视化配置后,就可点击右上角的“保存”按钮,然后配置问题名字以及选择集合,点击保存按钮即可

etree python 参数 python做etl_sql_07

 2)保存问题后,会提示添加到仪表盘,添加后如下图所示(该仪表盘中有两个问题,且显示为图表的形式)

etree python 参数 python做etl_python_08

三、ETL配置结合Python提取数据

备注:ETL是一个工具,可以结合sql和python,生成新表。因为该工具是公司开发的,未开源,所以以下简单介绍一下用法。

1. 配置一个python文件(简称task),主要包含”表信息“、用于抽取数据的”sql语句“和用于处理sql中字段值的”python语句“

 1)表信息(task_info):配置task类型方式(纯sql、sql+python)、表名、表字段、数据库信息等

 2)sql语句(extract):比如:select * from table_name where age>=18

 3)加载(preload):就是每次更新新表时,把历史数据全部清空。比如:delete from table_name

 4)”python语句“(transform):如果表中字段type的值是一段json,我想取出其中的某个值,就要用python取出来

比如type的值格式是:{"rate": "0.045", "days": "30"},那么我如果只想取days作为新表中new_type的字段值,那么就需要python转换一下

new_type = json.loads('type')["days"]

2. 运行task后,可以按照配置在某数据库下生成一个新表,更新Metabase中的该数据库后,就可以使用Metabase查看表数据

3. 表中的数据如果需要每周期更新一次,就把task引入到run_daily.py文件(该文件中的task可按周期更新)中

四、生成图表看板

根据三中的步骤生成了新表后,就可以结合二中的”创建问题、数据可视化、保存问题并生成图表看板“一系列步骤,生成想要的图表看板