【ノーコード】Slingshot からBigQuery のデータに接続するバックエンドAPI を開発
CData API Server を使って、Slingshot から BigQuery に接続してダッシュボードを作成する方法を説明します。
BigQuery データ連携について
CData は、Google BigQuery のライブデータへのアクセスと統合を簡素化します。お客様は CData の接続機能を以下の目的で活用しています:
- OAuth、OAuth JWT、GCP インスタンスなど、すぐに使える幅広い認証スキームのサポートにより、BigQuery へのアクセスを簡素化します。
- BigQuery と他のアプリケーション間の双方向データアクセスにより、データワークフローを強化します。
- SQL ストアドプロシージャを通じて、ジョブの開始・取得・キャンセル、テーブルの削除、ジョブロードの挿入など、主要な BigQuery アクションを実行できます。
多くの CData のお客様は、Google BigQuery をデータウェアハウスとして使用しており、CData ソリューションを使用して、別々のソースからビジネスデータを BigQuery に移行し、包括的な分析を行っています。また、BigQuery データの分析やレポート作成に当社の接続機能を使用するお客様も多く、両方のソリューションを使用しているお客様も多数います。
CData が Google BigQuery 体験をどのように向上させるかについての詳細は、ブログ記事をご覧ください:https://jp.cdata.com/blog/what-is-bigquery
はじめに
API Server の設定
以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなBigQuery OData サービスを作成していきましょう。
BigQuery への接続
Slingshot からBigQuery のデータを操作するには、まずBigQuery への接続を作成・設定します。
- API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。
- 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「BigQuery」を選択します。
- 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
CData コネクタの追加方法はこちら >> - それでは、BigQuery への接続設定を行っていきましょう!
-
BigQuery 接続プロパティの取得・設定方法
Google BigQuery はOAuth 認証標準を使用します。個々のユーザーとしてGoogle API にアクセスするには、組み込みクレデンシャルを使うか、OAuth アプリを作成します。
OAuth では、Google Apps ドメインのユーザーとしてサービスアカウントを使ってアクセスすることもできます。サービスカウントでの認証では、OAuth JWT を取得するためのアプリケーションを登録する必要があります。
OAuth 値に加え、DatasetId、ProjectId を設定する必要があります。詳細はヘルプドキュメントの「はじめに」を参照してください。
- 接続情報の入力が完了したら、「保存およびテスト」をクリックします。
BigQuery 接続プロパティの取得・設定方法
Google BigQuery はOAuth 認証標準を使用します。個々のユーザーとしてGoogle API にアクセスするには、組み込みクレデンシャルを使うか、OAuth アプリを作成します。
OAuth では、Google Apps ドメインのユーザーとしてサービスアカウントを使ってアクセスすることもできます。サービスカウントでの認証では、OAuth JWT を取得するためのアプリケーションを登録する必要があります。
OAuth 値に加え、DatasetId、ProjectId を設定する必要があります。詳細はヘルプドキュメントの「はじめに」を参照してください。
API Server のユーザー設定
次に、API Server 経由でBigQuery にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。
- 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
-
次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
-
その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。
BigQuery 用のAPI エンドポイントの作成
ユーザーを作成したら、BigQuery のデータ用のAPI エンドポイントを作成していきます。
-
まず、「API」ページに移動し、
「 テーブルを追加」をクリックします。
-
アクセスしたい接続を選択し、次へをクリックします。
-
接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。
OData のエンドポイントを取得
以上でBigQuery への接続を設定してユーザーを作成し、API Server でBigQuery データのAPI を追加しました。これで、OData 形式のBigQuery データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。
(任意)オンプレミスDB やファイルからのAPI Server 使用
オンプレミスRDB やExcel / CSV などのファイルのデータをセキュアに外部公開する場合には、API Server のCloud Gateway / SSH ポートフォワーディングが便利です。Cloud Gateway の設定方法 記事を参考にしてください。
Slingshot にデータソースを追加する
CData API Server の設定が完了したら、Slingshot 側に接続設定を追加しましょう。
- Slingshot の対象のワークスペースに移動して「データソース」タブに移動し「+データソース」をクリックします。
- データソースの一覧から利用したいサービスを選択します。ここで先程CData API Server で設定したOData エンドポイントの接続を追加します。
- 「URL」にOData エンドポイントのURL を指定し「先制認証を使用する」にチェックを入れます。その上で「資格情報」を追加しましょう。
- 資格情報の種類は「汎用資格情報」になります。合わせてCData API Server のユーザー名を入力し、パスワードには先程生成したトークンを入力します。
- あとは「データソースの追加」をクリックすれば、データソースの接続設定は完了になります。
ダッシュボードを作成する
すべての準備が整ったのでBigQuery のデータを活用してダッシュボードを作成していきましょう。
- 「ダッシュボード」タブに移動して「+ダッシュボード」をクリックします。
- 先程追加したCData API Server へのOData フィードデータソースが表示されるので、これを選択します。
- すると、事前にCData API Server 上で登録しておいたテーブルの一覧がエンティティのセットとして表示されるので、任意のエンティティを選択しましょう。
- これでSlingshot 上に対象のデータがシームレスに読み込まれます。あとは可視化するためのラベルや値を選択することで、以下のように簡単にビジュアライズが実施できます。
まとめと30日の無償評価版のご案内
このように BigQuery 内のデータをSlingshot で利用することができるようになります。CData API Server は、30日の無償評価版があります。是非、お試しいただき、Slingshot からのデータ参照を体感ください。