Dataiku からリアルタイム PingOne データを使って AI/ML モデルを構築

Dibyendu Datta
Dibyendu Datta
Lead Technology Evangelist
CData JDBC Driver for PingOne を使って PingOne データを Dataiku に接続。

Dataiku は、データの準備、分析、可視化、AI/ML モデルのデプロイメントに利用されるデータサイエンスおよび機械学習プラットフォームです。チームでの協業と効率的なデータドリブンな意思決定を可能にします。CData JDBC Driver for PingOne と組み合わせることで、Dataiku は PingOne のデータ のデータ連携、データ準備、リアルタイム分析、そして信頼性の高いモデルデプロイメントをさらに強化します。

CData JDBC Driver は、最適化されたデータ処理機能を内蔵しており、リアルタイム PingOne のデータ とのやり取りにおいて比類のないパフォーマンスを発揮します。複雑な SQL クエリを PingOne に発行すると、ドライバーはフィルタや集計などのサポートされている SQL 操作を PingOne に直接プッシュし、サポートされていない操作(多くの場合、SQL 関数や JOIN 操作)は内蔵の SQL エンジンを使用してクライアント側で処理します。動的メタデータクエリ機能が組み込まれているため、ネイティブのデータ型を使って PingOne のデータ を操作・分析できます。

この記事では、Dataiku DSS(Data Science Studio)プラットフォームで CData JDBC Driver for PingOne を使って PingOne に簡単に連携する方法を紹介します。データの準備やカスタム AI/ML モデルの構築を行いましょう。

Dataiku DSS 環境の準備

このセクションでは、先に紹介した Dataiku を PingOne のデータ 向けにセットアップする方法を説明します。事前に、お使いのオペレーティングシステムに対応した Dataiku DSS(オンプレミス版)をインストールしておいてください。

CData JDBC Driver for PingOne のインストール

まず、Dataiku と同じマシンに CData JDBC Driver for PingOne をインストールします。JDBC Driver は以下のパスにインストールされます:

C:\Program Files\CData[product_name] 20xx\lib\cdata.jdbc.pingone.jar

Dataiku DSS での JDBC Driver 接続設定

Dataiku で CData JDBC Driver を使用するには、新しい SQL データベース接続を作成し、DSS の接続設定で JDBC Driver の JAR ファイルを追加する必要があります。

  1. Dataiku DSS プラットフォームにログインします。ブラウザでローカルに開きます(例:localhost:11200)。
  2. プラットフォームの右上にある Navigate to other sections of Dataiku メニューをクリックし、Administration を選択します。
  3. Connections タブを選択します。
  4. Connections 画面で New Connections ボタンをクリックします。
  5. スクロールして Other SQL databases を選択します。
  6. PingOne に接続するための JDBC URL を生成します。jdbc:pingone: で始まり、その後にセミコロン区切りの接続文字列プロパティを続けます。

    PingOne に接続するには以下のプロパティを設定します。

    • Region:自身のPingOne 組織のデータがホスティングされている地域。
    • AuthScheme:PingOne に接続する際に使用する認証の種類。
    • WorkerAppEnvironmentId (デフォルトのPingOne ドメインを使用する場合に必要)、またはAuthorizationServerURL のいずれかで、下で説明するように設定します。

    WorkerAppEnvironmentId の設定

    WorkerAppEnvironmentId は、Worker アプリケーションが存在するPingOne 環境のID です。 このパラメータは、環境がデフォルトのPingOne ドメイン(auth.pingone)を利用している場合のみ使用されます。 これは、ヘルプドキュメントカスタムOAuth アプリケーションの作成で説明するように、PingOne への認証に使用するカスタムOAuth アプリケーションを作成した後に設定します。

    はじめに、このプロパティの値を見つけます。

    1. 自身のPingOne 組織のホームページからナビゲーションサイドバーに移動し、Environments をクリックします。
    2. OAuth / Worker のカスタムアプリケーションを作成した環境(通常はAdministrators)を見つけ、Manage Environment をクリックします。 環境のホームページが表示されます。
    3. 環境のホームページのナビゲーションサイドバーで、Applications をクリックします。
    4. リストから、OAuth またはWorker アプリケーションの詳細を見つけます。
    5. Environment ID フィールドの値をコピーします。 以下の例に似たものになるはずです:
      WorkerAppEnvironmentId='11e96fc7-aa4d-4a60-8196-9acf91424eca'

    次に、WorkerAppEnvironmentIdEnvironment ID フィールドの値に設定します。

    AuthorizationServerURL の設定

    AuthorizationServerURL は、お使いのアプリケーションが配置されている環境のPingOne 認可サーバーのベースURL です。 このプロパティは、PingOne プラットフォームAPI ドキュメントで説明されているように、環境にカスタムドメインを設定した場合にのみ使用されます。 Custom Domains を参照してください。

    OAuth でのPingOne への認証

    PingOne はOAuth とOAuthClient 認証の両方をサポートしています。 上述の設定手順に加え、OAuth またはOAuthCliet 認証をサポートするために、さらに2つの手順を完了する必要があります。

    • ヘルプドキュメントカスタムOAuth アプリケーションの作成で説明するように、カスタムOAuth アプリケーションを作成して設定します。
    • ドライバーがデータモデル内のエンティティにアクセスできるようにするには、ヘルプドキュメントのAdministrator Roles での説明のとおり、使用するアドミンユーザー / ワーカーアプリケーションに対して正しいロールを設定していることを確認してください。
    • 以下のサブセクションで説明されているように、選択した認証スキームと認証フローに適切なプロパティを設定します。

    OAuth(認可コードグラント)

    AuthSchemeOAuth に設定します。

    デスクトップアプリケーション

    OAuth アクセストークンの取得およびリフレッシュ

    以下を設定して、接続してください。

    • InitiateOAuthGETANDREFRESH。繰り返しOAuth の交換を行ったり、手動でOAuthAccessToken を設定する必要をなくすには、InitiateOAuth を使用します。
    • OAuthClientId:カスタムOAuth アプリケーションを作成した際に取得したClient ID。
    • OAuthClientSecret:カスタムOAuth アプリケーションを作成した際に取得したClient Secret。
    • CallbackURL:カスタムOAuth アプリケーションの登録時に定義したリダイレクトURI。例:https://localhost:3333

    接続すると、CData 製品 はデフォルトブラウザでPingOne のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。 ドライバーはこれでOAuth プロセスを完了します。

    1. ドライバーはPingOne からアクセストークンを取得し、それを使ってデータをリクエストします。
    2. OAuth 値はOAuthSettingsLocation で指定された場所に保存され、接続間で永続化されるようにします。

    ドライバーはアクセストークンの期限が切れると自動的にリフレッシュします。

    Web アプリケーションやヘッドレスマシン、クライアントクレデンシャルグラントを含むその他のOAuth メソッドについては、ヘルプドキュメントを参照してください。

    組み込みの接続文字列デザイナー

    JDBC URL の作成には、PingOne JDBC Driver に組み込まれている接続文字列デザイナーを使用できます。JAR ファイルをダブルクリックするか、コマンドラインから実行してください。

    java -jar cdata.jdbc.pingone.jar
    

    接続プロパティを入力し、接続文字列をクリップボードにコピーします。

    一般的な JDBC URL は次のようになります:

    jdbc:pingone:AuthScheme=OAuth;WorkerAppEnvironmentId=eebc33a8-xxxx-4f3a-yyyy-d3e5262fd49e;Region=NA;OAuthClientId=client_id;OAuthClientSecret=client_secret;
    
  7. New SQL database (JDBC) connection 画面で、New connection name フィールドに名前を入力し、基本パラメータを指定します:
    • JDBC Driver Class:cdata.jdbc.pingone.PingOneDriver
    • JDBC URL:前のステップで取得した JDBC 接続 URL
    • Driver jars directory:システム上で JAR ファイルがインストールされているフォルダパス

    次に、SQL dialect を選択します。ここでは「SQL Server」を選択しています。Create をクリックします。接続が成功すると、「Connection OK」というメッセージが表示されます。

  8. Data Catalog ウィンドウが表示されます。Connection to browseRestrict to catalogRestrict to schema ドロップダウンから目的の接続、カタログ、スキーマを選択し、List Tables をクリックします。Dataiku プラットフォームに必要なテーブルがすべて一覧表示されます。
  9. 一覧からテーブルを選択し、Preview をクリックしてテーブルデータを表示します。Close をクリックしてウィンドウを閉じます。

新しいプロジェクトの作成

Dataiku DSS プラットフォームでデータフローの準備、ダッシュボードの作成、PingOne のデータ の分析、AI/ML モデルの構築を行うには、まず新しいプロジェクトを作成する必要があります。

  1. Navigate to other sections of Dataiku メニューから Projects を選択します。
  2. Projects 画面で New Project をクリックし、+ Blank Project を選択します。
  3. New Project ウィンドウで、NameProject Key を入力します。Create をクリックすると、新しいプロジェクトのダッシュボードが開きます。
  4. プロジェクト画面上部のメニューから Notebooks を選択します。
  5. + Create Your First Notebook ドロップダウンメニューをクリックし、Write your own オプションを選択します。
  6. New Notebook ウィンドウで SQL を選択します。
  7. Connection ドロップダウンから必要な接続を選択し、Notebook Name フィールドに名前を入力します。

接続のテスト

PingOne 接続をテストして PingOne のデータ を分析するには、クエリコンパイラでクエリを記述し、Run をクリックします。クエリ結果やフィルタリングされた PingOne のデータ の結果が画面に表示されます。

おわりに

CData JDBC Driver for PingOne の 30日間無償トライアル をダウンロードして、Dataiku と連携し、PingOne のデータ からカスタム AI/ML モデルを簡単に構築しましょう。

ご質問があれば、お気軽に サポートチーム までお問い合わせください。

はじめる準備はできましたか?

PingOne Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

PingOne Icon PingOne JDBC Driver お問い合わせ

PingOne データと連携するパワフルなJava アプリケーションを短時間・低コストで作成して配布できます。