TECH BLOG

MENU

オンプレクラウド

MotionBoard

MotionBoard

BigQueryに溜まっているデータを直接MotionBoardで参照したい場合どのように設定したらよいのか…。外部接続設定のパラメータの指定方法やドライバーの作成方法など少し特殊な設定が必要です。この記事ではオンプレミス版、クラウド版を問わずMotionBoardからBigQueryへの接続方法をご説明します。

前提:BigQueryにテーブルを持っている

今回はBigQuery側に下記テーブルを保持していることを前提とします。
データセット名:SAMPLE
テーブル名  :SAMPLE

 

BigQueryにサービスアカウントを作成し必要情報を確認する

BigQueryに接続する際はサービスアカウントによる接続とユーザーアカウントを使用した接続の2通りあります。今回は発行されたキーファイルを使用して簡易的に接続できるサービスアカウントによる接続でご説明します。

 

BigQuery APIが有効になっているか確認する

BigQueryに接続する際はAPIで接続するため、まずBigQuery APIが有効になっているか確認します。

まずGoogle Cloud Platformに管理者でログインします。

Google Cloud Platform

①ログイン後、画面左上のメニューを選択します。
②メニューから「APIとサービス」を選択します。
③「ライブラリ」を選択します。
④「ビッグデータ」を選択します。
⑤「BigQuery API」を選択します。
⑥「APIが有効です」と記載されていることを確認します。
 ※有効ではない場合は有効にします。

 

サービスアカウントを作成し「メールアドレス」を控えておく

続いてサービスアカウントを作成します。サービスアカウントはMotionBoardからBigQueryに接続する際の接続アカウントになります。

①画面左上のメニューを選択します。
②「APIとサービス」を選択します。
③「認証情報」を選択します。
④「認証情報を作成」を選択します。
⑤「サービスアカウント」を選択します。
⑥「サービスアカウント名」を入力します。
 今回は techblog とします。
※ここで自動生成されるメールアドレスをコピーして控えておきます。
⑦「完了」を選択します。

 

秘密鍵のファイル(P12ファイル)を作成する

外部接続の設定時に使用する秘密鍵のファイル(P12ファイル)をあらかじめダウンロードしておきます。

①サービスアカウントを作成した後に表示される画面から
 正しくサービスアカウントが作成されたことを確認し、鉛筆マークから編集に入ります。
ここで一意のIDを控えておきます。
②「キー」タブを選択します。
③「鍵を追加」を選択します。
④「新しい鍵を作成」を選択します。
⑤キーのタイプに「P12」を選択します。
⑥「作成」を選択します。
ここでダウンロードされたP12ファイルをデスクトップなど、分かりやすいところに置いておきます。

⑦「秘密鍵がパソコンに保存されました」と表示されたら秘密鍵のパスワードをコピーアイコンからコピーして控えておきます。

 

プロジェクトIDを確認する

Google Cloud上の「プロジェクト」とは「データセット」の上位の管理対象です。
プロジェクト>データセット>テーブル の順番で管理されます。
今回は上位層となるプロジェクトIDを確認します。

①画面左上のメニューを選択します。
②「IAMと管理」を選択します。
③「設定」を選択します。
④「プロジェクトID」を確認します。
ここでプロジェクトIDを控えておきます。

 

サービスアカウントにBigQueryジョブユーザーのロールを割り当てる

作成したサービスアカウントに「BigQueryジョブユーザー」というロールを割り当てます。ジョブとはデータの読み込み、データのエクスポート、データのクエリ、データのコピーなど、BigQuery がユーザーに代わって実行するアクションのことです。

①画面左上のメニューを選択します。
②「IAMと管理」を選択します。
③「IAM」を選択します。
④「アクセス権を付与」を選択します。
⑤「新しいプリンシパル」に作成したサービスアカウントのメールアドレスを入力します。
⑥「ロール」に BigQueryジョブユーザー を選択します。
⑦「保存」を選択します。
保存を選択した後に「ロール」BigQueryジョブユーザー が付与されていることが確認できたら完了です。

 

参照するデータセットに対してBigQueryデータオーナーのロールを割り当てる

プロジェクト単位の権限として「BigQueryジョブユーザー」、
データセット単位の権限として「BigQueryデータオーナー」があります。
今回はデータセット単位の権限として「BigQueryデータオーナー」の権限を付与します。

①画面左上のメニューを選択します。
②「BigQuery」を選択します。
③「BigQuery Studio」 を選択します。
④データセットアイコンの「SAMPLE」を選択します。
ここでデータセット名を控えておきます。
⑤「共有」を選択します。
⑥「権限」を選択します。
⑦「プリンシパルを追加」を選択します。
⑧「新しいプリンシパル」にサービスアカウントのメールアドレスを入力します。
⑨「ロール」に BigQuery データオーナー を選択します。
⑩「保存」を選択します。
⑪BigQuery データオーナーにサービスアカウントが追加されたことを確認したら
 「閉じる」を選択します。

接続に必要な情報が揃ったらインポートの手順に進みます。

 

BigQueryのデータをMotionBoardから参照する

 

外部接続の設定でBigQueryを追加する

①外部接続の画面から「新規作成」を選択します。
②外部接続名を任意で入力します。
 ※今回は「BigQuery」とします。
③接続先タイプに「GoogleBigQuery」を選択します。
④「新規作成」を選択します。

つぎに基本情報を入力していきます。
赤文字が事前に整理した情報です。
①「ドライバタイプ」にGoogleBigQuery ServiceAccount(JDBC)を選択します。
②「データセットID」にデータセット名を入力します。
 ※今回はSAMPLEとします
③「プロジェクトID」にプロジェクトIDを入力します。
④「クライアントID」に一意のIDを入力します。
⑤「サービスアカウントのEメールアドレス」にサービスアカウントを作成した際に取得したメールアドレスを入力します。
⑥「サービスアカウントキー」に事前にダウンロードしたP12ファイルを指定します。
⑦「サービスアカウントキーのパスワード」に事前に取得したパスワードを入力します。
⑧「接続確認」をクリックし成功したら完了です。

 

ドライバーZIPファイルを取得する

CDataアダプターをダウンロードする

まず下記のURLよりMotionBoardのCDataアダプターダウンロードサイトにアクセスします。

MotionBoardのCDataアダプターダウンロードサイト

①ご利用のMotionBoardのバージョンに合わせて「CDataアダプターの配布」を選択します。
 ※今回はMotionBoard Ver.6.4 CDataアダプターの配布を選択します。
②Google BigQueryのダウンロードボタンをクリックします。
③ダウンロードした「BigqueryAdapter.zip」を解凍します。
④解凍したフォルダー内の「jdbc_bigquery_0.zip」を
MotionBoardのインストールディレクトリ>system>resources>communicater>drivers>extra にコピーします。

最後にサービスを再起動したら完了です。

BigQueryのデータをMotionBoardから参照することができました。
MotionBoard Cloudなら外部接続設定のみですぐに繋がり、オンプレミス版であれば「ドライバーZIPファイル(CDataアダプター)」を取得し外部接続設定をするだけで繋がりました。BigQueryのデータを参照したい場合は是非繋いでみてください!!

この記事にリアクションしてみませんか?

  • 分かりやすい (2)
  • 問題が解決した (0)
あなたのお役に立ててうれしいです!
プロフィールへ

山下 悦矢

MotionBoardとDr.Sumのプリセールスをしております。 歴は5年ほどになります。皆さんに分かりやすくお伝えできるように 頑張って発信してまいります。どうぞよろしくお願いいたします。

Related article

Related article関連記事

Pick up

Pick upおすすめ記事

【まとめ】SVFCloud帳票をinvoiceAgentに連携する方法

  • #帳票作成・出力
  • #システム連携
  • #電帳法
  • #文書定義
  • #処理定義

2024.04.18

SVF

Dr.Sum Copilotをインストールしてみた【OpenAI】

  • #Copilot

2024.04.05

Dr.Sum

特定の文字列で分割して階層構造をつくりたい!~DS Scriptで分割する~1

  • #データ加工
  • #DS Script

2023.07.17

Dr.Sum

Ranking

Rankingランキング

1

棒グラフを大きい順番に並び替えたい!(ソートしたい)

  • #デザイン
  • #グラフ
  • #集計表

2019.06.15

MotionBoard

2

カスタム項目の書き方 よく使う関数からIfまで

  • #データ加工

2023.07.28

MotionBoard

3

経過時間を時:分:秒で時刻表示したい!【320秒→05:20】

  • #グラフ

2022.08.02

MotionBoard

Info

Information

ウイングアーク1stからのお知らせ