製品をチェック

製品の詳細・30日間の無償トライアルはこちら

CData Connect

ノーコードツールAdalo でAzure Data Lake Storage 連携アプリを作成

CData Connect Server を使ってAzure Data Lake Storage データの仮想OData API エンドポイントを作成して、Adalo からAzure Data Lake Storage データを使ったアプリを作成する方法。

杉本和也
リードエンジニア

最終更新日:2021-11-15

こんにちは!リードエンジニアの杉本です。

Adalo は ノーコードでスマホやWebベースのアプリを構築できるクラウドサービスです。この記事では、CData Connect Server を経由して Adalo からAzure Data Lake Storage に連携するアプリを作成する方法を説明します。

CData Connect Server は、Azure Data Lake Storage データのクラウド to クラウドの仮想OData インターフェースを提供し、Adalo からリアルタイムにAzure Data Lake Storage データへ連携することができます。

Azure Data Lake Storage の仮想OData API エンドポイントを作成

まずCData Connect Server でデータソースへの接続およびOData API エンドポイント作成を行います。

  1. CData Connect Server にログインして、Databases をクリックします。 データベースを追加
  2. 利用できるデータソースアイコンから"Azure Data Lake Storage" を選択します。
  3. Azure Data Lake Storage に接続するために必要なプロパティを入力します。

    Azure DataLakeStorage 接続プロパティの取得・設定方法

    Azure DataLakeStorage Gen 1 への接続

    Gen 1 DataLakeStorage アカウントに接続するには、はじめに以下のプロパティを設定します。

    • SchemaADLSGen1 を指定。
    • Account:アカウント名に設定。
    • AzureTenant:テナントId に設定。Azure Portal 内のAzure Data Lake プロパティから取得できます。
    • Directory:(オプション)複製したファイルを格納するためのパスを設定。指定しない場合は、ルートディレクトリが使用されます。

    Azure DataLakeStorage Gen 1 への認証

    Gen 1 は、認証方法としてAzure Active Directory OAuth(AzureAD)およびマネージドサービスID(AzureMSI)をサポートしています。認証方法は、ヘルプドキュメントの「Azure DataLakeStorage Gen 1 への認証」セクションを参照してください。

    Azure DataLakeStorage Gen 2 への接続

    Gen 2 DataLakeStorage アカウントに接続するには、はじめに以下のプロパティを設定します。

    • SchemaADLSGen2 に設定。
    • Account:ストレージアカウント名に設定。
    • FileSystem:このアカウントで使用するファイルシステム名に設定。例えば、Azure Blob コンテナ名など。
    • Directory:(オプション)複製したファイルを格納するためのパスを設定。指定しない場合は、ルートディレクトリが使用されます。

    Azure DataLakeStorage Gen 2 への認証

    Gen 2は、認証方法としてアクセスキー、共有アクセス署名(SAS)、Azure Active Directory OAuth(AzureAD)、マネージドサービスID(AzureMSI)など多様な方法をサポートしています。AzureAD、AzureMSI での認証方法は、ヘルプドキュメントの「Azure DataLakeStorage Gen 2 への認証」セクションを参照してください。

    アクセスキーを使用した認証

    アクセスキーを使用して接続するには、AccessKey プロパティを取得したアクセスキーの値に、AuthScheme を「AccessKey」に設定します。

    Azure ポータルからADLS Gen2 ストレージアカウントのアクセスキーを取得できます。

    1. Azure ポータルのADLS Gen2 ストレージアカウントにアクセスします。
    2. 設定で「アクセスキー」を選択します。
    3. 利用可能なアクセスキーの1つの値を「AccessKey」接続プロパティにコピーします。

    共有アクセス署名(SAS)

    共有アクセス署名を使用して接続するには、SharedAccessSignature プロパティを接続先リソースの有効な署名に設定して、AuthScheme を「SAS」に設定します。 共有アクセス署名は、Azure Storage Explorer などのツールで生成できます。

    接続を設定
  4. Test Database をクリックします。
  5. Permission -> Add をクリックして、新しいユーザーを追加し、適切な権限を指定します。
  6. API タブをクリックして OData API エンドポイントが生成されていることを確認します。

Adalo でアプリを作成する

CData Connect Server 側の準備が完了したら、早速Adalo側でアプリ開発を開始します。

  1. 「CREATE NEW APP」をクリックし
  2. 今回は「Desktop Web App」を作成します。
  3. templateを最初に選ぶことができますが、今回は検証用なので何も無い「Blank」で作成しました。
  4. 最後にアプリ名とカラーリング設定を選んで、アプリの準備は完了です。

External Collections の登録

続いてCData Connect Server への接続をAdalo に追加します。Adalo では「Collection」という形でデータ構造を持ち、アプリのデータを管理することができるのですが、この「Collection」を外部のAPIとシームレスに連携した形で利用することができる「External Collections with APIs」という機能があります。この機能を用いてCData Connect Server に接続します。

  1. アプリを作成したら、まず Adalo アプリ内でデータを扱うための定義である「Collection」を登録します。Collection は Adalo 内部の独自DBのような「Database Collections」と、外部のAPIに対してシームレスにアクセスすることが可能な「External Collections」があります。今回は外部のAPIに対してアクセスを行うので「External Collections」で登録します。
  2. External Collections の登録画面では最初にコレクション名とAPI のベースとなるURLエンドポイントを指定します。任意のCollection 名とAPI Base URLに先程CData Connect Server で登録したAzure Data Lake Storage の対象リソースに接続できるODataのエンドポイントを指定します。併せて認証情報として Header に「x-cdata-authtoken」の名前でCData Connect Server ユーザー登録時に生成されているTokenを指定します。
  3. 続いてAdaloから実行されるそれぞれのリクエストの関連付けを行います。通常のAPIであれば様々なチューニングが必要となる箇所ですが、Azure Data Lake Storage ではほぼデフォルトの設定のままで進められます。一点だけ設定が必要な箇所として、Azure Data Lake Storage からのレスポンスをレコード単位で識別するために「Get All」の設定にある「Results Key」に「value」を登録しておくことが挙げられます。これを設定したら「Next」をクリックしましょう。
  4. 最後にAPIの「RUN TEST」を行います。
  5. 「RUN TEST」をクリック後、最終的に以下のようにメッセージとレスポンスが表示されれば、External Collectionsの作成は完了です。

一覧画面の作成

それでは作成した External Collections を使ってアプリを作っていきましょう。

  1. まず一覧画面を表示するためにAdalo の画面右上の「+」ボタンをクリックして、「Simple List」をドラッグアンドドロップで画面に配置します。
  2. 以下のように配置できたら「What is this a list of?」で先程作成したExternal Collectionsの定義を紐付けます。
  3. 併せて「Title」と「Subtile」を取得するデータ項目に紐付けましょう。
  4. プレビューを実行し一覧画面に移動してみると、以下のようにAzure Data Lake Storage のデータを取得できていました。

このように、CData Connect Serverを経由することで、API 側の複雑な仕様を意識せずにAPI 連携をしたアプリをAdalo で開発できます。他にも多くのデータソースに対応するCData Connect Server の詳細をこちらからご覧ください。

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。