Tableau 2020.4でついにPostgreSQL12系対応がされたので早速設定してきた
SalesforceにTableauが買収されて早くも一年半が経ちました。
Dreamforce2019では非常にワクワクしたのを覚えています。
TableauにはSalesforceのネイティブコネクタが搭載され、標準データセットというセットアップまでなされているのでSalesforceのデータをTableauで可視化したいという人にとっては嬉しい悲鳴だったのではないでしょうか。
さて、SalesforceといえばHerokuです(言い過ぎ)。HerokuといえばPostgreSQLなのですが、Tableauのデータドライバは現在のPostgreSQLに対応していませんでした。そのためJDBC接続する必要があり、パフォーマンス的には出ませんね…という状況が長らく続いていたのです。
そんなTableauが、2020.4でついにPostgreSQL12系に対応したぞーーー!!
と、言うことで早速試してみました。
アップデートする:Tableau Desktop
Tableau Desktopのインストーラーはこちら。ダウンロードしてインストールするだけです。
https://www.tableau.com/support/releases/desktop/2020.4
ちなみに、M1チップのMacにはインストーラーが対応しておらずエラーが出ます。
これについては、Intel MacにインストールしたアプリケーションをAirDropで転送かければ使えます。
アップグレードする:Tableau Server
注:AWSへのインストールになっているのでユーザ名がcentosになっていますが、sudoが使えるユーザであればどれを使っても良いと思います。
rpmパッケージのダウンロードはここから。
https://www.tableau.com/ja-jp/support/releases/server/2020.4
Tableau DesktopでPostgreSQL接続を使ってみる
画面は2020.3以前とさほど変わりませんね。こちらで接続設定をしてみましょう。2020.3でPostgreSQL12系に接続すると以下のように怒られます。
2020.4にすることでこれが解消し、無事に接続することが出来ました素晴らしい!250万行くらいあるデータベースに接続してみましたが、問題なく動きました。ありがたいですね。
Tableau ServerでPostgreSQLを使ってみる
ドライバーのページを見てみましょう。
https://www.tableau.com/ja-jp/support/drivers
データソースPostgreSQL、OSをLinuxにすると…
2020.4にはデフォルトでドライバがインストール済みだそうです。ということで、早速接続。
出来た!
ただ、行数が多いとタイムアウトしてしまうかもしれない。サーバの設定の問題だと思うので要検証です。
Tableau DesktopからTableau Serverにパブリッシュする
私のやり方では、Tableau Serverでいきなり作り始めるということは普段しないので、こちらのやり方が日常です。こちらはうまくいくでしょうか。
Tableau Desktopに抽出済みの250万行のデータセットをパブリッシュしてみました。こちらについては問題なくアップロードできました。
次にワークブックをパブリッシュ。こちらも問題なくできました。表示も問題なさそうです。
最後に、パブリッシュした抽出を更新してみました。
こちらはエラーになりましたね。(2020/12/16現在)
ということで、ヘルプにケースをあげて待機しています。
2020.12.25追記:解決しました
解決方法
Tableau Serverの使用しているpostgresqlのjdbcドライバーを「/opt/tableau/tableau_driver/jdbc/」配下に(ディレクトリがなければ作成した上で)コピーして再起動する
$ mkdir -p /opt/tableau/tableau_driver/jdbc
$ cp /opt/tableau/tableau_server/packages/tabadmincontroller.20204.20.1116.1810/postgresql-42.2.11.jar /opt/tableau/tableau_driver/jdbc/
$ tsm restart
これでTableau Server上でのPostgreSQL12系への同期も問題なく通るようになりました。よかったー!
2020/12/16現在の状況
Tableau DesktopにおけるPostgreSQL利用について:問題なし
Tableau ServerにおけるPostgreSQL利用について
・Desktopからのパブリッシュについては問題なし
・Server側でデータの更新をかけるとコケる
2020/12/25現在の状況
Tableau DesktopにおけるPostgreSQL利用について:問題なし
Tableau ServerにおけるPostgreSQL利用について
・Desktopからのパブリッシュについては問題なし
・Server側でデータの更新も問題なし
現場からは以上です