Spec-Zone.ru › DuckDB

Tableau – Инструмент визуализации данных

Tableau — популярный коммерческий инструмент визуализации данных. Помимо большого числа встроенных подключений, он также предоставляет общую базу данных через подключения ODBC и JDBC.

Tableau имеет две основные версии: настольную и онлайн (серверную).

  • Для настольной версии подключение к базе данных DuckDB аналогично работе в встроенной среде, например, в Python.
  • Для онлайн-версии, поскольку DuckDB работает в процессе, данные должны находиться либо на самом сервере

либо в удалённом хранилище данных, доступном с сервера.

Создание базы данных

При использовании файла базы данных DuckDB наборы данных фактически не нужно импортировать в таблицы DuckDB; достаточно создать представления данных. Например, это создаст представление файла h2oai Parquet test в текущем кодовом базисе DuckDB:

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

Обратите внимание, что вы должны использовать полные имена файлов для локальных файлов, чтобы их можно было найти изнутри Tableau. Также обратите внимание, что вам потребуется использовать версию драйвера, совместимую (т. е., из того же выпуска) с форматом базы данных, используемым инструментом DuckDB (например, модуль Python, командная строка), который был использован для создания файла.

Установка драйвера JDBC

Tableau предоставляет документацию по установке драйвера JDBC для использования в Tableau.

Tableau (как настольная, так и серверная версии) необходимо перезапустить всякий раз, когда вы добавляете или изменяете драйвера.

Ссылки на драйверы

Ссылка здесь — для недавней версии драйвера JDBC, совместимой с Tableau. Если вы хотите подключиться к файлу базы данных, вам необходимо убедиться, что файл был создан с совместимой версией DuckDB. Также проверьте, что установлен только один драйвер, так как используются несколько имён файлов.

Загрузите JAR-файл.

  • macOS: Скопируйте его в ~/Library/Tableau/Drivers/
  • Windows: Скопируйте его в C:\Program Files\Tableau\Drivers
  • Linux: Скопируйте его в /opt/tableau/tableau_driver/jdbc.

Использование диалекта PostgreSQL

Если вы хотите выполнить что-то простое, вы можете попробовать подключиться непосредственно к драйверу JDBC и использовать диалект PostgreSQL, предоставленный Tableau.

  1. Создайте файл DuckDB, содержащий ваши представления и/или данные.
  2. Запустите Tableau
  3. В разделе «Подключиться» > «К серверу» > «Дополнительные…» нажмите на «Другие базы данных (JDBC)». Это откроет диалоговое окно подключения. В поле «URL» введите jdbc:duckdb:/User/username/path/to/database.db. В поле «Диалект» выберите PostgreSQL. Остальные поля можно игнорировать:

Tableau PostgreSQL

Однако, некоторые функции будут отсутствовать, такие как median и percentile агрегирующие функции. Чтобы сделать подключение источника данных более совместимым с диалектом PostgreSQL, используйте подключение DuckDB taco, как описано ниже.

Установка подключения Tableau DuckDB

Хотя можно использовать диалект PostgreSQL, предоставляемый Tableau, для взаимодействия с драйвером DuckDB JDBC, мы настоятельно рекомендуем использовать подключение DuckDB «taco». Это подключение было полностью протестировано против генератора диалектов Tableau и более совместимо с предоставленным диалектом PostgreSQL.

Документация по установке и использованию подключения находится в его репозитории, но в основном вам понадобится файл duckdb_jdbc.taco. (Несмотря на то, что говорит документация Tableau, реальная проблема безопасности — в коде драйвера JDBC, а не в небольшом количестве JavaScript в Taco.)

Сервер (онлайн)

В 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. Затем запустите 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

Создайте этот файл с помощью Редактора скриптов (расположенного в /Applications/Utilities) и сохраните его как упакованное приложение:

tableau-applescript

Затем вы можете дважды щелкнуть по нему, чтобы запустить Tableau. Вам потребуется изменить имя приложения в скрипте при обновлении.

Настольная версия Windows

Скопируйте файл Taco в каталог C:\Users\[Windows User]\Documents\My Tableau Repository\Connectors. Затем запустите Tableau Desktop из оболочки с аргументом -DDisableVerifyConnectorPluginSignature=true для отключения проверки подписи.

Вывод

После загрузки вы можете запускать запросы к вашим данным! Вот результат первого запроса H2O.ai benchmark из файла Parquet test:

tableau-parquet

© Copyright 2018–2024 Stichting DuckDB Foundation
Licensed under the MIT License.
https://duckdb.org/docs/guides/data_viewers/tableau.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API