Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

将 Superset 连接到 ClickHouse

支持 ClickHouse

Apache Superset 是一个使用 Python 编写的开源数据探索与可视化平台。Superset 通过 ClickHouse 提供的 Python 驱动 连接到 ClickHouse。下面来看看它是如何工作的……

目标

在本指南中,您将使用 ClickHouse 数据库中的数据在 Superset 中构建一个仪表盘。该仪表盘将如下所示:

显示英国房价的 Superset 仪表盘,包含多个可视化图表,包括饼图和表格

准备好连接信息

要通过 HTTP(S) 连接到 ClickHouse,你需要以下信息:

Parameter(s) Description
HOST and PORT 通常,使用 TLS 时端口为 8443;不使用 TLS 时端口为 8123。
DATABASE NAME 默认情况下,存在一个名为 default 的数据库。请使用你要连接的数据库名称。
USERNAME and PASSWORD 默认情况下,用户名为 default。请根据你的使用场景使用相应的用户名。

你的 ClickHouse Cloud 服务的连接信息可在 ClickHouse Cloud 控制台中查看。 选择一个服务,然后点击 Connect

ClickHouse Cloud 服务连接按钮

选择 HTTPS。连接信息会显示在示例 curl 命令中。

ClickHouse Cloud HTTPS 连接信息

如果你使用的是自管理 ClickHouse,则连接信息由你的 ClickHouse 管理员配置。

安装驱动程序

  1. Superset 使用 clickhouse-connect 驱动连接到 ClickHouse。有关 clickhouse-connect 的详细信息,请参见 https://pypi.org/project/clickhouse-connect/;可使用以下命令安装:

    pip install clickhouse-connect
  1. 启动 (或重启) Superset。

将 Superset 连接到 ClickHouse

  1. 在 Superset 中,从顶部菜单选择 Data,然后在下拉菜单中选择 Databases。点击 + Database 按钮添加新数据库:
Superset 界面显示 Database 菜单,并高亮了 + Database 按钮

  1. 在第一步中,选择 ClickHouse Connect 作为数据库类型:
Superset 数据库连接向导,显示已选中 ClickHouse Connect 选项

  1. 在第二步中:
  • 将 SSL 设置为开启或关闭。
  • 输入你之前收集的连接信息。
  • 指定 DISPLAY NAME:可以使用你喜欢的任意名称。如果你要连接多个 ClickHouse 数据库,建议将名称设得更具描述性。
Superset 连接配置表单,显示 ClickHouse 连接参数

  1. 点击 CONNECT,然后点击 FINISH 按钮完成设置向导,随后你应该会在数据库列表中看到你的数据库。

添加数据集

  1. 要在 Superset 中与 ClickHouse 数据交互,你需要定义一个 数据集。在 Superset 顶部菜单中,选择 Data,然后从下拉菜单中选择 Datasets

  2. 点击添加数据集的按钮。选择你新建的数据库作为数据源,你应该会看到该数据库中定义的表:

Superset 数据集创建对话框,显示来自 ClickHouse 数据库的可用表

  1. 点击对话框底部的 ADD 按钮后,你的表就会出现在数据集列表中。现在,你已经可以开始构建仪表盘并分析 ClickHouse 数据了!

在 Superset 中创建图表和仪表盘

如果你熟悉 Superset,那么接下来这一部分会让你觉得很顺手。如果你是第一次接触 Superset,嗯……它和市面上许多优秀的可视化工具类似——上手很快,但其中的细节和门道需要在使用过程中慢慢积累。

  1. 先从仪表盘开始。在 Superset 顶部菜单中,选择 Dashboards。点击右上角的按钮,新建一个仪表盘。下面这个仪表盘名为 UK property prices
名为 UK property prices 的空白 Superset 仪表盘,等待添加图表

  1. 要创建新图表,请在顶部菜单中选择 Charts,然后点击按钮新建图表。你会看到很多选项。下面的示例展示了一个 Pie Chart 图表,它使用 CHOOSE A DATASET 下拉菜单中的 uk_price_paid 数据集:
Superset 图表创建界面,已选择 Pie Chart 可视化类型

  1. Superset 的饼图需要一个 Dimension 和一个 Metric,其余设置都是可选的。你可以自行选择用作维度和指标的字段;本示例使用 ClickHouse 字段 district 作为维度,使用 AVG(price) 作为指标。
维度配置,显示为饼图选择了 district 字段
指标配置,显示为饼图选择了 AVG(price) 聚合函数

  1. 如果你更喜欢环形图而不是饼图,也可以在 CUSTOMIZE 下设置该选项以及其他选项:
自定义面板,显示环形图选项和其他饼图配置设置

  1. 点击 SAVE 按钮保存图表,然后在 ADD TO DASHBOARD 下拉菜单中选择 UK property prices,再点击 SAVE & GO TO DASHBOARD,即可保存图表并将其添加到仪表盘:
保存图表对话框,包含仪表盘选择下拉菜单和 Save & Go to Dashboard 按钮

  1. 就这些了。基于 ClickHouse 中的数据在 Superset 中构建仪表盘,将为你打开一个高速数据分析的新世界!
已完成的 Superset 仪表盘,包含多个基于 ClickHouse 中英国房产价格数据的可视化图表

Navigation