データモデル
CData JDBC Driver for Adobe Analytics は、Adobe Analytics オブジェクトをリレーショナルテーブルおよびビューとしてモデル化します。 次のセクションでは、利用可能なAPI オブジェクトを示し、Adobe Analytics API へのSQL の実行について詳しく説明します。
ストアドプロシージャ
ストアドプロシージャ は、データソースのファンクションライクなインターフェースです。これらは、Adobe Analytics API の追加機能を利用可能にします。
ビュー
レポートはビュー(変更できないテーブル)として表示されます。ただし、従来のデータベースビューとは異なり、特定のテーブルですべての
メトリクスとディメンションを選択することはあまり役に立ちません。Date はすべてのレポートのデフォルトディメンションです。そのため、クエリ
SELECT * FROM MyReportは、次のようになります。
SELECT Date, {all the metrics here} FROM MyReportただし、クエリに抽出条件がある場合、デフォルトのディメンションは抽出条件で使用されるディメンションになり、例えば
SELECT * FROM MyReport WHERE Country = 'England'は、次のようになります。
SELECT Country, {all the metrics here} FROM MyReport WHERE Country = 'England'
さらに、Adobe Analytics API はREST API 呼び出しごとにデータをリクエストできるディメンションの数を制限しています。
つまり、プロバイダーが複数のディメンションを持つレポートを生成する唯一の方法は、ディメンションを分割することです。
クエリの例を見てみましょう。
SELECT Country, City, Visits FROM MyReport
- まず、プロバイダーは1つ目のディメンションであるCountry のすべての値をリクエストします。それらがEngland とGermany であると仮定します。
- 次に、プロバイダーはCity というディメンションでEngland を分割しようとします。それがLondon とLiverpool であると仮定します。
- 最後に、Germany をCity で分割して、Berlin とFrankfurt を取得します。
さて、値をたくさん持つ4つのディメンションのレポートを想像してください。そのレポートの生成には、多くのAPI 呼び出しが必要になります。
しかしながら、 Adobe Analytics API を使用すると、クエリの実行時間を大幅に短縮できるフィルタが提供できます。
Adobe Analytics API は次の論理演算子:'AND'、'OR'、'NOT' を使用し
さらに次の演算子も使用します:'MATCH'、'CONTAINS'、'BEGINS-WITH'、および'ENDS-WITH'。つまり、以下のような抽出条件はサーバー側で処理されます。
... WHERE Dimension = 'Value' ... WHERE Dimension LIKE '%value%' ... WHERE Dimension1 LIKE '%value' AND Dimension2 = 'Value2' ... WHERE Dimension LIKE 'value%' ... WHERE Dimension1 = 'Value1' AND Dimension2 = 'Value2' ... WHERE Dimension = 'Value1' OR Dimension = 'Value2' OR Dimension = 'Value3' ... WHERE Dimension IN ('Value1', 'Value2', 'Value3', 'Value4') ... WHERE (Dimension1 = 'value1' OR Dimension1 = 'Value2') AND (Dimension2 = 'value3' OR Dimension2 = 'value4')できるだけ多くのフィルタを使用することを強くお勧めします。そうしないと、多くのディメンションを持つクエリに時間がかかる可能性があります。
カスタムレポートの定義
クエリのレポートビューを作成するには、CreateReport ストアドプロシージャを使用できます。CreateReport ストアドプロシージャを使用すると、ディメンションとメトリクスを独自に組み合わせて、簡単に新しいビュー定義を生成できます。このストアドプロシージャを呼び出すと、新しいスキーマファイルが作成されます。このファイルは、他のビューと同様にクエリすることができます。
このストアドプロシージャは、入力として、ビュー名、指標名のカンマ区切りリスト、指標Id のカンマ区切りリスト、ディメンション名のカンマ区切りリスト、ディメンションId のカンマ区切りリスト、および出力フォルダを受け取ります。新しいスクリプトファイルにアクセスするには、Location 接続プロパティを、このファイルを含むフォルダに設定する必要があります。出力フォルダの代わりにLocation を設定できます。
Metrics/Dimensions ビューをクエリすることで、指標/ディメンション Id を取得できます。
SELECT Id, Name FROM Dimensions SELECT Id, Name FROM Metrics
例えば、デフォルトスキーマとともに新しいスキーマを使用するには、Location プロパティをインストールフォルダ内のdb サブフォルダに設定し、次の呼び出しを行います。
EXEC CreateReport Dimensions = 'Country, City', Metrics = 'PageViews, Visits', TableName = 'MyCustomReport'