Mendix で BigQuery 連携アプリを構築
Mendix は、モバイルアプリとWeb アプリの両方を大規模に構築・保守できる高生産性アプリプラットフォームです。CData Connect AI と組み合わせることで、Mendix からクラウド間で即座にBigQuery のデータにアクセスできるようになります。この記事では、Mendix からCData Connect AI のデータソースに接続する方法を説明します。
CData Connect AI は BigQuery 専用のクラウド間インターフェースを提供し、ネイティブでサポートされているデータベースにデータをレプリケートすることなく、Mendix でリアルタイムのBigQuery のデータをインポートできます。Mendix でWeb およびモバイルアプリを構築する際、CData Connect AI はサポートされているすべてのSQL 操作(フィルター、JOIN など)を BigQuery に直接プッシュし、サーバーサイド処理を活用して必要な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
はじめに
Mendix 用に BigQuery への接続を設定
Mendix からBigQuery のデータを操作するには、Connect AI から BigQuery に接続し、接続へのユーザーアクセスを付与し、BigQuery のデータ 用のワークスペースを作成する必要があります。
Connect AI から BigQuery に接続
CData Connect AI は、シンプルなポイント&クリック操作でデータソースに接続できるインターフェースを提供しています。
- Connect AI にログインして「Sources」をクリックし、 Add Connection をクリックします
- Add Connection パネルから「BigQuery」を選択します
-
BigQuery への接続に必要な認証プロパティを入力します。
BigQuery 接続プロパティの取得・設定方法
Google BigQuery はOAuth 認証標準を使用します。個々のユーザーとしてGoogle API にアクセスするには、組み込みクレデンシャルを使うか、OAuth アプリを作成します。
OAuth では、Google Apps ドメインのユーザーとしてサービスアカウントを使ってアクセスすることもできます。サービスカウントでの認証では、OAuth JWT を取得するためのアプリケーションを登録する必要があります。
OAuth 値に加え、DatasetId、ProjectId を設定する必要があります。詳細はヘルプドキュメントの「はじめに」を参照してください。
- Save & Test をクリックします
-
Add BigQuery Connection ページの「Permissions」タブに移動し、ユーザーベースの権限を更新します。
Personal Access Token の追加
REST API、OData API、またはVirtual SQL Server 経由でConnect AI に接続する場合、Personal Access Token(PAT)を使用してConnect AI への接続を認証します。アクセス管理の粒度を維持するために、サービスごとに個別のPAT を作成することをお勧めします。
- Connect AI アプリの右上にある歯車アイコン()をクリックして設定ページを開きます。
- Settings ページで「Access Tokens」セクションに移動し、 Create PAT をクリックします。
-
PAT に名前を付けて「Create」をクリックします。
- Personal Access Token は作成時にのみ表示されるため、必ずコピーして安全な場所に保存してください。
Mendix 用に BigQuery エンドポイントを設定
BigQuery への接続後、対象テーブル用のワークスペースを作成します。
-
「Workspaces」ページに移動し、 Add をクリックして新しいワークスペースを作成します(または既存のワークスペースを選択します)。
- Add をクリックしてワークスペースに新しいアセットを追加します。
-
BigQuery 接続(例:GoogleBigQuery1)を選択し、「Next」をクリックします。
-
操作したいテーブルを選択し、「Confirm」をクリックします。
- ワークスペースのOData サービスURL をメモしておきます。例:https://cloud.cdata.com/api/odata/{workspace_name}
接続、PAT、ワークスペースの設定が完了したら、Mendix からBigQuery のデータに接続する準備が整いました。
BigQuery 連携アプリの構築
OData メタデータファイルのダウンロード
Mendix で接続を作成する際、接続フローにはData Source Contract File が必要です。以下の手順に従って、curl(コマンドラインツール)を使用してCData Connect AI のOData メタデータファイルをダウンロードします:
- お使いのOS 用のコマンドラインウィンドウを開きます。Windows では、スタートメニューを開いて「cmd」と入力し、Enter キーを押してコマンドプロンプトを開きます。macOS およびLinux では、ターミナルウィンドウを開きます。
- curl がシステムにインストールされているか確認するには、「curl -help」と入力してEnter キーを押します。インストールされていない場合は、curl のWeb サイトからインストールしてください。
-
以下のcurl コマンドを実行します。USER をCData Connect AI のユーザー名に、PAT を先ほど生成したPAT に置き換えてください:
curl -u USER:PAT https://cloud.cdata.com/api/odata/{workspace_name}/$metadata -o metadata.xml - curl コマンドで作成されたmetadata.xml ファイルを探し、アクセスしやすい場所に移動します。
Mendix からCData Connect AI に接続
以下の手順に従って、Mendix からCData Connect AI への接続を確立します:
- Mendix にログインし、Data Hub ページを開きます。
- 「Register a Data Source」セクションで「OData」を選択します。
- 上記の手順で取得したmetadata.xml ファイルをアップロードし、「Next」をクリックします。
- 「Data Source Name」と「Data Source Version」に希望する値を入力します。 「Data Source Relative Path」フィールドに「/api/odata/{workspace_name}」と入力し、「Next」をクリックします。
- 「Application information」ページで「Register a new application」をクリックします。
- 「Application Name」に名前を入力し、テクニカルオーナーを選択します(デフォルトでは現在ログインしているユーザーになります)。
- 「Next」をクリックします。「Environment Name」フィールドに希望する名前を入力します(例:CData Connect AI)。 「Environment Location」フィールドに「https://cloud.cdata.com」と入力し、必要に応じて適切な「Environment Type」(例:Production)を選択します。
- 「Done!」をクリックして接続を作成します。
これで、Mendix Studio Pro で接続を使用して、リアルタイムのBigQuery のデータにアクセスするアプリケーションを簡単に作成できるようになりました。
CData Connect AI の入手
クラウドアプリケーションから300以上のSaaS、Big Data、NoSQL ソースへのリアルタイムデータアクセスを実現するために、CData Connect AI を今すぐお試しください!