Power BI 連携ガイド
Revision: 2.0.0-12154-62531f11
1 はじめに
1.1 本書の構成
本書では、GridDB CloudとPower BIを組み合わせた使い方を説明します。各章の内容は次のとおりです。
- はじめに 
 本書の構成及び用語について説明します。
- Power BIについて 
 Power BIについて説明します。
- Web APIでの連携について 
 GridDB CloudのWebAPIで出力したデータを連携し、Power BIで分析を行う例を紹介します。
- ファイルでの連携について 
 GridDB Cloudから出力したデータファイルを連携し、Power BIで分析を行う例を紹介します。
- オンプレミス データ ゲートウェイでの連携について 
 On-premises gateway経由でGridDB Cloudからデータを連携し、Power BIで分析を行う例を紹介します。
1.2 用語の説明
本書で用いられる用語の説明です。
| 用語 | 意味 | 
|---|---|
| 運用管理GUI | GridDB Cloudを管理するWebアプリケーションです。 | 
2 Power BIについて
2.1 概要
Power BIとは、Microsoftから提供されているデータ分析の為のBIツール/BIサービスの総称です。
 GridDB CloudとPower BIを組み合わせることで、GridDB Cloudで保持しているデータを分析することが可能です。
 本書では、データ分析が可能な「Power BI Desktop」・「Power BIサービス」とGridDB Cloudを組み合わせた使い方を紹介します。
なお、Power BIでは、データ分析以外にも分析結果の共有やWebページへの埋め込みといったことも可能です。
 詳細については、Microsoftから提供されている公式ドキュメントを参照してください。
2.2 連携手段
GridDB CloudとPower BIを組み合わせてデータを分析する場合、以下の手段が存在します。
- Web APIでの連携 
 GridDB Cloudで提供しているWebAPIから出力したデータを連携し、データ分析を実施します。
 「Power BI Desktop」のみ本連携手段で分析が可能です。
- ファイルでの連携 
 GridDB Cloudで提供している運用管理GUIから出力したデータファイルを連携し、データ分析を実施します。
 「Power BI Desktop」・「Power BIサービス」のいずれでも本手段で分析が可能です。
- オンプレミス データ ゲートウェイ経由での連携 
 ご用意いただいたVM(Windows VM)へMicrosoftから提供されているオンプレミス データ ゲートウェイを導入し、オンプレミス データ ゲートウェイ経由で連携したデータを基に、データ分析を実施します。
 なお、本手段では「Power BI Desktop」で生成された情報を基に、オンプレミス データ ゲートウェイ経由で「Power BIサービス」がデータを取得・更新します。
 その為、「Power BI Desktop」・「Power BIサービス」の両方を利用する必要があります。いずれかのツール/サービスのみの連携はできません。
3 Web APIでの連携について
3.1 概要
GridDB CloudとPower BIの間でWeb API経由でのデータ連携を行い、データ分析する際の方法を紹介します。
3.2 必要となるリソース等
ファイルで連携を行い、データを分析する際に必要となるリソース・設定を紹介します。
 なお、本書では各リソースの準備作業は、割愛させていただきます。
3.2.1 「Power BI Desktop」との連携で必要となるリソース等
- Power BI Desktop
 Microsoftの公式ホームページからダウンロードし、分析を実施する端末へインストールしてください。
 なお、Power BIアカウントがない場合でも、利用が可能になっています。
3.2.2 Power BI Desktopへの取り込み
データをPower BI Desktopへ取り込みます。
端末上でPower BI Desktopを起動してください。
 または
 または 
起動後、[データを取得]を押下してください。

[空のクエリ]を押下してください。

[Power Queryエディター]画面が表示されますので、[ホーム] > [クエリ]の[詳細エディター]を押下してください。

[詳細エディター]が表示されますので、

ウィンドウ内へ以下の内容を貼り付け、[完了]を押下してください。
let
    url = "{URL}/{クラスタ名}/dbs/{データベース名}/sql",
    headers = [#"Content-Type" = "application/json; charset=UTF-8", #"Authorization" = "{認証情報}"],
    postData = Text.ToBinary("[{""type"":""sql-select"", ""stmt"":""{SQL}""}]"),
    response = Web.Contents(
        url,
        [
            Headers = headers,
            Content = postData
        ]
    ),
    jsonResponse = Json.Document(response),
    json = jsonResponse{0},
    rows = json[results],
    columns = json[columns],
    columntable = Table.FromRecords(columns),
    columnlist = Table.ToList(Table.SelectColumns(columntable, "name")),
    container = Table.FromRows(rows, columnlist)
in
    container
なお、{}で囲われた内容については、貼り付け前に差し替えが必要となります。
 詳細は以下をご確認ください。
| 項目名 | 内容 | 
|---|---|
| URL | お知らせでお伝えしたWEB APIのURLを指定 | 
| クラスタ名 | お知らせでお伝えしたクラスタ名を指定 | 
| データベース名 | 接続先のデータベース名を指定 | 
| 認証情報 | データベース接続時のユーザ名/パスワードをBasic認証形式で指定 | 
| SQL | データ取得時に発行するSQL文を指定 | 
画面内へデータのプレビューが表示されますので、内容を確認いただき、問題がなければ、[閉じて適用]を押下してください。
WebAPI経由で連携されたデータがPower BI Desktopへ取り込まれ、フィールド内に反映されます。

フィールドで軸や値とするデータを選択後、グラフ・フィルターを設定することで、Power BI Desktop上でデータ分析が可能な状態となります。
 
 
4 ファイルでの連携について
4.1 概要
GridDB CloudとPower BIの間でファイルでのデータ連携を行い、データ分析する際の方法を紹介します。
4.2 必要となるリソース等
ファイルで連携を行い、データを分析する際に必要となるリソース・設定を紹介します。
 なお、本書では各リソースの準備作業は、割愛させていただきます。
4.2.1 「Power BI Desktop」との連携で必要となるリソース等
- Power BI Desktop
 Microsoftの公式ホームページからダウンロードし、分析を実施する端末へインストールしてください。
 なお、Power BIアカウントがない場合でも、利用が可能になっています。
4.2.2 「Power BI サービス」との連携で必要となるリソース等
- Power BIアカウント
 MicrosoftのPower BI公式ホームページから取得してください。
4.3 連携手順
4.3.1 ファイルダウンロード
データ連携する為のファイルを運用管理GUIからダウンロードします。
『GridDB Cloud 運用管理GUIリファレンス』(GridDB_Cloud_ManagementGui_Reference.html)の「4.14 エクスポート/インポート機能」を参照し、CSV形式のデータが含まれているzipファイルをダウンロードしてください。
ダウンロードしたzipファイルを解凍してください。
4.3.2 データ変換
運用管理GUIからダウンロードしたCSVファイルには、先頭へタイトル行が付加されていません。
 また、分析にあたり不要な行が4行分存在します。その為、取り込みに支障がないようにデータ変換を行う必要があります。

本書では、Windowsに標準でインストールされているPowerShellを用いて、データ変換をする方法を紹介します。
ファイルをダウンロードした端末上で、PowerShellを起動してください。
起動したPowerShell上で以下のコマンドを入力し、ファイルを保存したディレクトリへ移動してください。
 なお、<ファイル保存先>については、ファイルを保存したディレクトリのパスを適宜設定してください。
cd <ファイル保存先>

ディレクトリ移動後、PowerShell上で以下のコマンドを入力してください。
 なお、<CSVファイル名>については、変換対象となるCSVファイルの名前を適宜設定してください。
$TARGET_CSV=Get-ChildItem "<CSVファイル名>"

PowerShell上で以下のコマンドをまとめて入力してください。
$CURRENT_PATH=(Convert-Path .)
$JSON_DATA=ConvertFrom-Json -InputObject (Get-Content -Path ((($TARGET_CSV).BaseName) + "_properties.json") -Raw)
$COL_NAME=$JSON_DATA.columnSet | ForEach-Object { $_.columnName }
$CSV=Import-Csv -Path $TARGET_CSV -Header $COL_NAME | Select-Object -Skip 4
$CSV | Export-Csv -Path ($CURRENT_PATH + "\Convert_" + ($TARGET_CSV.Name)) -Encoding Default -NoTypeInformation

ファイルを保存したディレクトリ内へ、データ変換したファイルが「Convert_<CSVファイル名>」の形式で生成されているかご確認ください。

4.3.3 Power BI Desktopへの取り込み
データをPower BI Desktopへ取り込みます。
端末上でPower BI Desktopを起動してください。
 または
 または 
起動後、[データを取得]を押下してください。

[テキスト/CSV]を押下してください。

データを開く画面が表示されますので、取り込む対象のデータを選択し、[開く]を押下してください。

csvに含まれるデータのプレビューが表示されますので、内容を確認し、[読み込み]を押下してください。

なお、「カラムに別名を付与する」や「特定列を削除する」といったデータ変換を希望される場合、[データの変換]を押下し、起動したPower Queryエディター上で変換を実施してください。 
 本書ではPower Queryエディターの操作については、割愛させていただきます。詳細については、Microsoftのサポートページを参照してください。
ファイル経由で連携されたデータがPower BI Desktopへ取り込まれ、フィールド内に反映されますので、Power BI Desktop上でデータ分析が可能な状態となります。

フィールドで軸や値とするデータを選択後、グラフ・フィルターを設定することで、Power BI Desktop上でデータ分析が可能な状態となります。

4.3.4 Power BI サービスへの取り込み
データをPower BI サービスへ取り込みます。
Webブラウザを起動し、Power BIサービスにサインインしてください。

画面左下の[データを取得]を押下してください。

データ取得の選択画面が表示されるので、新しいコンテンツの作成 > ファイル内の[取得]を押下してください。

取り込むデータを保存した場所をローカルファイル、OneDriveのいずれかから選択してください。

保存先を選択しますと、データを開く画面が表示されますので、取り込む対象のデータを選択し、[開く]を押下してください。

ファイル経由で連携されたデータがPower BI サービスへ取り込まれますので、画面左のメニューから[データセット]を押下し、画面上でデータ(データセット)が表示されるか確認してください。

表示されましたら、データセット押下後のメニューから、[レポートの作成]を押下し、

フィールドで軸や値とするデータを選択後、グラフ・フィルターを設定することで、Power BI サービス上でのデータ分析が可能となります。

5 オンプレミス データ ゲートウェイでの連携について
5.1 概要
GridDB CloudとPower BIの間でオンプレミス データ ゲートウェイ経由でのデータ連携を行い、データ分析する際の方法を紹介します。
5.2 必要となるリソース等
GridDB CloudとPower BIを組み合わせてデータを分析する際に、必要となるリソース・設定を紹介します。
 なお、本書では各リソースの準備作業は、割愛させていただきます。
5.2.1 「Power BI サービス」との連携で必要となるリソース等
- Power BIアカウント
 MicrosoftのPower BI公式ホームページから取得してください。
- Azure アカウント
 MicrosoftのAzure 公式ホームページから取得してください。
- オンプレミス データ ゲートウェイ インストーラー
 MicrosoftのPower BI公式ホームページから取得してください。
- GridDB ODBCドライバ
 運用管理GUIのサポートページからダウンロードしてください。
- Azure Virtual Network(VNet)
 Azureアカウント作成後、Azure Portalの[仮想ネットワーク]画面から作成してください。
- Windows VM
 Azureアカウント作成後、Azure Portalの[Virtual Machines]画面から作成してください。なお、オンプレミス データ ゲートウェイには、推奨構成が定義されています。詳細については、Microsoftから提供されている公式ドキュメントを参照してください。
- Power BI Desktop Microsoftの公式ホームページからダウンロードし、Windows VMへインストールしてください。
- Virtual Networkピアリング(ピアリング接続)
 『GridDB Cloud 運用管理GUIリファレンス』(GridDB_Cloud_ManagementGui_Reference.html)を参照いただき、運用管理GUIで設定を実施してください。
5.3 連携手順
5.3.1 ODBCドライバ導入
『GridDB ODBCドライバ説明書』(GridDB_ODBC_Driver_UserGuide.html)を参照いただき、Windows VMへODBCドライバを導入してください。
5.3.2 Gateway構築
Microsoftから提供されている公式ドキュメントを参照いただき、Windows VMへオンプレミス データ ゲートウェイを導入してください。
5.3.3 Power BIサービスとの連携
Power BIサービス上でオンプレミス データ ゲートウェイを追加します。
Webブラウザを起動し、Power BIサービスにサインインしてください。

画面右上の設定から[ゲートウェイを管理]を押下してください。

[データソースの追加]を選択してください。

各項目に以下の情報を設定してください。
| 項目名 | 内容 | 
|---|---|
| データソース名 | 任意の名前 | 
| データソースの種類 | ODBC | 
| 接続文字列 | システムDSN | 
| 認証方法 | Basic | 
| ユーザー名 | 接続ユーザ名 | 
| パスワード | 接続ユーザパスワード | 
各内容の詳細は以下を参照してください。
- データソース名 
 ”データソースを判別可能な任意の名前”を設定します。
 本項目で設定した名前がPower BIサービス上のデータソース名として使用されます。
- データソースの種類 
 ODBCドライバ経由でGridDB Cloudへ接続しますので、”ODBC”を設定します。
- 接続文字列 
 ”ODBCドライバ導入時に設定したシステムDSN”を設定します。
 詳細は『GridDB ODBCドライバ説明書』(GridDB_ODBC_Driver_UserGuide.html)の「1.4 ODBCデータソースの登録」を参照してください。
- 認証方法 
 Basic認証でGridDB Cloudへ接続しますので、”Basic”を設定します。
- ユーザ名 
 ”接続時に使用するユーザ名”を設定します。
 ユーザが作成されていない場合は、運用管理GUIログイン後、[Security]画面から作成が可能です。
 詳細は『GridDB Cloud 運用管理GUIリファレンス』(GridDB_Cloud_ManagementGui_Reference.html)の「4.13.3 データベースユーザの作成」を参照してください。
- パスワード 
 ”接続時に使用するユーザパスワード”を設定します。
 ユーザが作成されていない場合は、運用管理GUIログイン後、[Security]画面から作成が可能です。
 詳細は『GridDB Cloud 運用管理GUIリファレンス』(GridDB_Cloud_ManagementGui_Reference.html)の「4.13.3 データベースユーザの作成」を参照してください。
設定後は[追加]を押下し、画面上で接続に成功することを確認してください。

5.3.4 Power BI Desktopとの連携
Windows VM上にインストールしたPower BI DesktopからGridDB Cloudに接続します。
Windows VM上でPower BI Desktopを管理者として起動してください。
 または
 または 
[サインイン]を押下し、取得されたPower BIアカウントとしてサインインしてください。

サインイン後、[データを取得]を押下してください。

[詳細…]を押下してください。

[ODBC]を選択した状態で[接続]を押下してください。

表示された[ODBCからインポート]画面上で、Windows VM上で設定したGridDB ODBCドライバのDSNを選択してください。選択後、[OK]を押下してください。

ODBC経由で連携されたデータがPower BI Desktopへ取り込まれ、画面上のフィールド内に反映されることをご確認ください。

5.3.5 Power BI Desktop/Power BIサービスの連携
データセットを発行し、Power BI DesktopとPower BIサービスを連携させます。
Windows VM上のPower BI Desktop上で[発行]を押下してください。

Power BIサービスへ発行するデータセットを選択し、発行してください。

発行できたことを確認してください。

作業端末でWebブラウザを起動し、Power BIサービスにサインインしてください。

画面左のメニューから[データセット]を押下し、画面上で発行されたデータ(データセット)が表示されるか確認してください。

5.3.6 オンプレミスデータゲートウェイとの連携設定
Power BIサービスにアップロードしたデータセットとオンプレミスデータゲートウェイを連携させます。
画面左のメニューから[データセット]を押下し、アップロードしたデータセットが表示されていることを確認します。

アップロードしたデータセットの右側にある縦に並んだ[…]を選択し、[設定]を押下します。

[ゲートウェイ接続]を押下し、オンプレミスデータゲートウェイとの接続設定を開きます。

[マップ先]に先の[Power BIサービスとの連携]で設定したデータソースを選択し、[適用]を押下します。

オンプレミスデータゲートウェイと接続されていることをご確認ください。

トップ画面より、[データセット]を選択し、アップロードしたデータセットを選択します。

[更新]ボタンを押下し、データが更新されることを確認します。




