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