XplentyからBigQueryに接続設定を行ってみる

2020.06.05

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

データアナリティクス事業本部のkobayashiです。

最近パイプライン構築ツールXplentyを扱う機会に恵まれました。XplentyはETL、ELTツールとして様々なデータソースを扱え、また処理もXplentyのGUIで直感的に作成できます。これからXplentyを使って様々なデータソースに接続しジョブを作成して色々試してその内容を発信してみようと思います。

Xplenty | Simplified ETL & ELT to BigQuery, Snowflake, Redshift & Azure

まだ触り始めなので今回はなにか具体的なジョブを紹介というよりもまずはBigQueryへの接続方法をまとめたいと思います。

XplentyによるBigQueryへの接続方法

以下のXplentyのコミュニティに接続方法が記載されているので基本的にはこのドキュメントの通りに進めます。

Allowing Xplenty access to my Google BigQuery dataset – Xplenty Support & Help

設定手順

設定は以下の順序で行います。

  1. GCPのIAMと管理でXplenty用のメンバーを追加する。
  2. BigQueryのデータセット権限にて1で追加したメンバーに権限を付与する。
  3. Xplentyでconnectionを作成する。

すべてGUIで設定できますのでそれほど難しくなく設定できると思います。

GCPのIAMと管理でXplenty用のメンバー追加

GCPで接続したいプロジェクトのマネジメントコンソールにアクセスします。

  1. コンソールのサイドバーからIAMと管理 > IAMを選択する。
  2. 画面上部の追加を選択する。
  3. 「プロジェクトへのメンバー追加」モーダルが出るので新しいメンバーに869780223921-fkm5hu2ev8la67tqrntm6b5tjm6c6sgl@developer.gserviceaccount.comを入力し、権限にプロジェクト(閲覧者)を設定する。このアドレスはこのアドレスはXplentyのGoogleCloudメールですので今回の設定で固有の値ではなく共通のアドレスになります。

BigQueryのデータセット権限を付与

次にXplentyで扱いたいBigQueryのデータセットにXplentyから接続できるように権限を付与します。

  1. マネジメントコンソールからBigQueryを選択する。
  2. 対象のデータセットを選択し、共有データセットを選択する。
  3. 「データセットの権限」モーダルが出るので、メンバーを追加で869780223921-fkm5hu2ev8la67tqrntm6b5tjm6c6sgl@developer.gserviceaccount.comを入力し、権限でBigQueryデータ編集者を設定する。

これでGCP側の設定は終わりますので、次にXplentyを設定します。

Xplentyでconnectionの作成

XplentyのGUIでConnectionを作成します。

  1. Xplentyにログインして左のメニューよりConnectionsを選択する。
  2. New connectionボタンを押下するとXplentyで設定できるデータソースが出てくるのでBigQueryを選択する。
  3. 設定値の入力フォームが出てくるので入力して保存する。
  • Name : わかりやすい名前を入力
  • Project ID : GCPのプロジェクトIDを入力
  • Dataset ID : データセット名を入力
  • Region : データセットのリージョンを選択

これでXplentyでBigQueryのデータセットに接続できるようになりましたので、実際にデータが利用できるところまでを確認してみます。

XplentyでBigQueryのデータの確認

XplentyのPackageでBigQueryコンポーネントを追加してデータテーブルの中身が利用できる所までを設定してみます。

  1. PackagesでNew packageを押下してPackageを作成する。
  2. Add componetを押下し、SourcesでBigQueryを選択する。
  3. BigQueryコンポーネント作成用のモーダルが表示されるので、設定したBigQueryのconnectionを選択する。

ここから先、Source propertiesでデータの取得方法が選択できるので今回は両方試してみます。

Tableアクセスモード

Source propertiesTableを選択し、テーブル名を入力します。

テーブル名を入力しNextを押下すると、読み込むカラムの選択とデータのプレビューが行なえBiqQueryのデータテーブルからデータが取れることが確認できます。

Queryアクセスモード

Source propertiesQueryを選択し、クエリを入力します。

「データテーブルを結合したデータを扱いたい」「データにフィルタをかけてから扱いたい」といった少し手を加えてからデータを扱いたい場合はQueryアクセスモードでクエリを記述すると目的のデータが取得できます。

テーブル名を入力しNextを押下すると、読み込むカラムの選択とデータのプレビューが行なえBiqQueryのデータテーブルからデータが取れることが確認できます。

まとめ

BigQueryとXplentyの接続方法をまとめました。特に難しい箇所もなく接続設定が行えると思います。 次回は具体的にPackageを作成してETLやELT処理を記事にまとめたいと思います。

最後まで読んで頂いてありがとうございました。