Tableau

Tableauのリレーションシップを理解して過剰結合を防ぐ

リレーションシップとは

Tableau Desktop 2020.2の新機能で、ザックリいうと「これまで1から結合を定義していたものを、Tableauが自動で調整してくれる」という機能です。
ユーザーにとって嬉しいポイントとしては「粒度の異なるデータをくっつけて分析できる」という点で、これにより中間テーブルを定義せずに済み、レコード増加によるパフォーマンスの悪影響を抑えることができます。
リレーションシップ自体は大変便利な機能で、一般的な「結合」の上位互換となるのですが、データ量が膨大になる時には注意しなければなりません。
合言葉は「カーディナリティ(濃度)」です。

カーディナリティ「1対多」「多対多」の使い分け

リレーションシップで「パフォーマンスオプション」を開くと、カーディナリティの項目が現れます。
※デフォルトでは「多対多」で設定されています。

この「多対多」はデータの粒度を細かく扱うことを表しています。
実際にTableau Desktopでの挙動から、カーディナリティが何を指すのか見ていきましょう。
まず、「注文」と「売上目標」という2つのテーブルを[オーダー日]でリレーションを組んでいきます。

オーダー日やカテゴリなどを適当に配置すると、以下のようになります。
各日付ごとの詳細なデータが格納されていることが確認できました。

次に、リレーションを「多対一」にしてみます。

すると、先ほどの表は以下のようになります。

今回は[オーダー日]でリレーションを組んだので、オーダー日の単位でデータが丸められました。
このようにカーディナリティを調整することにより、データの粒度を変更することができるのです。
これはデータ量が多い時にかなりパフォーマンスに“差”が出ます。
また、場合によっては「キーが不十分でデータを過剰に結合してしまう」ということも生じます。
Tableauのリレーションシップは大変便利な機能で、ほとんどのユーザーはこれを気にしなくても良いです(多分
しかし、システムの中核をデザインする立場であれば、このように細部までこだわっていきたいところです。
Tableauや総合研究所に関する質問はお問い合わせからどうぞ。

ピックアップ記事

  1. 最速で理解したい人のためのIT用語集

関連記事

  1. Tableau

    Tableau Tips〜LOOKUP関数〜

    はじめに「LOOK UP」は見上げる、調べるという意味の英単語です。…

  2. Tableau

    Tableau 2021.1 新機能紹介

    Tableau 2021.1 新機能紹介今回の2021.1は前回ま…

  3. Tableau

    Tableau Tips〜WINDOW関数〜

    はじめにこんにちは!インターンの與那覇(ヨナハ)ですこれから不定期…

  4. Tableau

    Tableau Tips〜Onlineで利用可能なフォント〜

    はじめにTableau Server/Onlineで利用可能なフォン…

  5. Google BigQuery

    Tableau : BigQueryでLOD計算が使えない場合の対処法

    こんにちは、エクスチュアの渡部です。Tableau×BigQu…

  6. Tableau

    Tableau : IF文の「集計」「非集計」の混在を解決

    こんにちは、エクスチュア渡部です。これから定期的にTableauやGo…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


最近の記事

  1. LangChainのソースコードから実装を見てみる(Chat…
  2. Tableau×Teams連携
  3. AIを使ったマーケティングゲームを作ってみた
  4. Snowflakeや最新データ基盤が広義のマーケティングにも…
  5. 回帰分析はかく語りき Part3 ロジスティック回帰
  1. Adobe Analytics

    Launchにおける検証環境の確認方法
  2. Tableau

    Tableau Tips〜INDEX関数〜
  3. Google Cloud Platform

    GoogleNext 2019レポート:初日目
  4. Python

    わかりやすいPyTorch入門⑤(CNNとデータの拡張)
  5. Qualtrics

    Qualtricsで顧客満足度アンケートを行なってみた
PAGE TOP