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

连接Tableau到ClickHouse

ClickHouse提供了一个官方的Tableau连接器,可在 Tableau Exchange找到。 该连接器基于ClickHouse的先进 JDBC驱动程序

通过此连接器,Tableau将ClickHouse数据库和表集成作为数据源。要启用此功能, 请按照下面的设置指南进行操作。

使用前所需的设置

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

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

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

    • 数据库名称:开箱即用时,有一个名为 default 的数据库,请使用您要连接的数据库名称。

    • 用户名和密码:开箱即用时,用户名为 default。请使用适合您用例的用户名。

    您的 ClickHouse Cloud 服务详细信息可在 ClickHouse Cloud 控制台中找到。 选择您要连接的服务并点击 Connect

    ClickHouse Cloud 服务连接按钮

    选择 HTTPS,详细信息会在示例 curl 命令中提供。

    ClickHouse Cloud HTTPS 连接详细信息

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

  2. 下载并安装 Tableau desktop

  3. 按照clickhouse-tableau-connector-jdbc的说明下载兼容版本的 ClickHouse JDBC驱动程序

备注

确保您下载clickhouse-jdbc-x.x.x-shaded-all.jar JAR文件。目前,我们建议使用版本0.8.X

  1. 将JDBC驱动程序存储在以下文件夹中(根据您的操作系统,如果文件夹不存在,您可以创建它):
    • macOS: ~/Library/Tableau/Drivers
    • Windows: C:\Program Files\Tableau\Drivers
  2. 在Tableau中配置ClickHouse数据源,并开始构建数据可视化!

在Tableau中配置ClickHouse数据源

现在您已经安装并设置好clickhouse-jdbc驱动程序,接下来让我们看看如何定义一个连接到ClickHouse中TPCD数据库的数据源。

  1. 启动Tableau。(如果您已经在运行它,请重新启动。)

  2. 在左侧菜单中,单击To a Server部分下的More。在可用连接器列表中搜索ClickHouse by ClickHouse

ClickHouse JDBC
备注

在连接器列表中看不到ClickHouse by ClickHouse连接器?这可能与旧版的Tableau Desktop有关。 为了解决这个问题,考虑升级您的Tableau Desktop应用程序,或手动安装连接器

  1. 单击ClickHouse by ClickHouse,将弹出以下对话框:
ClickHouse JDBC Connector Details
  1. 单击Install and Restart Tableau。重启应用程序。
  2. 重启后,连接器的完整名称将为:ClickHouse JDBC by ClickHouse, Inc.。单击它时将弹出以下对话框:
ClickHouse JDBC Connector Details Details
  1. 输入您的连接详细信息:

    设置
    服务器您的ClickHouse主机(无前缀或后缀)
    端口8443
    数据库default
    用户名default
    密码****
备注

在使用ClickHouse云时,需要勾选SSL复选框以进行安全连接。


备注

我们的ClickHouse数据库命名为TPCD,但您必须在上面的对话框中将数据库设置为default,然后在下一步中选择TPCD作为模式。 (这很可能是由于连接器中的一个bug,因此这个行为可能会改变,但现在您必须将default用作为数据库。)

  1. 单击Sign In按钮,您应该会看到一个新的Tableau工作簿:
New Workbook
  1. Schema下拉菜单中选择TPCD,您应该会看到TPCD中的表列表:
Select TPCD for the Schema

您现在可以在Tableau中构建一些可视化了!

在Tableau中构建可视化

现在您在Tableau中配置了ClickHouse数据源,让我们可视化这些数据...

  1. CUSTOMER表拖动到工作簿中。注意,列显示,但是数据表为空:
Tableau workbook
  1. 单击Update Now按钮,CUSTOMER中的100行将填充到表中。

  2. ORDERS表拖入工作簿,然后将Custkey设置为两个表之间的关系字段:

Tableau workbook
  1. 现在您有ORDERSLINEITEM表相互关联作为您的数据源,因此您可以利用这个关系回答有关数据的问题。选择工作簿底部的Sheet 1选项卡。
Tableau workbook
  1. 假设您想知道每年订购了多少特定的物品。将OrderDateORDERS拖入Columns部分(水平字段),然后将QuantityLINEITEM拖入Rows。Tableau将生成以下折线图:
Tableau workbook

这不是一个非常吸引人的折线图,但数据集是由脚本生成并构建用于测试查询性能的,因此您会注意到模拟的TCPD数据的订单变化不多。

  1. 假设您想知道每季度及按运输方式(空运、邮件、船运、卡车等)的平均订单金额(以美元计):

    • 单击New Worksheet选项卡以创建新工作表
    • OrderDateORDERS拖入Columns并将其从Year更改为Quarter
    • ShipmodeLINEITEM拖入Rows

您应该会看到以下内容:

Tableau workbook
  1. Abc值只是填充空间,直到您将度量拖入表中。将TotalpriceORDERS拖到表中。注意默认计算会对Totalprices进行SUM
Tableau workbook
  1. 单击SUM并将Measure更改为Average。从相同的下拉菜单中,选择Format并将Numbers更改为Currency (Standard)
Tableau workbook

干得好!您已经成功将Tableau连接到ClickHouse,并为分析和可视化您的ClickHouse数据打开了一个全新的可能性世界。

手动安装连接器

如果您使用的是不包含连接器的过时Tableau Desktop版本,您可以通过以下步骤手动安装它:

  1. Tableau Exchange下载最新的taco文件
  2. 将taco文件放置在
    • macOS: ~/Documents/My Tableau Repository/Connectors
    • Windows: C:\Users\[Windows User]\Documents\My Tableau Repository\Connectors
  3. 重启Tableau Desktop,如果您的设置成功,您将在New Data Source部分下设置连接器。

连接和分析提示

有关优化您的Tableau-ClickHouse集成的更多指导, 请访问Connection TipsAnalysis Tips

测试

该连接器正在使用TDVT框架进行测试,目前保持97%的覆盖率。

摘要

您可以使用通用的ODBC/JDBC ClickHouse驱动程序将Tableau连接到ClickHouse。但是,此 连接器简化了连接设置过程。如果您在使用该连接器时遇到任何问题,请随时在GitHub上联系。