MaxCompute支持您将MaxCompute项目数据接入Superset,帮助您快速、轻量、直观地探索和可视化分析数据。本文为您介绍如何通过PyODPS连接Superset和MaxCompute项目,并进行可视化数据分析。
背景信息
Apache Superset是一个现代数据探索和可视化平台,具有丰富的从简单的折线图到高度详细的地理空间图表的图表形态。更多Superset信息,请参见Superset。
前提条件
在执行操作前,请确认您已满足如下条件:
已创建MaxCompute项目。
更多创建MaxCompute项目操作,请参见创建MaxCompute项目。
已获取可访问MaxCompute项目的AccessKey ID和AccessKey Secret。
您可以进入AccessKey管理页面获取AccessKey ID和AccessKey Secret。
已安装Superset。
您可以按照Superset官方资料安装,请参见Superset文档。您还可以通过Docker方式安装Superset并按照官方资料执行额外步骤,请参见添加驱动(Docker)。
本文中的Superset示例版本为v1.1.0。
已安装或更新v0.10.7及以上版本的PyODPS。
建议使用Python 3安装PyODPS,更多安装操作,请参见安装PyODPS。
本文中的PyODPS示例版本为v0.10.7。
步骤一:连接Superset和MaxCompute
启动Superset,进入Superset界面。
更多启动操作信息,请参见Superset文档。
在顶部菜单栏,选择 后,在右侧单击+DATABASE。
在数据源配置界面填写下表所列参数信息。
参数
说明
DATABASE NAME
新建数据连接的名称,用于在系统中区分不同数据库的连接。
SQLALCHEMY URI
连接MaxCompute项目的SQLAlchemy连接串。格式为
odps://<accesskey_id>:<accesskey_secret>@<MaxCompute_project_name>/?endpoint=<MaxCompute_endpoint>
。配置时删除<>
符号。参数说明如下:accesskey_id:必填。具备目标MaxCompute项目访问权限的AccessKey ID。
您可以进入AccessKey管理页面获取AccessKey ID。
accesskey_secret:必填。AccessKey ID对应的AccessKey Secret。
您可以进入AccessKey管理页面获取AccessKey Secret。
<MaxCompute_project_name>:必填。待连接的目标MaxCompute项目名称。
此处为MaxCompute项目名称,非工作空间名称。您可以登录MaxCompute控制台,左上角切换地域后,即可在项目管理页面查看到具体的MaxCompute项目名称。
<MaxCompute_endpoint>:必填。MaxCompute项目所属区域的Endpoint。
各地域的Endpoint信息,请参见Endpoint。
如果您需要启用查询加速功能,需要在SQLAlchemy连接串后增加如下参数。
参数
取值
说明
interactive_mode
true
查询加速功能总开关。
reuse_odps
true
可选。启用强制复用连接模式,建议开启。Superset默认对每个SQL请求强制重新创建连接,启用此模式后可以更方便地创建连接。
fallback_policy
unsupported
upgrading
noresource
timeout
generic
default
all
可选。控制查询加速失败时的回退行为。格式为
<policy1>,<policy2>...
。支持的policy
如下:unsupported:不支持查询加速功能时,回退到离线模式。
upgrading:升级过程中回退到离线模式。
noresource:资源不足时回退到离线模式。
timeout:连接超时回退到离线模式。
generic:发生未知错误时回退到离线模式。
default:等同于同时指定unsupported、upgrading、noresource和timeout。如果SQLAlchemy连接串中未指定fallback_policy,则此项为默认值。
all:将在所有情况下回退到离线模式。
基于上述解释,打开查询加速功能、启用强制复用连接模式、在查询加速功能尚未支持、升级中和资源不足时回退到离线模式的SQLAlchemy连接串示例为:
odps://<accesskey_id>:<accesskey_secret>@<MaxCompute_project_name>/?endpoint=<MaxCompute_endpoint>&interactive_mode=true&reuse_odps=true&fallback_policy=unsupported,upgrading,noresource
。单击TEST CONNECTION,右下角出现提示 Connection looks good!时代表可以连接成功,单击ADD即可将MaxCompute项目添加至Superset。
步骤二:使用Superset查询及分析数据
完成数据源配置后,您可以通过添加数据集,对特定表进行查询和可视化分析。您可以执行如下操作,更多操作请参见Superset帮助。
查看所有表
在Superset界面的顶部菜单栏,选择
后,在右侧单击+DATASET。在Add dataset对话框选择您创建的Database(数据连接)、Schema(MaxCompute项目名称)即可查看所有表信息。查看表结构
在Superset界面的顶部菜单栏,选择
后,在右侧单击+DATASET。在Add dataset对话框选择您创建的Database(数据连接)、Schema(MaxCompute项目名称)及Table(表)后,单击ADD即可查看表结构信息。查看表数据
您可以通过SQL编辑器输入并运行SQL脚本,即可查看表数据信息。
可视化分析数据
在Datasets界面,您可以单击目标表后,选择图表类型并配置属性,即可根据实际业务诉求开展数据分析。