Skip to main content
TOSHIHIRO EBATA a posé une question dans Japan

いつもありがとうございます。

​複数データソースを用いたデータ結合(tableau desktop)と複数ファイル(EXCEL)でのデータ結合(tableau Prep)の利用に関してです。

対応策としては3点考えています。​

1 複数データソース(Tableauサーバーにあり)を用いたデータ結合はtableau desktopではデータブレンドで行う。

2 ​元データがexcelであるデータ結合のやり方は

①元データがexcelの段階ではtableau prepで複数ファイルを結合してtableauサーバーに結合した​データをpublishして利用する。

②​元データexcelをAWSのデータレイクに一旦保管して、ETLを利用してデータ結合しDWHにデータ作成(複数データが結合された状態)

DWHからtableauサーバーにデータpublishして利用する。

この3パターンがあると考えています。

​月次処理でデータを蓄積していく処理となります。

下記サイト等で確認しましたが複数データソースをデータブレンドで対応した場合、サーバーのパフォーマンスが高くなることを懸念しています。

https://kb.tableau.com/articles/howto/deciding-between-joining-tables-and-blending-data?lang=ja-jp

​自分が考えているやり方は3点で一長一短があると考えています。

可能でございましたら​ご意見いただければ幸甚です。

​何卒宜しくお願い致します。​

2 réponses
  1. 10 févr. 2023, 00:01

    何をやりたいのか具体的なシナリオが見えない状態で、実際のデータも無いとなると結構ふんわりしたことしか言えませんが、

    1) TableauServer上にパブリッシュされている複数のデータソースを組み合わせて利用したい場合は、現状データブレンドしか方法はありません。パフォーマンスに問題が出るかどうかはデータの量やリンクする粒度によって全く変わりますが、もし問題があった場合、これはパブリッシュされたデータソースを利用する限り解決できません。狭義の結合(JOIN)を求めているのであれば粒度が細かくなるのでデータブレンドは推奨されません。お使いのTableauServerの運用ポリシーがどうなっているのか分かりませんが、データの更新頻度が月次ということもあり、そもそも​データソースを分けてパブリッシュしておく(あるいは分けたデータソースから作る)意味があるのかというのも少し疑問です。

    2) Excelを利用するということはデータ量はせいぜい数万~百万行なのかなと思いますが、経験上、このくらいのデータ量の場合はクラウドDWHに置くよりもPrepでHyperにしてパブリッシュしたほうが表示速度は早いと思います(AWSとのことなのでS3→Glue/EMR→Redshiftを想定しています)。「過去のデータに増分更新をかけていくので数千万~数億行になる」といった場合は、Prepがこけるリスクや抽出の時間を考えるとETLを通してDWHに入れたほうが安全・簡単な気がします。

    簡単にまとめると​

    ・データソースを個別にパブリッシュする必要がある→そもそもブレンドしか方法はない​

    ・​データソースは、個別のファイルを事前にひとつに結合した状態にして、ひとつだけパブリッシュすればよい

     ┗ データの量が少ない→PrepでHyperにしてからパブリッシュ

     ┗ データの量が多い→​DWHに入れる

    といったところではないかなと思います。​

0/9000