Oracle Analytics Cloudを使って、Oracle Autonomous Datawarehouseのデータと、Google Driveに保存されているcsvファイルを結合してみた

# 利用環境 #

BIサービス：Oracle Analytics Cloud

機能セット(Enterprise Analytics、またはSelf-Service Analytics) 、容量(２OCPU)



# Oracle Analytics Cloudを使って、Oracle Autonomous Datawarehouseのデータと、Google Driveに保存されているcsvファイルを結合してみた

2022年5月のアップデートで、Oracle　Analytics Cloudでは、フラットファイルから取り込んだデータセットを、リレーショナルデータベースから取り込んだデータセットやサブジェクトエリアとワークブック上で結合できるようになりました。

[What’s New for Oracle Analytics Cloud](https://docs.oracle.com/en/cloud/paas/analytics-cloud/acswn/index.html#ACSWN-GUID-CFF90F44-BCEB-49EE-B40B-8D040F02D476)

今回は、この新機能を使って、Oracle Autonomous Datawahouseのデータと、Google Drive上のCSVファイルのデータの結合を試してみたいと思います。



# やりたいこと

下図の様に、Oracle Autonomous Data Wrehouse(ADW)上には、売上、商品、チャネル、顧客テーブルがあります。顧客テーブルには、国IDカラムはありますが、国名称の項目がありません。

一方、Google Drive上には、共通の国IDと、国名称の項目を持つ、国マスタ(CSVファイル）が保存されています。

ADWのテーブルは、既にOracle Analytics Cloudに取り込んでいるものを使います。ここでは、Google Driveから国マスタを取り込んで、ワークブック上で、ADWの顧客テーブルと、Google Driveから取り込んだ国マスタ（CSVファイル）を結合します。

Google Drive上のCSVファイルをOracle Analytis Cloudに取り込むための事前準備として必要な接続設定手順については、以前の記事（[Google Drive上に保存したcsvファイルをOracle Analytics Cloudで可視化する](https://qiita.com/Nakayamasan/items/1c96a4de27b57bed1a2e)）をご確認ください。



![020.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/0d6384ed-cc03-c89c-c155-d600dc452fe9.jpeg)


# Google DriveからCSVファイルの取り込み


Oracle Analytics Cloudの左側メニュから、**データ**⇒**接続**に移動し、Google Driveとの接続定義（今回の場合はGoogle Drive Connectionという名前）を選択します。

次に、”データセットの作成”をクリックします。
![003.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/133412b4-34de-96e1-ea30-bf41426546bd.jpeg)




Google Driveのフォルダーやファイルが表示されるので、**任意のCSVファイル（今回は、国マスター.csv）を選択**し、**データセット名に任意の名前（今回は、”国”）を指定**の上、最後に**追加ボタンをクリック**します。


![031.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/17a82b52-de72-5f5d-4206-fddd6a0f32c9.png)



Google Drive上のCSVファイルが、Oracle Analytics Cloudにデータセットとして取り込まれましたが、国IDやサブリージョンID、リージョンIDといった、数値項目の処理形式（データ・タイプ）が、メジャーとして自動的に定義されてしまっています。こういった場合には、手動で編集する必要があります。


![032.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/f7f7efda-8e4d-4c18-a108-516836ca6443.png)


国IDのヘッダーをクリックして、処理形式（データ・タイプ）をメジャーから**属性に変更**します

![033.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/b384702d-5ac6-dabd-e813-cd5ed2396ecc.png)


同じ要領で、他の項目についても、適切に修正してあげます。適用スクリプトをクリックし、変更内容を保存します。

以上で、CSVファイルをAnalytics Cloudにデータセットとして取り込むことが出来ました。画面左上の、矢印アイコン（**←**）をクリックして画面を閉じます。

![035.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/e4e07c55-186f-f92c-5d7d-c3a4f797b167.png)


# ADWデータとの結合

Oracle Analytics Cloudの左側メニュから、**データ**⇒**データセット**にアクセスします。あらかじめ作成しておいた、ADWのから取り込まれた売上データセット（売上、商品、チャネル、顧客）と、先ほどGoogle Driveから取り込んだCSVファイル（国マスタ）が表示されています。

まずは、売上データセットの右側をクリックし、表示されたメニュからワークブックの作成を選択します。


![021.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/157bb45c-8e00-40c5-9c58-aecdb8ed7389.png)


ワークブックの作成画面が開き、売上データセットの内容が左側に表示されています。（売上、商品、顧客、チャネルのフォルダが、リスト表示されています。フォルダーを開くと各テーブルの項目を確認することが出来ます）

画面左側の検索窓の右側にある**＋アイコンをクリック**するとメニュが表示されるので、**データセットの追加**をクリックします。

![002.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/0f449219-87c2-ffa5-0a6a-a5c0f9787849.png)




**データセットの追加**画面から、”**国**”データセットを選択し、**ワークブックに追加**をクリックします


![015.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/051db086-7628-ba0a-9328-91b86bbf7b25.png)



ADWから取り込まれた**”売上”データセット**に加えて、Google Driveから取り込んだ**”国”データセット**が表示されています。

ここで、画面上部の**”データ”をクリック**します。

![016.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/9e4ca6f2-ae30-bad0-f115-730036a55919.png)



売上データセットと、国データセットが何らかの結合キーで結合されていることが表示されています。**データセットを結ぶラインの中央にある数字をクリック**すると、二つのデータの結合状況を確認することが出来ます。

![017.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/425c74b0-19b8-1edf-b4ae-5bfb5ce8d16d.png)


**データのブレンド編集画面**が開かれ、今回の場合、国データセットの国IDと、売上データセット（売上データセットに含まれる顧客テーブル）の国IDで結合してくれていること確認できます。

なお、ツールが検出して設定してくれた結合キーを削除したり、または別の結合キーで結合（照合）することも、この編集画面上で行うことも可能です。

確認ができたら、**OKボタン**、次に**ビジュアル化**をクリックし、ワークブックの作成画面に戻ります。


![018.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/d30ac429-523b-a1ab-d4dd-9c3ad23c1222.png)


それでは、最後に、複数のデータセットからそれぞれ項目を選んでビジュアル化ができるか試してみましょう。

**売上**データセットの**売上**フォルダーを開いて、**売上**（メジャー）を、右側のキャンバスにドラグアンドドロップします。


![023.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/b0d8ae95-5688-5879-0917-9ae1ed6546f2.png)




次に、国データセットから、**”国**”を選択して、キャンバスにドラグ＆ドロップします。ADWとGoogle Drive上のCSVファイルという異なるデータソースから取り込まれたデータセット同士を、ワークブック上で結合して、ビジュアライズすることが出来ました。


![019.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1513882/3d6481ce-c831-82c3-e98c-f44a2470ffef.png)


今回は、Google Driveに保存されたデータを使いましたが、もちろん、ローカルPCから取り込んだCSVファイルでも同じようにデータベースのデータとワークブック上で結合することが出来ます。

データベースには実績値が入っていて、予測値や予算などをCSV（またはExcel）で取り込んでワークブック上で簡単に結合したい場合などにもこの機能は活用できそうですね。





# まとめ

- Oracle Analytics Cloudでは、Google Drive上のCSVファイルなど、をデータセットとして取り込んで、データの可視化に利用することができる
- Oracle Analytics Cloudでは、Oracle Autonomous Data Warehouseなどのリレーショナルデータベースから取り込んだデータセットと、フラットファイル（CSVやExcel）データから取り込んだデータセットをワークブック上で結合することが出来る