TIBCO Data Virtualization で Typeform のデータ にリアルタイムアクセスする方法
TIBCO Data Virtualization(TDV)は、複数の多様なデータソースへのアクセスを一元管理するエンタープライズデータ仮想化ソリューションです。CData TIBCO DV Adapter for Typeform と組み合わせることで、TIBCO Data Virtualization 内からTypeform のデータに直接フェデレーテッドアクセスが可能になります。この記事では、アダプターのデプロイと Typeform に基づく新しいデータソースの作成手順を解説します。
CData TIBCO DV Adapter は、最適化されたデータ処理機能が組み込まれており、Typeform のデータ とのインタラクションにおいて比類のないパフォーマンスを発揮します。Typeform に対して複雑な SQL クエリを発行すると、アダプターはフィルタや集計などサポートされている SQL 操作を直接 Typeform にプッシュします。組み込みの動的メタデータクエリにより、ネイティブのデータ型を使用してTypeform のデータを操作・分析できます。
Typeform TIBCO DV Adapter のデプロイ
コンソールで、TDV Server のインストールディレクトリ内の bin フォルダに移動します。現在のバージョンのアダプターがインストールされている場合は、先にアンデプロイする必要があります。
.\server_util.bat -server localhost -user admin -password ******** -undeploy -version 1 -name API
CData TIBCO DV Adapter をローカルフォルダに解凍し、解凍した場所から JAR ファイル(tdv.api.jar)をサーバーにデプロイします。
.\server_util.bat -server localhost -user admin -password ******** -deploy -package /PATH/TO/tdv.api.jar
新しい JAR ファイルが正しくロードされるように、サーバーの再起動が必要な場合があります。再起動は、C:\Program Files\TIBCO\TDV Server <version>\bin にある composite.bat スクリプトを実行して行えます。サーバーを再起動した後は、TDV Studio への再認証が必要です。
再起動コマンドの例
.\composite.bat monitor restart
OAuth を使用して Typeform で認証する
Typeform は OAuth プロトコルを使用して認証を行いますが、TDV Studio は内部でブラウザベースの認証をサポートしていないため、OAuth トークンを取得するための簡単な Java アプリケーションを作成して実行する必要があります。取得したトークンは、アダプターから直接 Typeform に接続するために使用されます。
以下のコードサンプルは、Typeform での認証方法を示しています。tdv.api.jar ファイルをクラスパスに含めて Java アプリケーションを実行するだけです。
APIOAuth oauth = new APIOAuth();
oauth.generateOAuthSettingsFile("InitiateOAuth=GETANDREFRESH;" +
"Profile=C:\profiles\TypeForm.apip;Authscheme=OAuth;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;" +
"OAuthSettingsLocation=C:\api\OAuthSettings.txt;");
アダプターをデプロイして認証が完了したら、TDV Studio で Typeform 用の新しいデータソースを作成できます。
TDV Studio で Typeform データソースを作成する
CData TIBCO DV Adapter for Typeform を使用すると、Typeform 用のデータソースを簡単に作成し、データソースをイントロスペクトしてリソースを TDV に追加できます。
データソースの作成
- データソースを追加するフォルダを右クリックし、New -> New Data Source を選択します。
- アダプター(例:Typeform)が表示されるまでスクロールし、Next をクリックします。
- データソースに名前を付けます(例:CData Typeform Source)。
必要な接続プロパティを入力します。
まず、Profile 接続プロパティにTypeForm プロファイルのディスク上の場所を設定します(例:C:\profiles\TypeForm.apip)。次に、ProfileSettings 接続プロパティにTypeForm の接続文字列を設定します(以下を参照)。
TypeForm API プロファイル設定
TypeForm への認証にはOAuth 標準を使用します。
TypeForm に認証するには、まずTypeForm でOAuth アプリケーションを登録および設定する必要があります:https://admin.typeform.com/account#/section/tokens。アプリにはclient ID とclient secret が割り当てられ、接続文字列で設定できます。OAuth アプリケーションの設定の詳細については、https://developer.typeform.com/get-started/ をご参照ください。
使用シナリオによって異なるリダイレクトURI が必要です:
- CData デスクトップアプリケーション:CData デスクトップアプリケーション(Sync、API Server、ArcESB)は/src/oauthCallback.rst でOAuth トークンを受け入れます。ホストとポートはアプリケーションが使用するデフォルトポートと同じです。例えば、http://localhost:8019/ でCData Sync にアクセスする場合、リダイレクトURI はhttp://localhost:8019/src/oauthCallback.rst になります。
- CData クラウドアプリケーション:CData クラウドアプリケーションはデスクトップ版と同様です。https://1.2.3.4/ でConnect AI にアクセスする場合、リダイレクトはhttps://1.2.3.4/src/oauthCallback.rst を使用します。
- デスクトップアプリケーション:デスクトップアプリケーションを使用する場合、URI はhttps://localhost:33333 を推奨します。
- Web アプリケーション:ドライバーを使用してWeb アプリケーションを開発する場合、https://my-website.com/oauth のような独自のURI を使用します。
以下の接続プロパティを設定すると、接続の準備が整います:
- AuthScheme:OAuth に設定します。
- InitiateOAuth:GETANDREFRESH に設定します。InitiateOAuth を使用してOAuthAccessToken を取得するプロセスを管理できます。
- OAuthClientId:アプリ設定で指定されているClient Id を設定します。
- OAuthClientSecret:アプリ設定で指定されているClient Secret を設定します。
- CallbackURL:アプリ設定で指定したRedirect URI を設定します。
NOTE:DV Adapter の OAuthSettingsLocation プロパティには、OAuth 認証(上記参照)を実行したときと同じ値を設定してください。
- Create & Close をクリックします。
データソースのイントロスペクト
データソースを作成したら、右クリックして Open を選択することでデータソースをイントロスペクトできます。ダッシュボードで Add/Remove Resources をクリックし、データソースの一部として含めるテーブル、ビュー、ストアドプロシージャを選択します。Next をクリックし、Finish をクリックして、選択した Typeform のテーブル、ビュー、ストアドプロシージャをリソースとして追加します。
データソースを作成してイントロスペクトしたら、他のリレーショナルデータソースと同様に TIBCO Data Virtualization でTypeform のデータを操作できるようになります。ビューの作成、SQL によるクエリ、データソースの公開など、さまざまな操作が可能です。