Adalo は ノーコードでスマホやWebベースのアプリを構築できるクラウドサービスです。さらにCData Connect Cloud と連携することで、ノーコードアプリ開発用のKafka データへのクラウドベースのアクセスをノーコードで追加できます。本記事では、CData Connect Cloud 経由でAdalo からKafka 連携を実現する方法を紹介します。
CData Connect Cloud はKafka データへのクラウドベースのOData インターフェースを提供し、Adalo からKafka データへのリアルタイム連携を実現します。
Connect Cloud を構成
Adalo でKafka データを操作するには、Connect Cloud からKafka に接続し、コネクションにユーザーアクセスを提供してKafka データのOData エンドポイントを作成する必要があります。
Kafka に接続したら、目的のテーブルのOData エンドポイントを作成します。
(オプション)新しいConnect Cloud ユーザーの追加
必要であれば、Connect Cloud 経由でKafka に接続するユーザーを作成します。
- 「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 からKafka に接続
CData Connect Cloud では、簡単なクリック操作ベースのインターフェースでデータソースに接続できます。
- Connect Cloud にログインし、 Add Connection をクリックします。
- 「Add Connection」パネルから「Kafka」を選択します。
-
必要な認証プロパティを入力し、Kafka に接続します。
BootstrapServers およびTopic プロパティを設定して、Apache Kafka サーバーのアドレスと、対話するトピックを指定します。
認可メカニズム
- SASL Plain:User およびPassword プロパティを指定する必要があります。AuthScheme は'Plain' に設定します。
- SASL SSL:User およびPassword プロパティを指定する必要があります。AuthScheme は'Scram' に、UseSSL はtrue に設定します。
- SSL:SSLCert およびSSLCertPassword プロパティを指定する必要があります。UseSSL はtrue に設定します。
- Kerberos:User およびPassword プロパティを指定する必要があります。AuthScheme は'Kerberos' に設定します。
サーバー証明書を信頼する必要がある場合があります。そのような場合は、必要に応じてTrustStorePath およびTrustStorePassword を指定してください。
- Create & Test をクリックします。
- 「Add Kafka Connection」ページの「Permissions」タブに移動し、ユーザーベースのアクセス許可を更新します。
Connect Cloud にKafka OData エンドポイントを追加する
Kafka に接続したら、目的のテーブルのOData エンドポイントを作成します。
- OData ページに移動し、 Add をクリックして新しいOData エンドポイントを作成します。
- Kafka 接続(例:ApacheKafka1)を選択し、Next をクリックします。
- 使用するテーブルを選択し、「Confirm」をクリックします。
コネクションとOData エンドポイントを設定したら、Adalo からKafka データに接続できます。
Adalo でアプリを作成する
Connect Cloud 側の準備が完了したら、早速Adalo 側でアプリ開発を開始します。
- 「CREATE NEW APP」をクリックし
- 今回は「Desktop Web App」を作成します。
- template を最初に選ぶことができますが、今回は検証用なので何も無い「Blank」で作成しました。
- 最後にアプリ名とカラーリング設定を選んで、アプリの準備は完了です。
External Collections の登録
続いてConnect Cloud への接続をAdalo に追加します。Adalo では「Collection」という形でデータ構造を持ち、アプリのデータを管理することができるのですが、この「Collection」を外部のAPI とシームレスに連携した形で利用することができる「External Collections with APIs」という機能があります。この機能を用いてConnect Cloud に接続します。
- アプリを作成したら、まず Adalo アプリ内でデータを扱うための定義である「Collection」を登録します。Collection は Adalo 内部の独自DBのような「Database Collections」と、外部のAPI に対してシームレスにアクセスすることが可能な「External Collections」があります。今回は外部のAPIに対してアクセスを行うので「External Collections」で登録します。
- External Collections の登録画面では最初にコレクション名とAPI のベースとなるURLエンドポイントを指定します。任意のCollection 名とAPI Base URLに先程CData Connect Server で登録したKafka の対象リソースに接続できるOData のエンドポイントを指定します。併せて認証情報として Header に「x-cdata-authtoken」の名前でConnect Cloud ユーザー登録時に生成されているToken を指定します。
- 続いてAdalo から実行されるそれぞれのリクエストの関連付けを行います。通常のAPIであれば様々なチューニングが必要となる箇所ですが、Kafka ではほぼデフォルトの設定のままで進められます。一点だけ設定が必要な箇所として、Kafka からのレスポンスをレコード単位で識別するために「Get All」の設定にある「Results Key」に「value」を登録しておくことが挙げられます。これを設定したら「Next」をクリックしましょう。
- 最後にAPI の「RUN TEST」を行います。
- 「RUN TEST」をクリック後、最終的に以下のようにメッセージとレスポンスが表示されれば、External Collections の作成は完了です。
一覧画面の作成
それでは作成した External Collections を使ってアプリを作っていきましょう。
- まず一覧画面を表示するためにAdalo の画面右上の「+」ボタンをクリックして、「Simple List」をドラッグアンドドロップで画面に配置します。
- 以下のように配置できたら「What is this a list of?」で先程作成したExternal Collections の定義を紐付けます。
- 併せて「Title」と「Subtile」を取得するデータ項目に紐付けましょう。
- プレビューを実行し一覧画面に移動してみると、以下のようにKafka のデータを取得できていました。
クラウドアプリケーションからKafka データへのライブ接続
Adalo からKafka ライブデータに直接接続できるようになりました。これで、Kafka データを複製せずにより多くの接続とアプリを作成できます。
クラウドアプリケーションから直接100を超えるSaaS 、ビッグデータ、NoSQL ソースへのリアルタイムデータアクセスを取得するには、CData Connect Cloud を参照してください。