この記事でわかること
米Tableau Software社が提供するセルフBIツールであるTableauには、ワークブック作成に使用されるTableau Desktop以外にもTableau Desktopで作成したものをサーバーで共有することができるTableau Serverが存在します。
今回はこのTableau Serverでダッシュボードとデータソースをパブリッシュ(サーバーにアップすること)したときに手こずった、『Tableau Serverにパブリッシュしたデータソースでデータのブレンド』を行う方法と注意点を紹介していきたいと思います。
目次
1.Tableau Serverについて
2.データのブレンド
2-1.データのブレンドとは
2-2.Tableau Serverでパブリッシュする時の注意点
3.データソースのパブリッシュ
3-1.プライマリデータソースからパブリッシュした場合(失敗例)
3-2.セカンダリデータソースからパブリッシュした場合(成功例)
4.パブリッシュ後のデータソースを使用、編集する
4-1.パブリッシュ後のデータソースで新規ワークブック作成(失敗例)
4-2.ローカルでブレンドしたデータソースを再更新してパブリッシュ(成功例)
5.最後に
1.Tableau Serverについて
Tableau Desktopで作成したダッシュボード、データソースをWebブラウザ上で共有するプラットフォームです。
Tableau Serverのインストールと構築をすることで、Serverにパブリッシュしたダッシュボードはブラウザ上で閲覧、編集することが可能です。
2.データのブレンド
2-1.データのブレンドとは
データを組み合わせてデータソースを作成する方法の一つで、プライマリデータソースとセカンダリデータソースの複数のデータソースを組み合わせて作成します。
青色のチェック:プライマリデータソース
青以外のチェック:セカンダリデータソース

データをブレンドする理由は例えば、
①別のデータソースのフィールドをフィルターや行、列シェルフに使用したい場合
②セカンダリデータソースとプライマリデータソースのメジャーを足し合わせる計算フィールドを作成したい場合
などの理由があり、今回は②の例で以下記述していきます。
計算フィールドをプライマリデータソース上に作成し、その中でセカンダリデータソースのフィールド(ディメンション、メジャー)を使うことができます。
この場合はメジャーの『Q4』を使用しており、『Q4』の頭にはセカンダリデータソースの名前がつきます。

2-2.Tableau Serverでパブリッシュする時の注意点
Tableau Serverへのパブリッシュはレポートだけでなく、データソース単位でも可能ですが、ブレンドしたデータソースを一つにまとめてパブリッシュすることができないため、別々にパブリッシュする必要があります。
その際パブリッシュする順番について注意する必要があります。
ちなみにブレンドされたデータソースをパブリッシュすると以下のような警告がでますが「OK」で大丈夫です。

3.データソースのパブリッシュ
3-1.プライマリデータソースからパブリッシュした場合(失敗例)
プライマリデータソース(計算フィールドを作成したほう)をさきにパブリッシュします。
・「パブリッシュ」をクリック
※この時「ワークブックを更新してパブリッシュされたデータソースを使用」にチェックを入れてください

・パブリッシュされます ※パブリッシュされると四角のアイコンになります

・セカンダリデータソースをパブリッシュ
すると以下のような警告が出ます

「OK」をクリックして次に進むと以下のようなポップアップがでて、Tableau Serverにパブリッシュしたデータソースを使用することはできません。
※この時データソース自体はパブリッシュできています。

【3-1のエラーの原因】
こちらでエラーが起きた原因は計算フィールドにあります。
パブリッシュしたプライマリデータソースの計算フィールドが参照しているのはローカルのセカンダリデータソースのフィールドです。

ローカルのプライマリデータソースであればデータソース置換時に自動で参照先を切り替えてくれますがサーバーにパブリッシュしたデータソースは切り替えてくれません。
そのためパブリッシュしたプライマリデータソースはパブリッシュしたセカンダリデータソースを参照できずエラーが発生し、ローカルと接続したままになったという状況です。
このようなエラーを発生させないため、パブリッシュする時に順番を注意する必要があります。
3-2.セカンダリデータソースからパブリッシュした場合(成功例)
データソースを二つともローカルからの接続にしてセカンダリデータソースからパブリッシュしていきます。

以下画像の通りパブリッシュできました。

作成した計算フィールドを確認してみます。
パブリッシュすると計算フィールドを直接編集できないのでコピーを作成して中身を確認します。
セカンダリデータソースからパブリッシュした場合、プライマリデータソースの計算フィールドは参照先をサーバーのセカンダリデータソースのフィールドから参照するように自動で切り替わっているため、エラーもなくパブリッシュすることができました。

では以下の例ではパブリッシュした後のデータソースの扱いについて記述していきます。
4.パブリッシュ後のデータソースを使用、編集する
4-1.パブリッシュ後のデータソースで新しいワークブックを作る(失敗例)
新規ワークブックからパブリッシュしたデータソースを適用すると以下のようなエラーが発生します。

こちらがパブリッシュ時に出ていた警告の件です。
データのブレンドで作成した計算フィールドはその計算フィールドを作成したワークブックでしか適用できません。

エラーについてはTableau Server上でも確認できます。

4-2.ローカルでブレンドしたデータソースを再更新してパブリッシュ(成功例)
データソースをパブリッシュした後にまた変更があり再度パブリッシュしたい場合は以下のように気を付ける必要があります。
データソースをブレンドしたファイルを開き、修正を加えるためにローカルコピーを作成します。
順番は1-2の項目で確認した通りセカンダリデータソース、プライマリデータソースの順番です。

コピー作成後、データソースに修正を加えてサーバーのデータソースをローカルのデータソースに置換します。

すると以下のようにエラーが発生します。またサーバーのデータソースともブレンドされたままです。

作成した計算フィールドを確認すると、サーバーのほうのデータソースのメジャーを使用したままです。

こちらのエラーも1-1の項目で失敗したのと同様で、Tableau Serverに反映したプライマリデータソースはローカルのセカンダリデータソースのメジャーを使用したままのため、パブリッシュしたセカンダリデータソースを使用できずローカルのデータソースのままでした。
なので対応としましては、このままプライマリデータソースをローカルコピーしサーバーのデータソースと置換します。
データソースを置換するとバージョンによっては自動で計算フィールドの値も切り替えてくれることがありますが、切り替わらずにサーバーのデータソースとつながったままの場合、以下のように手動で計算フィールドを書き換えましょう。

すると以下のようにブレンドが切り替わりました。

あとは前述と同様にセカンダリデータソースからプライマリデータソースの順番にデータソースをパブリッシュすることで問題なくブレンドされたデータソースをパブリッシュすることができます。
5.最後に
今回はTableau Serverの機能で、ブレンドしたデータソースをTableau Serverにパブリッシュする場合はパブリッシュする順番に気を付けなければいけことについて紹介しました。
Tableau を業務で使用する時はTableau DesktopからTableau Serverへデータソースをパブリッシュすることや、Tableau Serverにパブリッシュされているデータソースを使うことも多くなります。
Tableau Serverでの作業でもし私と同じような状況で困った人がいた時に助けになればと思い今回の記事をまとめました。皆さんの参考になれば嬉しい限りです。