Watson QueryからDb2に接続してデータを仮想化する

この記事では、IBM Cloudのデータ仮想化サービスWatson QueryからDb2に接続し、データを仮想化する手順を説明します。

# 1. Watson Query の有効化

Watson Queryを有効化していることが前提となります。
未済の場合は、[こちら](https://qiita.com/Shumpei_Kubo/items/1ff4f6d98de1435ce458)の手順を参照してWatson Queryを有効化してください。

以降、Watson Query画面での操作を行います。

# 2. Db2をデータソースとして追加する

- 画面左側のドロップダウンリストから、「仮想化」> 「データ・ソース」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/baab3fea-bbf8-42d6-e865-9d153cae08fb.png)

- 画面右上の「接続の追加」から、「新規接続」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/0df5b025-b2a3-98c9-d359-a8b465f5a385.png)

- 接続タイプとして「IBM Db2 Warehouse」を選択し、右下の「選択」をクリックします。
  （Db2の場合は「IBM Db2」を選択します。入力する接続情報は同じです。）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/25d35f0d-edca-2629-68f5-d6844539628c.png)

- 接続情報として以下の項目を入力します。
    - **名前**
    - **説明**（任意）
    - **データベース**
    - **ホスト名または IP アドレス**
    - **ポート**
    - **認証方式**
        - 〈ユーザー名およびパスワード〉の場合：
            - ユーザー名
            - パスワード
        - 〈APIキー〉の場合：
            - APIキー
    - **ポートはSSL対応**（各自の環境に応じて設定。defaultはチェックされている状態)
    - **SSL証明書**（各自の環境に応じて設定。defaultは空欄)

- 入力後、画面右上の「接続のテスト」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/61293b2e-0405-b980-f99d-0c605969058f.png)

- 接続のテストが成功すると、緑色のバナーメッセージが表示され、成功したことが分かります。成功を確認できたら、画面右下の「作成」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/5d9a7dd7-4e95-8550-543f-cdd90195c56b.png)

- 画面が自動で「データ・ソース」タブに遷移します。今作成した「IBM Db2 Warehouse」の接続情報が確認できたらOKです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/df85ad49-4b09-16e5-e00e-5f04feea77bc.png)



# 3. データ（テーブル）を仮想化する

- 画面左側のドロップダウンリストから、「仮想化」> 「仮想化」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/3a652efc-dbbd-6a8a-737a-d99cdc075ca0.png)

- 仮想化の対象となるテーブルの一覧（Watson Queryが検知したもの）が表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/bbecd6f4-863f-ae0e-f3f1-39bd868b653f.png)

- 仮想化したいテーブルを選択し、右上に表示される青いバーの「カートに追加」を選択します。（例として"CUSTOMER"を対象テーブルとします）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/0e76ff10-dabb-10e4-7f71-ed9a574b10b7.png)

- 画面右上の「カートの表示」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/c4490741-ebca-44fe-086f-927db609ea46.png)

- カート内の確認と表の仮想化を行います。
- 共有オプションで、「プロジェクトに割り当て」「カタログに公開」をそれぞれ設定します。
    - **「プロジェクトに割り当て」**：特定の分析プロジェクトで使用する場合は、こちらにチェックを入れ、割り当て先のプロジェクトを選択します。
    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/b04d0ba9-6559-0138-3f6b-ec4ccce47078.png)

    - **「カタログに公開」**：仮想化オブジェクトをカタログに公開して仮想データを管理する場合は、こちらにチェックを入れ、公開先のカタログを選択します。
    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/726ca152-962f-e3f9-e581-71a8d663da46.png)

- 仮想化対象のオブジェクトを編集します。
    - 表名を編集する場合、以下の赤枠部分を修正します。
    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/5e5f0f94-f536-eb24-8385-c1aa3f104ec7.png)

    - 列を編集する場合、テーブル情報の右端にある、点3つが縦に並んだ記号をクリックし、「列の編集」を選択します。
    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/1cf9ae84-df40-cb53-01c5-e0d653455fa7.png)

    列名を編集した場合は、画面右上の「適用」をクリックして変更を保存します。 
    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/c2d0b383-72ec-084f-d2e1-c2e5cf469b6b.png)

 - テーブルを仮想化します。画面右上の「仮想化」を選択します。
 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/d72f0b0a-5451-c706-0257-0b2a57a173e9.png)

- 確認メッセージが表示されるので、「確認」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/6afeed0f-d1bf-14b8-f46a-da60c146dc33.png)

- 仮想化が完了しました。結果を確認するため「仮想化データに移動」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/e31d9bc5-7f34-59d0-3049-f2236bb0808e.png)

- 先ほど仮想化したテーブルが表示されていることを確認できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/ba214be9-63e6-f1e1-ff34-2837603213ce.png)

- プレビューを表示します。テーブル情報の右端にある、点3つが縦に並んだ記号をクリックし、「詳細の表示」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/f780f654-23b2-7c66-bf62-c97d70cc0fba.png)

- 仮想化したテーブルのデータ内容が表示されました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2139447/961fc1af-f1d2-389a-d38e-aedb5b603a81.png)



以上