跳至主要内容

将 Superset 连接到 ClickHouse

Apache Superset 是一个用 Python 编写的开源数据探索和可视化平台。Superset 使用 ClickHouse 提供的 Python 驱动程序连接到 ClickHouse。让我们看看它是如何工作的...

目标

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

New Dashboard

添加一些数据

如果您没有要使用的数据集,可以添加其中一个示例。本指南使用 UK Price Paid 数据集,因此您可以选择它。在同一文档类别中还有其他几个可以查看的数据集。

1. 收集您的连接详细信息

要使用 HTTP(S) 连接到 ClickHouse,您需要以下信息

  • HOST 和 PORT:通常,使用 TLS 时端口为 8443,不使用 TLS 时端口为 8123。

  • 数据库名称:默认情况下,存在一个名为 default 的数据库,使用您要连接到的数据库的名称。

  • 用户名和密码:默认情况下,用户名为 default。使用适合您的用例的用户名。

您的 ClickHouse Cloud 服务的详细信息可在 ClickHouse Cloud 控制台中找到。选择您将连接到的服务,然后单击“连接”。

ClickHouse Cloud service connect button

选择“HTTPS”,详细信息将在一个示例 curl 命令中提供。

ClickHouse Cloud HTTPS connection details

如果您使用的是自托管 ClickHouse,则连接详细信息由您的 ClickHouse 管理员设置。

2. 安装驱动程序

  1. Superset 使用 clickhouse-connect 驱动程序连接到 ClickHouse。clickhouse-connect 的详细信息在 https://pypi.ac.cn/project/clickhouse-connect/ 中,可以使用以下命令安装它

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

3. 将 Superset 连接到 ClickHouse

  1. 在 Superset 中,从顶部菜单中选择“数据”,然后从下拉菜单中选择“数据库”。单击“+ 数据库”按钮添加一个新数据库

    Add a new database
  2. 在第一步中,选择“ClickHouse Connect”作为数据库类型

    Select ClickHouse
  3. 在第二步中

  • 启用或禁用 SSL。

  • 输入您之前收集的连接信息

  • 指定“显示名称”:这可以是您喜欢的任何名称。如果您将连接到多个 ClickHouse 数据库,则使名称更具描述性。

    Test the connection
  1. 单击“连接”和“完成”按钮以完成设置向导,您应该在数据库列表中看到您的数据库。

4. 添加数据集

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

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

    New dataset
  1. 单击对话框窗口底部的“添加”按钮,您的表将出现在数据集列表中。您已准备好构建仪表板并分析您的 ClickHouse 数据!

5. 在 Superset 中创建图表和仪表板

如果您熟悉 Superset,那么您会对下一部分感到宾至如归。如果您不熟悉 Superset,那么……它就像世界上许多其他酷炫的可视化工具一样——上手很快,但随着您使用该工具,您会逐渐了解其细节和细微差别。

  1. 您从仪表板开始。从 Superset 中的顶部菜单中,选择“仪表板”。单击右上角的按钮以添加一个新仪表板。以下仪表板名为“英国房价”。

    New dashboard
  2. 要创建新图表,从顶部菜单中选择“图表”,然后单击按钮以添加新图表。您将看到许多选项。以下示例使用“选择数据集”下拉菜单中的“uk_price_paid”数据集显示了“饼图”图表

    New chart
  3. Superset 饼图需要“维度”和“指标”,其他设置是可选的。您可以为维度和指标选择自己的字段,本示例使用 ClickHouse 字段 district 作为维度,使用 AVG(price) 作为指标。

    The SUM metricThe SUM metric
  4. 如果您更喜欢圆环图而不是饼图,那么您可以在“自定义”下设置该选项和其他选项

    Add Chart to Dashboard
  5. 单击“保存”按钮保存图表,然后在“添加到仪表板”下拉菜单中选择“英国房价”,然后“保存并转到仪表板”将保存图表并将其添加到仪表板

    Add Chart to Dashboard
  6. 就是这样。构建基于 ClickHouse 中数据的 Superset 仪表板打开了快速数据分析的全新世界!

    New Dashboard