跳到主要内容
跳到主要内容

将 Metabase 连接到 ClickHouse

Partner Integration

Metabase 是一个易于使用的开源 UI 工具,可用于对你的数据进行查询和分析。Metabase 是一个 Java 应用程序,只需下载 JAR 文件并使用 java -jar metabase.jar 运行即可。Metabase 通过 JDBC 驱动程序连接到 ClickHouse,你需要下载该驱动并将其放入 plugins 目录中:

目标

在本指南中,您将使用 Metabase 针对 ClickHouse 数据提出一些问题,并将答案进行可视化展示。其中一个结果如下所示:

Metabase 饼图可视化展示来自 ClickHouse 的数据

添加一些数据

如果您目前没有可用的数据集,可以添加一个示例数据集。本指南使用 UK Price Paid 数据集,您可以选择使用该数据集。同一文档类别下还有其他几个示例可供参考。

1. 收集连接详细信息

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

参数说明
HOSTPORT通常,在使用 TLS 时端口为 8443,不使用 TLS 时端口为 8123。
DATABASE NAME默认提供一个名为 default 的数据库,请填写您要连接的目标数据库名称。
USERNAMEPASSWORD默认用户名为 default。请使用适合您使用场景的用户名。

您的 ClickHouse Cloud 服务的详细信息可以在 ClickHouse Cloud 控制台中查看。 选择某个服务并点击 Connect

ClickHouse Cloud 服务 Connect 按钮

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

ClickHouse Cloud HTTPS 连接信息

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

2. 下载用于 Metabase 的 ClickHouse 插件

  1. 如果还没有 plugins 文件夹,请在保存 metabase.jar 的目录下创建一个名为 plugins 的子文件夹。

  2. 插件是一个名为 clickhouse.metabase-driver.jar 的 JAR 文件。请在 https://github.com/clickhouse/metabase-clickhouse-driver/releases/latest 下载该 JAR 文件的最新版本。

  3. clickhouse.metabase-driver.jar 保存到你的 plugins 文件夹中。

  4. 启动(或重新启动)Metabase,以便正确加载该驱动。

  5. 通过 http://hostname:3000 访问 Metabase。首次启动时,你会看到一个欢迎界面,并需要依次回答一系列问题。如果在此过程中提示你选择数据库,请选择 "I'll add my data later":

3. 将 Metabase 连接到 ClickHouse

  1. 点击右上角的齿轮图标并选择 Admin Settings,进入 Metabase 管理页面

  2. 点击 Add a database。或者,可以点击 Databases 选项卡并选择 Add database 按钮。

  3. 如果驱动安装成功,你会在 Database type 的下拉菜单中看到 ClickHouse

    Metabase 数据库选择界面显示 ClickHouse 作为一个可选项
  4. 为你的数据库设置一个 Display name。这是 Metabase 中的一个设置项,因此可以使用任意你喜欢的名称。

  5. 输入 ClickHouse 数据库的连接信息。如果你的 ClickHouse 服务器配置为使用 SSL,请启用安全连接。例如:

    用于 ClickHouse 数据库的 Metabase 连接信息表单
  6. 点击 Save 按钮,Metabase 将扫描你的数据库以检测其中的表。

4. 运行 SQL 查询

  1. 点击右上角的 Exit admin 按钮退出 Admin settings

  2. 在右上角点击 + New 菜单,可以看到你可以创建问题、运行 SQL 查询以及构建仪表盘:

    Metabase New 菜单显示用于创建问题、SQL 查询和仪表盘的选项
  3. 例如,下面是在名为 uk_price_paid 的表上运行的 SQL 查询,它返回 1995 到 2022 年间按年份统计的平均支付金额:

    Metabase SQL 编辑器,展示了针对英国支付价格数据的查询

5. 创建问题

  1. 点击 + New 并选择 Question。请注意,您可以从选择数据库和数据表开始构建一个问题。例如,下面的问题是针对 default 数据库中名为 uk_price_paid 的表提问的。以下是一个简单的问题,用于计算大曼彻斯特郡各城镇的平均价格:

    Metabase 问题构建界面展示英国房价数据
  2. 点击 Visualize 按钮,在表格视图中查看结果。

    Metabase 可视化界面显示按城镇划分的平均价格表格结果
  3. 在结果下方,点击 Visualization 按钮,将可视化类型更改为柱状图(或其他任意可用选项):

    Metabase 饼图可视化展示大曼彻斯特郡各城镇的平均价格

了解更多

通过查阅Metabase 文档,了解更多关于 Metabase 及如何构建仪表盘的信息。