データのブレンド

データ ブレンドは、複数のソースからのデータを組み合わせる方法のひとつです。セカンダリ データ ソースからの追加情報が取り込まれ、プライマリ データ ソースからのデータと共にビューに直接表示されます。

データの組み合わせ方法は数多くありますが、それぞれに長所や短所があります。

リレーションシップは既定の方法であり、詳細レベルが異なるテーブルを含め、ほとんどのインスタンスで使用できます。リレーションシップには柔軟性があり、シート単位での分析構造に適応できます。ただし、Tableau Server や Tableau Online にパブリッシュしたデータ ソースからテーブル間にリレーションシップを形成することはできません。また、計算フィールドに基づいてリレーションシップを形成することはできません。

結合は、類似する行構造にデータの列を追加することによりテーブルを組み合わせます。このとき、テーブルが異なる詳細レベルである場合はデータが失われたり、重複することがあるため、分析を開始する前に結合したデータ ソースを修正する必要があります。

ブレンドは、リレーションシップや結合とは異なり、データを真に組み合わせることはしません。ブレンドは各データ ソースに対して個別にクエリを実行し、結果を適切なレベルに集計します。その後、ビューにはすべての結果が視覚的に表示されます。これにより、ブレンドはさまざまなレベルの詳細に対応し、パブリッシュされたデータ ソースの処理ができます。また、ブレンドはそれぞれのシートに個別に構築するものであり、ビジュアライゼーションの複数のデータソースから結果をブレンドした真の「ブレンドされたデータ ソース」がないため、パブリッシュすることはできません。

データ ブレンドは、ブレンドのリレーションシップ (リンク フィールド) をシート単位で変更する必要がある場合や、パブリッシュされたデータ ソースを結合する場合に特に便利です。

重要: バージョン 2020.2 より前のバージョンでは、データ ブレンドは多くの場合、異なる詳細レベルでデータ ソースを処理するための最良の方法でした。現在は、ブレンドはリレーションシップと組み合わせることができます。リレーションシップはデータ ブレンドよりも技術的な制限が少ないため、データの組み合わせ方法として最も推奨されています。ブレンドは、データに最適な方法である場合や、リレーションシップを使用できない場合にのみ推奨されています。

データ ブレンドの手順

データ ブレンドはシート単位で実行され、2 番目のデータ ソースのフィールドがビューで使用されるときに確立されます。最低 2 つのデータ ソースに接続しているワークブックでブレンドを作成するには、1 つのデータ ソースから 1 つのフィールドをシートに移動します。これがプライマリ データ ソースになります。別のデータ ソースに切り替え、1 つのフィールドを同じシートで使用します。これがセカンダリ データ ソースになります。オレンジ色のリンク アイコンがデータ ペインに表示され、データ ソースをブレンドするために使用されているフィールドを示します。

GIF of a basic data blend

注: このトピックのイメージは、最新の UI を反映するように更新されていません。[データ] ペインには、ディメンションとメジャーがラベルとして表示されなくなります。

  1. ワークブックに複数のデータ ソースがあることを確認してください。2 番目のデータ ソースは、[データ] > [新しいデータ ソース] から追加する必要があります。

    ヒント: 最初のデータ ソースに別の 接続 を追加すると、[データ ソース] ページでリレーションシップと結合が有効になります。ブレンドには、データ ペインで個別に表示される複数の異なるデータ ソースが必要です。

  2. フィールドをビューにドラッグします。この最初のフィールドが属していたデータ ソースがプライマリ データ ソースになります。
  3. 別のデータ ソースに切り替え、プライマリ データ ソースとのブレンドのリレーションシップがあることを確認します。
    • オレンジ色のリンク フィールド アイコン () がある場合、そのデータ ソースは自動的に関連付けられています。少なくとも 1 つのアクティブなリンクがある限り、データをブレンドできます。
    • 灰色の壊れたリンク アイコン () がある場合は、2 つのデータ ソースをリンクするフィールドの横にあるアイコンをクリックします。アイコンがオレンジ色に変わり、アクティブなリンクであることを示します。
    • 目的のフィールドの横にリンク アイコンが表示されない場合は、ブレンドするリレーションシップを定義するを参照してください。
  4. セカンダリ データ ソースからフィールドをビューにドラッグします。

この 2 番目のデータ ソースが同じビューで使用されると、ブレンドがすぐに確立されます。以下の例では、プライマリ データ ソースは [Sales Targets (売上目標)] であり、セカンダリ データ ソースは [Sample - Superstore (サンプル - スーパーストア)] です。

  • プライマリ データ ソースはデータ ソース上の青色のチェック マークで示されます。ビューで使用されているプライマリ データ ソースのフィールドにはマークがありません。
  • セカンダリ データ ソースは、データ ソース上のオレンジ色のチェック マークとデータ ペインの横のオレンジ色のバーで示されます。ビューで使用されているセカンダリ データ ソースのフィールドにはオレンジ色のチェック マークがあります。

プライマリ データ ソースとセカンダリ データ ソースを理解する

データ ブレンドには、1 つのプライマリ データ ソースと 1 つまたは複数のセカンダリ データ ソースが必要です。ビューで使用される最初のデータ ソースはプライマリ データ ソースになり、ビューを定義します。これにより、セカンダリ データ ソースからの値を制限して、プライマリ データ ソースに対応する一致があるセカンダリ データ ソースの値のみをビューに表示できます。これは左結合に相当します。

たとえば、プライマリ データ ソースの [Month (月)] フィールドに [April (4 月)]、[May (5 月)]、[June (6 月)] だけが含まれている場合、セカンダリ データ ソースに 12 か月分の値があるとしても、月に基づいて作成されたビューには [April (4 月)]、[May (5 月)]、[June (6 月)] だけが表示されます。必要な分析に 12 の月のすべてが関係する場合は、他方のデータ ソースを最初に使用してシートを再構築することにより、プライマリ データ ソースを切り替えてみてください。

詳細情報: データ ソースの順序の影響

以下の例では、同じフィールドでリンクされている同じデータ ソースを使用しており、Viz も同じように作成されています。結果の違いは、プライマリとして指定されているデータ ソースが原因です。

  1. ここでは、[Rainfall (雨量)] データ ソースの [Month (月)] フィールドが最初にビューに取り込まれています。[Rainfall (雨量)] には 3 つの月しか含まれていないため、[Pollen (花粉)] データ セットがセカンダリとして追加されるとき、3 つの月だけがビューに取り込まれます。
  2. product screenshot of a viz showing three months
  3. 別のシートでは、[Pollen (花粉)] データ セットの [Month (月)] フィールドが最初にビューに取り込まれています。12 の月すべてが表示されています。[Rainfall (雨量)] データ セットがセカンダリとして追加されると、そのデータセットの 3 つの月の雨量だけが表示されます。
  4. product screenshot of a viz showing twelve months

ブレンドされたデータ ソース全体の処理

データ ブレンドの性質により、ブレンドされたデータ ソースで作業する場合に考慮する必要のある点がいくつかあります。

複数のデータ ソースのフィールドを使用した計算の実行は、通常の計算とは若干異なる可能性があります。計算は 1 つのデータ ソースで作成する必要があります。これは計算エディターの上部で示されています。

  • 集計。別のデータ ソースから使用されるフィールドには集計 (既定では SUM) が付いていますが、これは変更できます。計算では集計引数と非集計引数を組み合わせることができないため、計算が行われるデータ ソースのフィールドも集計する必要があります (以下の画像で、SUM 集計は自動的に追加され、sum 集計は手動で追加されました)。
  • ドット表記。別のデータ ソースに属する計算で参照されるフィールドは、ドット表記を使用して自身のデータ ソースを参照します (以下の画像で、[Sample - Superstore (サンプル - スーパーストア)] 用に作成された計算では、[Sales Target (売上目標)] フィールドは [Sales.Targets].[Sales Target] になります。計算が [Sales Targets (売上目標)] で作成される場合、[Sales (売上)] フィールドは [Sample - Superstore].[Sales] になります)。
  • これらは、各データ ソースで作成される同じ計算の等価バージョンです。どちらの場合も、これは SUM(Sales) / SUM(Sales Target) です。

計算が少し異なる方法で処理されることに加えて、セカンダリ データ ソースにはいくつかの制限があります。セカンダリ データ ソースのフィールドによって並べ替えができなかったり、アクション フィルターがブレンドされたデータで予期したとおりに動作しなかったりする場合があります。詳細については、その他のデータ ブレンドの問題を参照してください。

ブレンドするリレーションシップを定義する

Tableau で複数のソースからのデータの組み合わせ方法が認識されるようにするには、データ ソース間に共通のディメンションが必要です。この共通のディメンションはリンク フィールドと呼ばれます。アクティブなリンク フィールドはセカンダリ データ ソースのデータ ペインでアクティブなリンク アイコン () によって識別され、リンクしている可能性のあるフィールドは壊れたリンク アイコン () によって識別されます。

たとえば、トランザクション データと割り当てデータのブレンドでは、地域の割り当てとそれに対するパフォーマンスを分析できるよう、地理的フィールドがリンク フィールドになっている場合があります。

: ブレンドが機能するには、リンク フィールドで値またはメンバーを共有する必要があります。Tableau では、共有値に基づいてブレンド データのビューが作成されます。たとえば、[Color (色)] が両方のデータ ソースのリンク フィールドの場合、プライマリの [Purple (紫色)] とセカンダリの [Purple (紫)] のデータがマッチングされます。しかし、[Lt. Blue (ライトブルー)] は正しく [Light Blue (ライトブルー)] にマッチングされないため、これらのいずれかの別名を変更する必要があります。Tableau がリンク フィールドを識別できるようにフィールドの名前を変更するのと同様に、これらのフィールド内のメンバーの別名を編集できます。詳細については、ビュー内でメンバー名を変更する別名を作成するを参照してください。

リンクの確立

プライマリ データ ソースとセカンダリ データ ソースでリンク フィールドの名前が同じ場合は、自動的にリレーションシップが作成されます。プライマリ データ ソースが確立され (つまり、フィールドがビューで使用され) てセカンダリ データ ソースがデータ ペインで選択されたとき、2 つのデータ ソースで同じ名前を持つフィールドには、セカンダリ データ ソースでリンク アイコン ( または ) が表示されます。プライマリ データ ソースの関連フィールドがビューで使用されている場合、リンクは自動的にアクティブになります。

セカンダリ データ ソースにリンク アイコンがない場合は、次の 2 つの方法のいずれかでリンクを確立しなければならない場合があります。 

  1. 共通のディメンションが同じ名前でない (たとえば、[Region (地域)] と [Sales Region (販売地域)] である) 場合は、一方の名前を変更すると共通のディメンションとして識別され、リンクが確立されます。

  2. または、プライマリ データ ソースとセカンダリ データ ソースのフィールド間のリレーションシップを手動で定義することができます。手動のリンクのリレーションシップを作成する方法について詳しくは、以下を参照してください。

アクティブなリンク フィールドやリンクしている可能性のあるフィールドは、必要なだけ作成できます。データ ペインで壊れたリンク アイコン () をクリックすると、リレーションシップがアクティブになります。

リンクのリレーションシップを手動で定義する

共通のディメンションが同じ名前を共有していない場合、それらの間でリレーションシップを手動でマッピングできます。

  1. [データ] > [Edit Blend Relationships... (ブレンドのリレーションシップの編集)] を選択します。

  2. [Blend Relationships (ブレンドのリレーションシップ)] のダイアログ ボックスで、[プライマリ データ ソース] のドロップ ダウン メニューからプライマリ データ ソースが選択されていることを確認します。

  3. [セカンダリ データ ソース] ペインでセカンダリ データ ソースを選択します。自動的にブレンドされた既存のリレーションシップが表示されます。リレーションシップのリストで [カスタム] を選択し、[追加] をクリックします。

  4. [フィールド マッピングの追加/編集] ダイアログ ボックスで、次の操作を実行します。

    1. プライマリ データ ソースからフィールドを選択します。

    2. セカンダリ データ ソースからフィールドを選択して、フィールドの名前が同じでない場合でも、データ ソース間のリンク フィールドまたはブレンドのリレーションシップを確立します。

    3. [OK] をクリックします。

      この例では、[Segment (区分)][Cust Segment (顧客区分)] の間のマッピングが作成されます。

      Product UI for the add/edit relationships dialog box

      ヒント: 日付の場合は、リレーションシップを正確に指定できます。日付フィールドを展開し、正確な日、月、年など、日付の適切な側面を選択します。

  5. フィールド マッピングを必要に応じて作成した後、[OK] をクリックします。

複数のリンク

リレーションシップや結合と同様に、データ ソース間のリンクが複数のフィールドによって定義されている場合があります。たとえば、地域の売上ノルマが月単位である場合、正しいデータがビューに取り込まれるように、地域と月の両方に基づいてトランザクション売上データと売上ノルマ データの間のブレンドを確立する必要があります。複数のリンクを同時にアクティブにできます。

詳細: 複数のリンク フィールドの影響

データを複数のフィールドに基づいてブレンドする際、それらのフィールドのデータの組み合わせが両方のデータ セット間で一致する場合にのみ、値はビューに含められます。これを理解するための例を見てみましょう。

ここに 2 つのテーブルがあります。1 つはバードウォッチャーが実際に観察した鳥について、もう 1 つは観察が報告された鳥についてです。

および

プライマリ データ ソース ([Birds seen (観察された鳥)]) のフィールド [Birdwatchers (バードウォッチャー)] および [Number of birds (鳥の数)] を含むブレンド ビューを設定し、セカンダリ データ ソース ([Birds reported (報告された鳥)]) のフィールド [Number of reports (報告数)] を取り込むと、自動的に [Birdwatcher (バードウォッチャー)] に基づいてブレンドが実行されます。

注: このトピックのイメージは、最新の UI を反映するように更新されていません。[データ] ペインには、ディメンションとメジャーがラベルとして表示されなくなります。

バードウォッチャー A が 3 羽の鳥を観察して 2 件の報告を行い、B が 4 羽の鳥を観察して 1 件の報告を行い、C が 8 羽の鳥を観察して 2 件の報告を行ったことがわかります。

しかし、[Species seen (観察された種類)] もリンク フィールドとして使用できます。このフィールドでもブレンドを実行してみましょう。違いは生じるでしょうか。 

かなり大きな違いが生じます。バードウォッチャー A と C による報告がそれぞれ 1 件だけになり、B は 0 件になりました。どういうことでしょうか。 

これらのバードウォッチャーがそれほど正直でないことが判明しました。日記の項目に基づいて観察内容を報告しただけのとき (上の画像にある青色のバー)、報告された種類は実際に観察された種類と一致しませんでした ([Birds seen (観察された鳥)] セカンダリ データ ソースの 2 番目の列が NULL になっていることに注目してください)。報告を写真で裏付けたとき (オレンジ色のバー)、その報告は正直でした ([Species seen (観察された種類)] の両方の列が一致します)。3 件の報告で種類が一致しなかったため、[Birdwatcher (バードウォッチャー)][Species seen (観察された種類)] のフィールドがリンク フィールドとして使用された際、該当するデータ行は除外されました。ビューには、両方のリンク フィールドで値が一致するデータだけが表示されます。

複数のフィールドでリンクする場合は注意してください。アイコンをクリックしてアクティブなリンクを確立することは非常に簡単かもしれませんが、リンク フィールドが多すぎたり不適切だったりすると、分析に重大な影響が及ぶ可能性があります。

結合とデータ ブレンドの違い

データ ブレンドは、従来の左結合のシミュレーションを行います。2 つの主な違いは、集計が実行されるタイミングです。結合では、データが組み合わされてから集計されます。ブレンドでは、データが集計されてから組み合わされます。

左結合

左結合を使用してデータを組み合わせると、結合が実行されたデータベースにクエリが送信されます。左結合では、左のテーブルのすべての行と、右のテーブルでそれに対応する行が返されます。結合の結果は Tableau に返され、ビジュアライゼーションでの表示用に集計されます。

左結合では、左の表のすべての行が取得されます。共通の列は [User ID (ユーザー ID)] と [Patron ID (パトロン ID)] です。右の表に対応する情報がある場合は、そのデータが返されます。それ以外の場合は、NULL が入ります。

 

同じ表を使用しますが、順序を反転したとします。この新しい左結合の結果は異なります。今回も新しい左の表からはすべてのデータが取得されますが、右の表の行は基本的に無視されます。[User ID (ユーザー ID)] が 4 であるデータ行は、左の表に [Patron ID (パトロン ID)] が 4 である行がないため、含められません。

データ ブレンド

データ ブレンドを使用してデータを組み合わせる場合、シートで使用される各データ ソースのデータベースにクエリが送信されます。クエリの結果は集計されたデータとして Tableau に返され、ビジュアライゼーションでまとめて表示されます。

注: メジャーを集計することは簡単です。数値の合計、平均、最大値その他の集計を簡単に実行できます。メジャーの値は、ビューにおけるフィールドの集計方法に基づいて集計されます。ただし、セカンダリ データ ソースのすべてのフィールドが集計される必要があります。ディメンションの場合はどうでしょうか。ディメンション値は ATTR 集計関数を使用して集計され、セカンダリ データ ソースのすべての行に対して 1 つの値が返されます。これらの行に複数の値がある場合は、アスタリスク (*) が表示されます。これは、「ビューのこのマークについてセカンダリ データ ソースに複数の値がある」と解釈できます。

ビューはリンク フィールドに基づいて、プライマリ データ ソース (左の表として機能する) のすべての値と、セカンダリ データ ソース (右の表) の対応する行を使用します。

次の表があるとします。リンク フィールドが [User ID (ユーザー ID)] と [Patron ID (パトロン ID)] である場合は、次の理由により、一部の値が結果の表の一部にならない可能性があります。

  • 左の表の行に対応する行が右の表にありません。これは結果で NULL 値によって示されます。

  • 右の表の行に対応する値が複数あります。これは結果でアスタリスク (*) によって示されます。

メジャーが関係する場合は、メジャーも次のように集計されます。

重要: ブレンドされたデータを含むビュー内のアスタリスク (*) は複数の値を示します。これは、プライマリ データ ソースの各マークについて、セカンダリ データ ソースで一致する値を 1 つだけにする (プライマリ データ ソースとセカンダリ データ ソースを入れ替えることもできます) ことによって解決できます。詳細については、データ ブレンドのトラブルシューティングを参照してください。

データ ブレンドの概要

  • データ ブレンドはシート単位で行われます。
  • フィールドが使用される順序によって、どのデータ ソースがセカンダリ データ ソースに対するプライマリになるかが決まります。
  • プライマリ データ ソースは青色のチェック マークで示され、セカンダリ データ ソースとそのフィールドにはオレンジ色のチェック マークが付けられます。
  • リンク フィールドを共有フィールド名に基づいて自動的に決定するか、ブレンドのリレーションシップを手動で作成することができます。
  • データ ブレンドは左結合のように動作するため、セカンダリ データ ソースのデータが除外されることもあります。
  • アスタリスク (*) が表示される場合もあります。これは、1 つのマークで複数のディメンション値が存在することを示します。これが生じるのは、データ ブレンドでは集計された結果がビューで組み合わされるためです。
  • セカンダリ データ ソースを使用して、プライマリ データ ソース内のフィールド値に別名を付け直すこともできます。詳細については、データ ブレンドを使用してフィールドの値に別名を付けるを参照してください。

データ ブレンドの制限事項

  • COUNTD、MEDIAN、RAWSQLAGG などの非加算的な集計に関しては、一部のデータ ブレンドの制限があります。詳細については、データ ブレンドのトラブルシューティングを参照してください。
  • ブレンドされたデータ ソースを 1 つの単位としてパブリッシュすることはできません。代わりに、各データ ソースを個別に (同じサーバーに) パブリッシュした後、パブリッシュ済みデータ ソースをブレンドします。
  • セカンダリ データ ソースのデータは、常に計算で集計される必要があります。
  • キューブ データ ソースをブレンドする場合は、それがプライマリ データ ソースである必要があります。

このセクションの他の記事

ありがとうございます! フィードバックの送信中にエラが発生しました。もう一度やり直すか、メッセージをお送りください