SFA管理者の日常

salesforceとtableau関連の記録

データエンジニアがtableauをちゃんと使って気づいたデータソースの問題点3つ

はじめに

自社内でtableau serverのデータソースを提供する役割をしています。

そして現在datasaberを目指していて、今まで作ったことがないタイプのダッシュボードを作ることが増えてきました。

その中で改めて思うことあります。

「データソースがちょっと使いづらい・・・!?」

データソースを利用する側の立場に立ってみると、ビジュアライズする以前の課題が色々と見えてきます。 今回自戒を込めてデータソース提供側が知るべき課題を整理しました。

(1)どんなデータがあるのかそもそもわからない

まずこれです。

何か業務上の課題があって分析をしたいと思っても、そもそもデータソースがあるのかどうかがわからないのです。

データソース提供側からすると、tableau serverにデータソース専用フォルダーを作ってそこにまとめてはいます。

ただ利用者側からすると、それだけだと中にどんなデータが入っているのか1つ1つチェックしないとわかりません。
(またこれはうちの社内の問題ですが、、「【テスト用】売上情報」みたいなデータソースが混在していてどれが公式なものかわかりません。)

どんなデータがあるのかそもそもわからない。なので何ができるかわからない。

となると「まぁいいや」とやる気がそがれてしまいます。

データがあるかわからない場合の解決案

解決案には以下のようなものがありそうです。

  • データソース置き場を整理する
    • データの取得元や種類別に分ける
    • 定期的に更新されているものとアドホックなものをわける。
  • tableau serverとは別にデータソースを紹介するドキュメントを作成する
    • データカタログやデータポータル的なイメージ
  • データソース利用事例を提供する。
    • すでに良い感じのダッシュボードが紹介されていれば、それを参考にさらにアイデアが膨らむ。

(2)データソースはわかったけど必要な項目がない

欲しいデータが入っているとされているデータソースを見つけられたとします。

「よし!これで分析を開始しよう」

と思ってもつまづくことがあります。

データソースの中に必要な項目がないこと結構あるのです。

たとえば業種ごとに売上の推移を見たいとします。

売上推移なので売上データソースを使います。
もちろん売上の情報はあります。一応顧客の基本情報も一通りありました。
しかし今回見たい業種の情報が入ってない!とか。

そういうかゆいところに手が届かないことが結構あります。

他には、データを登録した人を確認しようとしたときに、
「作成者IDはあるけど、作成者名がない!ユーザマスタと結合してないじゃん」
みたいなこともよくあります。

私はデータエンジニアの立場でもあるので、データソースに項目ない場合は追加することができますが、Explorerの人はその時点で分析をあきらめてしまう人もいそうな気がします。

項目がない場合の解決案

解決案には以下のようなものがありそうです。

  • 利用者の立場になって必要そうな項目は可能な限り事前に用意しておく。
    • 正直すべての項目を事前に網羅するには難しい
    • (項目の数が多すぎるとわかりづらいしパフォーマンスも悪くなる)
  • しかしデータソースは使われないと意味がないので少なくとも
    • データがなかった場合に項目追加を依頼する場合の連絡先を明示しておく
    • わかりやすいマニュアルを用意しておく

(3)データソースが重い

データソースの問題点3つ目。

「データソースが重い」

です。

tableauは1つ1つの操作に画面からリアクションがあるのがウリです。
その操作を行うたびにタイムラグがあると本気で萎えます。

(あまりに重いので自動更新を一時停止したりして、これではtableauの良さを全く活かせません。)

いままでも提供しているデータソースを使ってVizを作ることはありました。
しかしそこまでパフォーマンスに問題を感じたことはありませんでした。

今回色々な切り口でビジュアライズしようとしたことにより、内容によってパフォーマンスに差が出ることがわかりました。

たとえばサンプルスーパーストアでいうと、カテゴリ別にデータをみているときは全然問題なかったのに、 顧客別に見ようとすると突然遅くなるといったような感じです。

パフォーマンスの低下は様々な要因があるので、一概にデータソースだけが問題というわけではありません。

しかし少なくともデータソース側でできる対応は可能な限りやっておくべきだと感じました。

パフォーマンス問題の解決案

  • データソース作成後にパフォーマンスチェックを行う
  • パフォーマンスに問題がある場合、原因によって改善策は色々な方法がある
    • データソース提供側としては利用用途ごとにデータマート、データソースを用意することが一つの解決策

終わりに

以上、データソースを積極的に利用するようになったことで気づいたデータソースの問題点です。

いずれも地味なポイントですが、こういう土台をしっかり作ることでデータの活用が進みます

IT業界では自社の製品やサービスを自分たちで使ってテスト・改善していくことを「ドッグフーディング」といいますが、まさにそれです。

提供しているデータソースを自分で使って今後も一つ一つ改善していきたいと思います。