はじめに
Data Transformsは、Autonomous Databaseに組み込まれているデータ統合ツールです。
本記事の前提条件
-
ADBインスタンスが1つ構成済みであること
-
下記リンクから Movie Sales 2020.csv, Days_Months.xlsx, Devices.xlsx, Countries.csv(売上実績のサンプルデータ) をダウンロードしてあること。
「OCIチュートリアル, Oracle Database編, 217: クレデンシャル・ウォレットを利用して接続してみよう」 -
「 OCIチュートリアル, Oracle Database編, 403 : Data Transformsを使ってみよう」を事前に行い、Movie Sales 2020.csvをData Transformsを用いて加工した、MOVIE_SALES_2020Q2という表を使用します。こちらのチュートリアルを試してから本記事を読まれると、理解がスムーズかと思います。
作業の大まかな流れ
~前提条件まで~
- ADBインスタンス(この記事ではADBtake01)を構築したのちQTEAMというユーザーを作成し、Movie Sales 2020.csv, Days_Months.xlsx, Devices.xlsx, Countries.csvをロードします。
- QTEAMスキーマにロードしてあるデータ(Movie Sales 2020.csv)をインポートします。
- データの変換作業(データの修正、トリミング)を行います。
QTEAMユーザーの作り方等含めて、詳細はOCIチュートリアル, Oracle Database編, 403 : Data Transformsを使ってみようをご覧ください。
~本記事~
実際にData Analysisを使ってみた
Data Analysisの起動
-
ADMINユーザーからいったんログアウトして、前提条件で作成してあるQTEAMユーザーでログインし直します。QTEAMユーザーでDatabase Actionsにログインした状態で、起動パッドを開きます。データ分析の項目をクリックし、Data Analysisが起動します。
このときユーザーにDWROLE権限が付与されていないと、データ分析の項目が表示されません。
分析ビューの編集
-
名前はデフォルトのまま変更しなくて大丈夫です。
スキーマ名や、ファクト表を画像のように選択して、[ 階層およびメジャーの生成 ]を押します。
-
ダイアログ ボックスには、ディメンション表の検索、ディメンション表の分析、および使用するデータソース、結合、階層、およびメジャーの特定と作成の進行状況が表示されます。プロセスが完了したら、[ 閉じる ] をクリックします。
-
[ データ・ソース ] タブには、データのソースとそれらの間の関係が表示されます。ファクト表(MOVIE_SALES_2020Q2)と関連するディメンション表(Days_Months.xlsx, Devices.xlsx, Countries.csv)の関係性が表示されます。
-
[ 階層 ] タブには、分析ビュー作成ツールによって生成された階層が表示されます。表示には、階層の名前とソースが含まれます。分析ビューには、少なくとも 1 つの階層が含まれている必要があります。
階層を追加するには、[ 階層の追加 ] をクリックします。これにより、その表の列のリストとして表示されます。階層の詳細レベルとして機能し、ファクト表への結合キーとなる列を選択します。
ここでは、COUNTRIES表のCONTINENT列を追加してみます。
これらの階層は「上に移動」「下に移動」ボタンで位置を移動することができます。
-
階層名をクリックすると、ダイアログ ボックスに階層名とソースが表示されます。
ソースを変更するには、ドロップダウン リストから以下のようにソースを選択します。
[ レベルの追加 ] を選択して、階層にレベルを追加します。[ レベルの削除 ]をクリックして、選択したレベルを階層から削除することもできます。 -
ここで、GENRE階層のプレビュー・データを見ていきましょう。以下のように、「プレビュー・データ」を押します。
ファクト表のデータとデータに関する統計を表示することができます。 [ プレビュー ] タブには、テーブルの列と列内のデータが表示されます。
[ 統計 ] タブには、テーブルのサイズと、行と列の数が表示されます。
-
[ 階層 ] タブで特定のレベルをクリックすると、ダイアログボックスに、それぞれのレベル名、レベル キー、代替レベル・キー、メンバー名、メンバー・キャプション、メンバーの説明、[ ソート基準 ]のドロップダウンが表示されます。フィールド値を変更するには、該当するフィールドに値を入力します。
今回は特に変更せずに進めます。
-
[ メジャー ] タブには、分析ビューに提案されたメジャーが表示されます。各メジャーのメジャー名、列、および演算子の式が表示されます。
-
分析ビューのデフォルトのメジャーとしてメジャーの種類を指定する必要があります。下記のように、デフォルト・メジャーをドロップダウンから選択することができます。SALESからPURCHASEに変更してみます。
-
メジャーを追加するには、[ メジャーの追加 ] をクリックします。メジャー リストの下部に新しいメジャーを表示できます。メジャーを削除するには、リストから削除するメジャーを選択し、[ メジャーの削除 ] をクリックします。特に変更せずに進めます。
注意すべきなのは、メジャーでは数字データが格納されている階層でないと、分析ビューを作成した際に構造エラーになります。
-
例えば、SALESのメジャーをクリックすると、以下のような設定画面が出ます。ここでは、メジャー名、列名、色名、フォーマットを選択できます。
分析ビューを作成する際には、1つ以上の階層、メジャー列と、ファクト表の外部にある各ディメンション表に結合する列を持つファクト表を指定する必要があります。
-
分析ビューの問合せに「計算」を追加できます。分析ビューに関連付けられたメジャーと階層により、新たに計算メジャーを作成できます。計算されたメジャーにはデータが格納されないため、データベースのサイズを増やすことなくメジャーを作成できます。
ここで、[ 計算メジャーの追加 ]を押して、計算メジャーを追加してみます。
-
[ 計算 ] タブで、システムが生成した名前で新しい計算を表示できます。デフォルトだと、「計算1」のように表示されるかと思います。
新しく作成された[ 計算1 ]メジャーをクリックし、以下のように設定してみます。
設定の詳細は、ドキュメントをご覧ください。
分析ビューの作成
-
画面右下の[ 作成 ]ボタンを押すと、以下のように分析ビューが生成されます。
最初に[ データの品質 ] タブが表示され、エラーがあるかどうかが確認できます。
-
[ 分析 ]タブを押します。また、分析ビューを編集したい場合は、分析ビュー名の右側にある青色の3点のボタンを押すと、画像のように作業が選択できます。
-
[ 分析 ]タブから、階層レベルとメジャーを選択してデータを分析します。以下のように、ドラッグアンドドロップで、X軸、Y軸を指定していきます。値(Y軸)は、分析ビューのメジャーである必要があります。
-
フィルタを指定して、分析したい値にドリルダウンするのに役立ちます。例えば、下記画像のようにMONTHをApril、CONTINENTをAsia、COUNTRYをJapanにチェックをつけると、時期と場所をフィルタリングすることができます。
-
また、これまで分析してきた作業の過程をSQL文で見ることもできます。分析タブの画面上部のSQLのマークを押すと、以下のような画面に遷移します。
右上の緑色の実行ボタンを押すと、SQLワークシートエディタの下の領域には、フィルタ条件に一致する検索条件の結果が表示されます。
-
また、分析ビューの編集の段階で作成した計算メジャーを使用してみます。
下記のように、X軸とY軸を設定し直します。そうすると、ジャンルごとの購買量を見ることができます。
-
[ エクスポート ]タブは、Tableau や Microsoft Power BI などのツールにデータをエクスポートできます。
まとめ
本記事ではData Analysisを用いて、データ間のデータ依存関係を可視化し、分析を行ってみました。