Amazon SageMaker Canvas から RDS 経由で PostgreSQL のリアルタイムデータを活用
Amazon SageMaker Canvas は、コードを書かずに予測の生成、データの準備、モデルの構築ができるノーコード機械学習プラットフォームです。CData Connect AI と組み合わせることで、クラウド間でリアルタイムにPostgreSQL のデータにアクセスし、カスタム機械学習モデルの構築、顧客離反予測、テキスト生成、チャットボット開発など、さまざまな用途に活用できます。この記事では、RDS コネクタを使用して Amazon SageMaker Canvas から Connect AI に接続し、PostgreSQL のデータを ML モデルのデプロイメントに統合する方法をご紹介します。
CData Connect AI は、PostgreSQL 向けに純粋な SQL インターフェースをクラウド間で提供します。これにより、データをレプリケーションすることなく、Amazon SageMaker Canvas からPostgreSQL のデータに簡単に接続できます。Connect AI は Amazon SageMaker Canvas からは SQL Server データベースとまったく同じように見え、フィルタや JOIN などの SQL 操作をPostgreSQLに直接プッシュする最適化されたデータ処理により、サーバーサイド処理を活用してPostgreSQL のデータをすばやく取得します。
PostgreSQL への接続を設定(Amazon SageMaker Canvas 向け)
Amazon SageMaker Canvas から PostgreSQL への接続は、CData Connect AI を介して行います。それでは、PostgreSQL のデータを Amazon SageMaker Canvas から利用できるようにするため、PostgreSQL への接続を作成していきましょう。
- Connect AI にログインして「Sources」をクリック、次に「 Add Connection」をクリック
- 接続を追加パネルから「PostgreSQL」を選択
-
PostgreSQL に接続するために必要な認証プロパティを入力します。
PostgreSQL への接続には、Server、Port(デフォルトは5432)、Database、およびUser、Password のプロパティを設定します。Database プロパティが設定されない場合には、User のデフォルトデータベースに接続します。
パスワード方式によるSSH 接続
パスワード方式によるSSH接続時に必要なプロパティ一覧を以下に示します。
- User: PostgreSQL のユーザ
- Password: PostgreSQL のパスワード
- Database: PostgreSQL の接続先データベース
- Server: PostgreSQL のサーバー
- Port: PostgreSQL のポート
- UserSSH: "true"
- SSHAuthMode: "Password"
- SSHPort: SSH のポート
- SSHServer: SSH サーバー
- SSHUser: SSH ユーザー
- SSHPassword: SSH パスワード
接続文字列形式では以下のようになります。
User=admin;Password=adminpassword;Database=test;Server=postgresql-server;Port=5432;UseSSH=true;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHPassword=sshpasswd;
公開鍵認証方式によるSSH 接続
公開鍵認証によるSSH接続時に必要なプロパティ一覧を以下に示します。
- User: PostgreSQL のユーザ
- Password: PostgreSQL のパスワード
- Database: PostgreSQL の接続先データベース
- Server: PostgreSQL のサーバー
- Port: PostgreSQL のポート
- UserSSH: "true"
- SSHAuthMode: "Public_Key"
- SSHClientCertType: キーストアの種類
- SSHPort: SSH のポート
- SSHServer: SSH サーバー
- SSHUser: SSH ユーザー
- SSHClientCert: 秘密鍵ファイルのパス
接続文字列形式では以下のようになります。
User=admin;Password=adminpassword;Database=test;Server=PostgreSQL-server;Port=5432;UseSSH=true;SSHClientCertType=PEMKEY_FILE;SSHPort=22;SSHServer=ssh-server;SSHUser=root;SSHClientCert=C:\Keys\key.pem;
- 「Save & Test」をクリック
-
PostgreSQL 接続の追加ページで「Permissions」タブに移動し、ユーザーベースの権限を更新します。
パーソナルアクセストークンを追加
REST API、OData API、または仮想 SQL Server を通じて Connect AI に接続する場合は、パーソナルアクセストークン(PAT)を使用して認証を行います。アクセス管理を細かく制御するため、サービスごとに個別の PAT を作成することをお勧めします。
- Connect AI アプリの右上にある歯車アイコン()をクリックして設定ページを開きます。
- 設定ページで「Access Tokens」セクションに移動し、「 Create PAT」をクリックします。
-
PAT に名前を付けて「Create」をクリックします。
- パーソナルアクセストークンは作成時にのみ表示されます。必ずコピーして、今後の利用のために安全に保管してください。
接続の設定と PAT の生成が完了したら、Amazon SageMaker Canvas からPostgreSQL のデータに接続する準備は完了です。
Amazon SageMaker Canvas から CData Connect AI に接続
CData Connect AI での接続設定が完了したら、RDS コネクタを使用してPostgreSQL のデータを Amazon SageMaker Canvas に統合していきましょう。
- Amazon SageMaker Canvas でドメインとユーザープロファイルを選択し、「Open Canvas」をクリックします。
- Canvas アプリケーションが開いたら、左側のパネルに移動して「My models」を選択します。
- My models 画面で「Create new model」をクリックします。
- Create new model ウィンドウでモデル名を入力し、Problem type を選択します。「Create」をクリックします。
- モデルバージョンが作成されたら、Select dataset タブで「Create dataset」をクリックします。
- Create a tabular dataset ウィンドウで「Dataset name」を入力し、「Create」をクリックします。
- 「Data Source」ドロップダウンをクリックして RDS コネクタを検索またはナビゲートし、「 Add Connection」をクリックします。
- Add a new RDS connection ウィンドウで、以下のプロパティを設定します。
- Connection Name: 任意の接続名
- Engine type を sqlserver-web に設定
- Port を 14333 に設定
- Address を tds.cdata.com に設定
- Username を Connect AI ユーザー(例: [email protected])に設定
- Password を上記ユーザーの PAT に設定
- Database name を PostgreSQL 接続名(例: PostgreSQL1)に設定
- 「Create connection」をクリックします。
PostgreSQL を Amazon SageMaker Canvas に統合
RDS で Connect AI への接続が設定できたら、PostgreSQL のデータを Amazon SageMaker Canvas のデータセットに統合していきましょう。
- PostgreSQL のデータで作成した RDS のテーブル形式データセットで、検索バーまたは接続リストから Connect AI で設定した PostgreSQL 接続を検索します。
- PostgreSQL から使用したいテーブルを選択し、右側のキャンバスにドラッグ&ドロップします。
- 以下のように、PostgreSQL 接続から任意の数のテーブルを結合してワークフローを作成できます。「Create dataset」をクリックします。
- データセットが作成されたら、「Select dataset」をクリックしてモデルを構築します。
- 分析を実行し、予測を生成してモデルをデプロイします。
これで、Amazon SageMaker からPostgreSQL のデータにリアルタイムでアクセスできるようになりました。カスタム ML モデルを構築し、ビジネスの予測インサイトを生成して、組織の成長に活用してください。
クラウドアプリケーションから PostgreSQL への SQL アクセス
Amazon SageMaker Canvas からPostgreSQL のデータへのダイレクト接続が完成しました。データをレプリケーションすることなく、接続やデータセット、予測モデルをさらに追加してビジネスを推進できます。
300 以上の SaaS、ビッグデータ、NoSQL ソースにクラウドアプリケーションから直接リアルタイムアクセスするには、CData Connect AI をご覧ください。