こんにちは、donutです。
今回は、「LookerとBigQueryのデータを連携させる方法」について試してみたいと思います。
なお、Lookerについては、概要について執筆した記事もありますので、あわせてお読みいただく
ことでより理解が深まるかと思います。
<参考>
◆次世代BIプラットフォーム「Looker」についてご紹介
BigQuery編:アカウント及び秘密鍵の作成
LookerとBigQueryを接続する場合、以下の2つの方法があります。
・サービスアカウントの作成及びJSON Credentials Certificateの作成
・Google OAuthを利用した認証
今回は「サービスアカウントの作成およびJSON Credentials Certificateの作成」を
利用した方法で設定していきたいと思います。
※サービスアカウントを作成する場合、Google Cloudの管理者権限が必要です。
BigQuery(Google Cloud)での作業:サービスアカウント作成
①「プロジェクト名」→「APIとサービス」→「認証情報」の順に展開します。
②「+認証情報を作成」→「サービスアカウント」を選択します。
③「サービスアカウント名」と「サービスアカウントID」を入力・作成します。
※「サービスアカウント名」を作成すると「サービスアカウントID」も自動で作成されます。
④「作成して続行」→「ロールを選択」をクリックし、「BigQuery」→「BigQueryデータ編集者」
を選択します。
⑤「+別のロールを追加」をクリックし、④と同じ方法で「BigQuery」を追加します。
⑥「続行」をクリックすると、サービスアカウントのアクセス権限の画面が表示されますが、
ここではオプションを設定しないため、そのまま「完了」をクリックします。
⑦下記画面のようにサービスアカウントが作成・表示されれば完了となります。
BigQuery(Google Cloud)での作業:秘密鍵の作成
次に、秘密鍵でもある「JSON Credentials Certificate」を作成していきます。
①サービスアカウント項目にある「編集(鉛筆アイコン)」をクリックします。
②「キー」タブより「鍵を追加」→「新しい鍵を作成」の順に展開します。
③秘密鍵の作成ダイアログで「JSON」を指定し、「作成」をクリックします。
④下記ダイアログが表示され、PCにJSONファイルがダウンロードされるので、任意のフォルダへ
保存してください。
⑤「キー」タブで下記のように表示されれば完了となります。
BigQuery(Google Cloud)側での設定作業は以上となります。
Looker編:データベースの接続設定
今度は、Lookerにおけるデータベースをはじめとした接続設定を行いたいと思います。
Looker側での作業:データベースの設定
①Lookerを開き、「管理」→「データベース」→「接続」の順に展開します
②「Connections」画面右上の「Add Connection」をクリックします。
③「データベースをLookerに接続」画面で設定を行っていきます。
※環境によっては「Connection Settings」画面が表示される場合もありますが、
設定内容は同一になります。
※「オプション設定」については既定のままで設定します。
【各項目について】
・名前:任意の接続名を入力します。
※Lookerのモデルファイルではこの名前で参照します。
・Dialect: 「Google BigQuery Standard SQL」もしくは
「Google BigQuery Legacy SQL」を指定します。
※今回は「Google BigQuery Standard SQL」を指定しています。
・請求プロジェクト:使用データを持つ 「GoogleプロジェクトID」を入力します。
※「プロジェクト名」ではありませんのでご注意ください。
・Dataset:使用予定のデータセットの名前を入力します。
※この部分は、BigQueryデータベース内のデータセット名と一致している
必要があります。
・Service Account Email: BigQuery(Google Cloud)の手順で作成した
サービスアカウントのメールアドレスを入力します。
・認証(サービスアカウント):BigQuery(Google Cloud)の手順で作成した
秘密鍵(JSONファイル)をアップロードします。
・Persistent Derived Tables:Lookerの永続的な派生テーブルを指します。
※Lookerで定義したSQLまたはLookMLの内容を元に、接続先のDWH・DBに
実テーブルを作成する機能です。
チェックをすると、「Service Account Email」と
「Service Account JSON/P12 File(秘密鍵)」項目が追加で表示されます。
同一のファイル名を入力、JSONファイルを添付してください。
・Temp Dataset:永続的派生テーブル(PDT)を書き込むためのデータセットです。
※ここでは「Dataset」項目と同一名で設定します。
<参考>
◆Lookerの派生テーブル
④「テスト」をクリックして連携可否を確認し、成功した場合は「接続」をクリックします。
※接続に成功すると下記の画面が表示されます。
⑤「Connections」画面に戻り、③で作成したデータベース右側にある「Test」をクリックし、
もう一度テストを実施します。※成功すると下記のような結果となります。
以上をもって、LookerとBigQueryの接続を行うことができました...!
今までの作業内容を大まかにまとめると、以下の流れになります。
1.BigQuery(Google Cloud)でサービスアカウントを作成する
2.BigQuery(Google Cloud)で秘密鍵(JSON)ファイルを作成する
3.Lookerでデータベース接続の設定、接続テストを行う
今回は、LookerとBigQueryの連携・接続方法についてご紹介しましたが、次回は新規作成した
LookML Projectで実際にモデルとビューを作成し、グラフの可視化まで行っていきたいと思います。
また、弊社ではLookerに関する資料も公開しています。
下記ページよりダウンロードが可能ですので、あわせてご参照ください。
<参考>
◆Looker概要資料