⌘+k ctrl+k
1.4 (LTS)
搜索快捷键 cmd + k | ctrl + k
Tableau – 数据可视化工具

Tableau 是一款流行的商业数据可视化工具。除了大量内置连接器外,它还通过 ODBC 和 JDBC 连接器提供通用的数据库连接。

Tableau 有两个主要版本:Desktop(桌面版)和 Online(服务器版)。

  • 对于 Desktop 版本,连接到 DuckDB 数据库类似于在 Python 等嵌入式环境中的操作。
  • 对于 Online 版本,由于 DuckDB 是进程内数据库,数据需要位于服务器本身,或者位于服务器可访问的远程数据存储桶中。

数据库创建

使用 DuckDB 数据库文件时,实际上不需要将数据集导入 DuckDB 表;只需创建数据视图即可。例如,这将为当前 DuckDB 代码库中的 h2oai Parquet 测试文件创建一个视图

CREATE VIEW h2oai AS (
    FROM read_parquet('/Users/username/duckdb/data/parquet-testing/h2oai/h2oai_group_small.parquet')
);

请注意,您应该使用本地文件的完整路径,以便 Tableau 能够找到它们。还要注意,您需要使用的驱动程序版本必须与用于创建该文件的 DuckDB 工具(例如 Python 模块、命令行)所使用的数据库格式兼容(即来自同一个发布版本)。

安装 JDBC 驱动程序

Tableau 提供了有关如何为 Tableau 安装 JDBC 驱动程序的文档。

每当您添加或修改驱动程序时,都需要重启 Tableau Desktop 和 Server。

此处提供的链接是与 Tableau 兼容的最新版 JDBC 驱动程序。如果您希望连接到数据库文件,则需要确保该文件是用兼容版本(文件格式兼容)的 DuckDB 创建的。此外,请检查是否只安装了一个版本的驱动程序,因为目前有多个文件名在使用中。

下载 JAR 文件

  • macOS:将其复制到 ~/Library/Tableau/Drivers/
  • Windows:将其复制到 C:\Program Files\Tableau\Drivers
  • Linux:将其复制到 /opt/tableau/tableau_driver/jdbc

使用 PostgreSQL 方言

如果您只是想进行一些简单的操作,可以尝试直接连接到 JDBC 驱动程序并使用 Tableau 提供的 PostgreSQL 方言。

  1. 创建一个包含视图和/或数据的 DuckDB 文件。
  2. 启动 Tableau。
  3. 在“连接 (Connect)” > “到服务器 (To a Server)” > “更多… (More…)”下,点击“其他数据库 (JDBC) (Other Databases (JDBC))”。这将弹出连接对话框。对于 URL,输入 jdbc:duckdb:/User/username/path/to/database.db。对于“方言 (Dialect)”,选择 PostgreSQL。其余字段可以忽略。

Tableau PostgreSQL

但是,诸如 median(中位数)和 percentile(百分位数)聚合函数等功能将不可用。为了使数据源连接与 PostgreSQL 方言更兼容,请使用下文所述的 DuckDB Taco 连接器。

安装 Tableau DuckDB 连接器

虽然可以使用 Tableau 提供的 PostgreSQL 方言与 DuckDB JDBC 驱动程序进行通信,但我们强烈建议使用 DuckDB Taco 连接器。此连接器已针对 Tableau 方言生成器进行了全面测试,并且比提供的 PostgreSQL 方言具有更好的兼容性

关于如何安装和使用该连接器的文档在其代码仓库中,但本质上您需要 duckdb_jdbc.taco 文件。(尽管 Tableau 文档另有说法,但真正的安全风险在于 JDBC 驱动程序代码,而不是 Taco 文件中少量的 JavaScript 代码。)

服务器 (Online)

在 Linux 上,将 Taco 文件复制到 /opt/tableau/connectors。在 Windows 上,将 Taco 文件复制到 C:\Program Files\Tableau\Connectors。然后执行以下命令以禁用签名验证

tsm configuration set -k native_api.disable_verify_connector_plugin_signature -v true
tsm pending-changes apply

最后一条命令将使用新设置重启服务器。

macOS

将 Taco 文件复制到 /Users/[User]/Documents/My Tableau Repository/Connectors 文件夹。然后通过终端(Terminal)启动 Tableau Desktop,并带上禁用签名验证的命令行参数

/Applications/Tableau\ Desktop\ ⟨year⟩.⟨quarter⟩.app/Contents/MacOS/Tableau -DDisableVerifyConnectorPluginSignature=true

您还可以通过使用以下脚本将其打包为 AppleScript

do shell script "\"/Applications/Tableau Desktop 2023.2.app/Contents/MacOS/Tableau\" -DDisableVerifyConnectorPluginSignature=true"
quit

使用 脚本编辑器 (Script Editor)(位于 /Applications/Utilities 中)创建此文件,并将其保存为打包应用程序

tableau-applescript

然后,您可以双击该程序来启动 Tableau。当您进行升级时,需要更改脚本中的应用程序名称。

Windows Desktop

将 Taco 文件复制到 C:\Users\[Windows User]\Documents\My Tableau Repository\Connectors 目录。然后从 shell 启动 Tableau Desktop,并带上 -DDisableVerifyConnectorPluginSignature=true 参数以禁用签名验证。

输出

加载完成后,您就可以针对数据运行查询了!以下是 Parquet 测试文件中第一个 H2O.ai 基准查询的结果

tableau-parquet

© 2025 DuckDB 基金会,阿姆斯特丹,荷兰
行为准则 商标使用指南