リレーショナルデータモデリング

リレーショナルデータモデリング

お知らせ:当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。


Zoho Analyticsの便利な機能の1つに、リレーショナルデータモデリングのサポートがあります。リレーショナルデータベースと同様に、相互に関係が定義された複数のテーブルで構成されるデータベースを作成またはインポートできます。リレーショナルデータベースでは、外部キー関係を使用してテーブルを関連付けます。Zoho Analyticsでは、あるテーブルの列から別のテーブルの列を参照するルックアップ列機能を使用します。

ルックアップ列機能を使用すると、次のことができます。

  • テーブル間で情報が重複しないように、正規化されたモデルでデータを整理できます
  • データをメジャー(集計可能な数値データ列)とファクト/dimensions(レポートでのグループ化に使用するデータ列)に分けることができます。
  • レポート作成と分析に最適化されたスタースキーマやスノーフレークスキーマなど、一般的なモデルを定義できます。

ルックアップ列を使用して2つのテーブルを関連付けると、Zoho Analyticsではその情報に基づき、追加の操作を行うことなく、これらのテーブルの列をシームレスに組み合わせてレポートを作成できます。詳しくは、このドキュメントの「自動結合によるテーブルの結合」セクションを参照してください。

ルックアップ列によるテーブルの関連付け

従業員データベースのサンプルを作成して説明します。従業員DBが部署従業員の2つのテーブルで構成されているとします。部署テーブルには、部署名部署IDの2つの列があります。

従業員テーブルには、従業員名と対応する従業員IDがあります。各従業員が所属する部署は、3列目の部署IDで参照されます。

部署テーブルの部署IDを、従業員テーブルの部署ID列から参照する列として定義します。この関係を定義するには、従業員テーブルの[デザインを編集]ボタンをクリックします。[ルックアップ列]項目のセルをダブルクリックすると、各テーブルとその列がドロップダウンに表示されます。この例では、部署テーブルの部署IDを選択します。

次の手順でもルックアップ列を作成できます。

  • 対象のテーブルを開き、列見出しを右クリックして、 [ルックアップ列に変更]を選択します。
  • 表示されたルックアップ列に変更ダイアログで、参照する列を選択します。

ルックアップ列によるテーブルの結合

ワークスペース内の複数のテーブルからデータを取得する必要がある場合は、ルックアップ列を使用してテーブルを結合できます。Zoho Analyticsでは、ルックアップ関係が設定されたテーブルを次の2つの方法で結合できます。

自動結合によるテーブルの結合

Zoho Analyticsには、レポートの作成時に、ルックアップ列で関連付けられたテーブルを自動的に結合する自動結合機能があります。レポートの作成対象となるテーブルを選択すると、自動結合機能によって、選択したテーブルとデータベース内の他のテーブルとの間にルックアップ関係が定義されているかどうかが確認されます。関係が定義されている場合、自動結合により、関連するテーブルのすべての列がレポートデザイナー列一覧パネルに表示されます。

一覧から必要な列を対応するシェルフにドラッグ&ドロップして、レポートを作成できます。Zoho Analyticsによって対応するテーブルが結合され、レポートの生成に必要なデータが取得されます。(クエリーテーブルを使用してテーブルを結合することもできます。「クエリーテーブルによるテーブルの結合」を参照してください)。

次の例は、自動結合機能を使用して従業員テーブルと部署テーブルから作成した、部署別の従業員数を示すピボットテーブルです。

上の例では、自動結合機能によって部署テーブルと従業員テーブルの間に作成されたルックアップ関係が検出されます。この関係に基づき、上のスクリーンショットに示すように、両方のテーブルの列がレポートデザイナー列一覧パネルに表示されます。

このピボットテーブルでは、部署テーブルの部署名列(シェルフに配置)と、従業員テーブルの従業員ID列(「件数」関数を適用してデータシェルフに配置)を使用しています。ピボットテーブルを生成すると、自動結合機能によってルックアップ列の部署IDを使用して部署テーブルと従業員テーブルのデータが自動的に結合され、レポートが作成されます。

結合の種類の設定に関するメモ:

初期設定では、Zoho Analyticsは左外部結合を使用してテーブルを結合します。使用できる結合の種類は次のとおりです。

  • 左外部結合 - 子テーブル(左)のすべての行と、親テーブル(右)のうち一致する行のみを使用してレポートが生成されます。子テーブルと親テーブルの間に定義されたルックアップ列に基づいて照合されます。初期設定では、この結合の種類が使用されます。
  • 右外部結合 - 親テーブル(右)のすべての行と、子テーブル(左)のうち一致する行のみを使用してレポートが生成されます。親テーブルと子テーブルの間に定義されたルックアップ列に基づいて照合されます。

結合の種類は変更できます。テーブルを結合してレポートを作成すると、レポートデザイナーに関係を表示するアイコンが表示されます。このアイコンをクリックすると、使用されている関係を表示ダイアログが開きます。結合の種類を選択し、[適用]をクリックします。

クエリーテーブルによるテーブルの結合

クエリーテーブルは、レポート作成や分析を容易にするためにデータを準備できる機能です。標準のSQL SELECTクエリーを使用して、ワークスペース内の1つ以上のテーブルからデータを組み合わせ、特定のデータビューを作成できます。これらのデータビューはテーブルと同様に扱うことができ、レポートの作成や共有のほか、既存のクエリーテーブルを基に別のクエリーテーブルを作成することもできます。

クエリーテーブルでは、データセットのフィルタリング、複数のデータセットの統合(ユニオン)、データの変換、SQLクエリー関数の適用、データセットの結合などを行えます。

たとえば、従業員テーブルと部署テーブルを組み合わせるクエリーは、次のように作成できます。

上のクエリー例では、従業員テーブルと部署テーブルを結合し、各従業員に対応する部署名を取得しています。必要なテーブルを結合して作成したクエリーテーブルを基に、Zoho Analyticsでは分析や可視化に使用するさまざまな種類のレポートを作成できます。クエリーテーブルの詳細については、こちらをクリックしてください。