Denodo Platform で Outlook のデータ に接続
Denodo Platform は、エンタープライズデータベースのデータを統合的に扱うことができるデータ仮想化製品です。CData API Driver for JDBC と組み合わせることで、Denodo ユーザーは他のエンタープライズデータソースと並んでライブ Outlook のデータ を扱うことができます。本記事では、Denodo Virtual DataPort Administrator で Outlook 用の仮想データソースを作成する方法を解説します。
CData JDBC Driver は、最適化されたデータ処理機能を内蔵しており、ライブ Outlook のデータ とのやり取りにおいて比類のないパフォーマンスを提供します。Outlook に対して複雑な SQL クエリを発行すると、ドライバーはフィルターや集計などのサポートされている SQL 操作を直接 Outlook にプッシュし、内蔵の SQL エンジンを使用してサポートされていない操作(主に SQL 関数や JOIN 操作)をクライアントサイドで処理します。また、動的メタデータクエリ機能を内蔵しているため、ネイティブデータ型を使用して Outlook のデータ を操作・分析できます。
Outlook 仮想ポートの作成
Denodo からライブ Outlook のデータ に接続するには、JDBC Driver の JAR ファイルを Denodo の外部ライブラリディレクトリにコピーし、Virtual DataPort Administrator ツールで新しい JDBC データソースを作成します。
- CData API Driver for JDBC インストーラーをダウンロードし、パッケージを解凍して JAR ファイルを実行してドライバーをインストールします。
- インストール先(通常は C:\Program Files\CData\CData API Driver for JDBC\lib\)から JAR ファイル(およびライセンスファイルが存在する場合はそれも)を Denodo 外部ライブラリディレクトリ(C:\Denodo\Denodo Platform\lib-external\jdbc-drivers\cdata-api-19)にコピーします。
- Denodo Virtual DataPort Administrator ツールを開き、Server Explorer タブに移動します。
- "admin" を右クリックし、New -> Data source -> JDBC を選択します。
- JDBC 接続を設定します:
- Name: 任意の名前(例: api)
- Database adapter: Generic
- Driver class path: C:\Denodo\Denodo Platform\lib-external\jdbc-drivers\cdata-api-19
- Driver class: cdata.jdbc.api.APIDriver
Database URI: 必要な接続プロパティを使用して JDBC URL を設定します。例:
jdbc:api:Profile=C:\profiles\Outlook.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;TenantId=your_tenant_id;CallbackUrl=http://localhost:33333;
Database URI の作成方法は以下のとおりです:
ビルトイン接続文字列デザイナー
JDBC URL の構築には、Outlook JDBC Driver に組み込まれた接続文字列デザイナーを使用できます。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行してください。
java -jar cdata.jdbc.api.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
OAuth 認証の設定
Microsoft Graph API は認証に OAuth 2.0 を使用します。OAuth 認証情報(Client ID と Client Secret)を取得するには、Microsoft Azure Portal でアプリケーションを登録する必要があります。
OAuth 認証情報の取得
- Azure Portal にログインします。
- Azure Active Directory > App registrations に移動します。
- New registration をクリックして新しいアプリケーションを作成します。
- アプリケーション名を入力し、適切なアカウントの種類を選択します。
- Redirect URI をアプリケーションのコールバック URL に設定します(デスクトップアプリの場合は http://localhost:33333 など)。
- Register をクリックしてアプリケーションを作成します。
- アプリケーションの概要ページで Application (client) ID をコピーします。これが OAuthClientId になります。
- Certificates & secrets に移動して、新しいクライアントシークレットを作成します。
- クライアントシークレットの値をコピーします。これが OAuthClientSecret になります。
- API permissions に移動して、必要な Microsoft Graph API の権限を追加します:
- Mail.Read - メールメッセージへのアクセス用
- Contacts.Read - 連絡先へのアクセス用
- Calendars.Read - カレンダーイベントへのアクセス用
- Tasks.Read - To Do タスクへのアクセス用
- offline_access - リフレッシュトークンの取得用
- Grant admin consent をクリックして、これらの権限を付与します。
OAuth での接続
以下の接続プロパティを設定して接続を確立してください:
- AuthScheme:OAuth に設定します。
- InitiateOAuth:GETANDREFRESH に設定します。CData API Profile for Outlook が OAuth プロセスを自動的に進め、アクセストークンを取得します。
- OAuthClientId:Azure Portal の Application (client) ID に設定します。
- OAuthClientSecret:Azure Portal のクライアントシークレットの値に設定します。
- TenantId:Azure AD のテナント識別子(GUID または 'contoso.onmicrosoft.com' のようなドメイン名)に設定します。
- CallbackURL:アプリ登録で指定したリダイレクト URI に設定します(デスクトップアプリの場合は http://localhost:33333 など)。
接続文字列の例
Profile=C:\profiles\Outlook.apip;AuthScheme=OAuth;InitiateOAuth=GETANDREFRESH;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;TenantId=your_tenant_id;CallbackUrl=http://localhost:33333;
- "Test connection" ボタンをクリックして設定を確認し、Save をクリックします。
VirtualPort Administrator ツールで Outlook のデータ を表示
データソースを作成したら、Denodo Platform で使用する Outlook のデータ のベースビューを作成できます。
- 新しく作成した VirtualPort (admin.API) で "Create base view" ボタンをクリックします。
- オブジェクトツリーを展開し、インポートするオブジェクト(テーブル)を選択します。
- "Create selected" ボタンをクリックして、Outlook のデータ のビューを作成します。
オプション: "Create associations from foreign keys" をクリックして、オブジェクト間のリレーションシップを定義できます。 - ビューが作成されたら、Server Explorer で対象テーブル(cdata_api_calendargroupcalendars)に移動し、選択したテーブルをダブルクリックします。
- 新しいタブで "Execution panel" をクリックしてクエリパネルを開きます。
- "Execute" タブでクエリをカスタマイズするか、デフォルトのクエリを使用します:
SELECT * FROM cdata_api_calendargroupcalendars CONTEXT ('i18n'='us_est', 'cache_wait_for_load'='true')
- Execute をクリックしてデータを表示します。
ベースビューの作成後は、Denodo Platform の他のデータソースと同様にライブ Outlook のデータ を扱うことができます。たとえば、Denodo Data Catalog で Outlook をクエリできます。
CData API Driver for JDBC の 30日間無料トライアルをダウンロードして、Denodo Platform でライブ Outlook のデータ の活用を始めましょう。ご不明な点がございましたら、サポートチーム までお問い合わせください。