こんにちは!リードエンジニアの杉本です。
BizteX Connect は BizteX 社が提供する国産iPaaS です。ノーコードでkintone やChatwork などさまざまなクラウドサービスと連携したフローを作成し、業務の自動化・効率化を実現することができます。この記事では、CData Connect Cloud を経由して BizteX Connect からSpark のデータを取得し活用する方法を説明します。
CData Connect Cloud はSpark のデータへのクラウドベースのOData インターフェースを提供し、BizteX Connect からSpark のデータへのアクセスを実現します。
Connect Cloud アカウントの取得
以下のステップを実行するには、CData Connect Cloud のアカウントが必要になります。こちらから製品の詳しい情報とアカウント作成、30日間無償トライアルのご利用を開始できますので、ぜひご利用ください。
Connect Cloud を構成
BizteX Connect でSpark のデータを操作するには、Connect Cloud からSpark に接続し、コネクションにユーザーアクセスを提供してSpark のデータのOData エンドポイントを作成する必要があります。
Spark に接続したら、目的のテーブルのOData エンドポイントを作成します。
(オプション)新しいConnect Cloud ユーザーの追加
必要であれば、Connect Cloud 経由でSpark に接続するユーザーを作成します。
- 「Users」ページに移動し、 Invite Users をクリックします。
- 新しいユーザーのE メールアドレスを入力して、 Send をクリックしてユーザーを招待します。
- 「Users」ページからユーザーを確認および編集できます。
パーソナルアクセストークン(PAT)の追加
OAuth 認証をサポートしていないサービス、アプリケーション、プラットフォーム、またはフレームワークから接続する場合は、認証に使用するパーソナルアクセストークン(PAT)を作成できます。きめ細かなアクセス管理を行うために、サービスごとに個別のPAT を作成するのがベストプラクティスです。
- Connect Cloud アプリの右上にあるユーザー名をクリックし、「User Profile」をクリックします。
- 「User Profile」ページで「Access Token」セクションにスクロールし、 Create PAT をクリックします。
- PAT の名前を入力して Create をクリックします。
- パーソナルアクセストークン(PAT)は作成時にしか表示されないため、必ずコピーして安全に保存してください。
Connect Cloud からSpark に接続
CData Connect Cloud では、簡単なクリック操作ベースのインターフェースでデータソースに接続できます。
- Connect Cloud にログインし、 Add Connection をクリックします。
- 「Add Connection」パネルから「Spark」を選択します。
-
必要な認証プロパティを入力し、Spark に接続します。
SparkSQL への接続
SparkSQL への接続を確立するには以下を指定します。
- Server:SparkSQL をホストするサーバーのホスト名またはIP アドレスに設定。
- Port:SparkSQL インスタンスへの接続用のポートに設定。
- TransportMode:SparkSQL サーバーとの通信に使用するトランスポートモード。有効な入力値は、BINARY およびHTTP です。デフォルトではBINARY が選択されます。
- AuthScheme:使用される認証スキーム。有効な入力値はPLAIN、LDAP、NOSASL、およびKERBEROS です。デフォルトではPLAIN が選択されます。
Databricks への接続
Databricks クラスターに接続するには、以下の説明に従ってプロパティを設定します。Note:必要な値は、「クラスター」に移動して目的のクラスターを選択し、
「Advanced Options」の下にある「JDBC/ODBC」タブを選択することで、Databricks インスタンスで見つけることができます。
- Server:Databricks クラスターのサーバーのホスト名に設定。
- Port:443
- TransportMode:HTTP
- HTTPPath:Databricks クラスターのHTTP パスに設定。
- UseSSL:True
- AuthScheme:PLAIN
- User:'token' に設定。
- Password:パーソナルアクセストークンに設定(値は、Databricks インスタンスの「ユーザー設定」ページに移動して「アクセストークン」タブを選択することで取得できます)。
- Create & Test をクリックします。
- 「Add Spark Connection」ページの「Permissions」タブに移動し、ユーザーベースのアクセス許可を更新します。
Connect Cloud にSpark OData エンドポイントを追加する
Spark に接続したら、目的のテーブルのOData エンドポイントを作成します。
- OData ページに移動し、 Add をクリックして新しいOData エンドポイントを作成します。
- Spark 接続(例:SparkSQL1)を選択し、Next をクリックします。
- 使用するテーブルを選択し、「Confirm」をクリックします。
コネクションとOData エンドポイントを設定したら、BizteX Connect からSpark のデータに接続できます。
Spark のデータに接続したプロジェクト・シナリオの作成
CData Connect Cloud 側の準備が完了したら、早速BizteX Connect 側でプロジェクト・シナリオの作成を開始します。
- まずはプロジェクトとシナリオ(フロー)を作成します。シナリオ(フロー)はプロジェクト単位でまとめて管理できるようです。
- 「新規プロジェクト作成」をクリック
- 任意の名称でプロジェクトを作成します。
- その後「+新規シナリオ作成」をクリックして、Spark のデータ連携シナリオの作成を進めていきます。
起動イベントの設定
シナリオの作成で一番最初に設定することが、起動イベントの構成です。BizteX Connect ではさまざまな起動イベントが存在しますが、今回は検証用途として「手動」実行にしてみました。
- 「アプリ選択」の一覧から「一般」を選択し
- 「ボタンを押して実行」を選択します。
- それぞれのイベントでは出力データが変数として格納されます。内容を確認して「完了して次へ」をクリックしましょう。
HTTP コネクタの構成
今回のシナリオでは、Spark のデータを取得して BizteX Connect で扱えるようにします。
- CData Connect Cloud へのアクセスには「HTTP コネクタ」が利用できるので、アプリの一覧から選択します。
- アクションは「HTTP リクエスト」を指定します。
- 続いて、データを取得するためのAPI リクエストを指定します。今回はデータを取得するのでGET リクエストです。対象のURL はCData Connect Cloud のAPI ドキュメントから取得してきて指定しましょう。
- 基本設定が完了したら、オプションを指定します。ここで最低限必要になるオプションはCData Connect Cloud への認証情報の指定です。以下のようなJSON 形式でx-cdata-authtoken のプロパティにCData Connect Cloud で構成したユーザーのトークンを指定すれば接続が行えます。
- すべての設定が完了したら出力結果を確認してみましょう。以下のようにBody の中の「value」オブジェクトの中に配列形式でデータが格納されていることが確認できます。正常にBizteX Connect からSpark のデータが取得できていますね。
- あとはBizteX Connect の各種機能を活用して、さまざまなサービスとの連携を実現できます。
クラウドアプリケーションからSpark のデータへのライブ接続
BizteX Connect からSpark リアルタイムデータに直接接続できるようになりました。これで、Spark のデータを複製せずにより多くの接続とアプリを作成できます。
クラウドアプリケーションから直接100を超えるSaaS 、ビッグデータ、NoSQL ソースへのリアルタイムデータアクセスを取得するには、CData Connect Cloud を参照してください。