Amazon SageMaker Canvas から RDS 経由で NetSuite のリアルタイムデータを活用
Amazon SageMaker Canvas は、コードを書かずに予測の生成、データの準備、モデルの構築ができるノーコード機械学習プラットフォームです。CData Connect AI と組み合わせることで、クラウド間でリアルタイムにNetSuite のデータにアクセスし、カスタム機械学習モデルの構築、顧客離反予測、テキスト生成、チャットボット開発など、さまざまな用途に活用できます。この記事では、RDS コネクタを使用して Amazon SageMaker Canvas から Connect AI に接続し、NetSuite のデータを ML モデルのデプロイメントに統合する方法をご紹介します。
CData Connect AI は、NetSuite 向けに純粋な SQL インターフェースをクラウド間で提供します。これにより、データをレプリケーションすることなく、Amazon SageMaker Canvas からNetSuite のデータに簡単に接続できます。Connect AI は Amazon SageMaker Canvas からは SQL Server データベースとまったく同じように見え、フィルタや JOIN などの SQL 操作をNetSuiteに直接プッシュする最適化されたデータ処理により、サーバーサイド処理を活用してNetSuite のデータをすばやく取得します。
NetSuite データ連携について
CData は、Oracle NetSuite のライブデータにアクセスし、統合するための最も簡単な方法を提供します。お客様は CData の接続機能を以下の目的で使用しています:
- Standard、CRM、OneWorld を含む、すべてのエディションの NetSuite にアクセスできます。
- SuiteTalk API(SOAP ベース)のすべてのバージョンと、SQL のように機能し、より簡単なデータクエリと操作を可能にする SuiteQL に接続できます。
- Saved Searches のサポートにより、事前定義されたレポートとカスタムレポートにアクセスできます。
- トークンベースおよび OAuth 2.0 で安全に認証でき、あらゆるユースケースで互換性とセキュリティを確保します。
- SQL ストアドプロシージャを使用して、ファイルのアップロード・ダウンロード、レコードや関連付けのアタッチ・デタッチ、ロールの取得、追加のテーブルやカラム情報の取得、ジョブ結果の取得などの機能的なアクションを実行できます。
お客様は、Power BI や Excel などのお気に入りの分析ツールからライブ NetSuite データにアクセスするために CData ソリューションを使用しています。また、CData Sync を直接使用するか、Azure Data Factory などの他のアプリケーションとの CData の互換性を活用して、NetSuite データを包括的なデータベースやデータウェアハウスに統合しています。CData は、Oracle NetSuite のお客様が NetSuite からデータを取得し、NetSuite にデータをプッシュするアプリを簡単に作成できるよう支援し、他のソースからのデータを NetSuite と統合することを可能にしています。
当社の Oracle NetSuite ソリューションの詳細については、ブログをご覧ください:Drivers in Focus Part 2: Replicating and Consolidating ... NetSuite Accounting Data
はじめに
NetSuite への接続を設定(Amazon SageMaker Canvas 向け)
Amazon SageMaker Canvas から NetSuite への接続は、CData Connect AI を介して行います。それでは、NetSuite のデータを Amazon SageMaker Canvas から利用できるようにするため、NetSuite への接続を作成していきましょう。
- Connect AI にログインして「Sources」をクリック、次に「 Add Connection」をクリック
- 接続を追加パネルから「NetSuite」を選択
-
NetSuite に接続するために必要な認証プロパティを入力します。
NetSuiteへの接続
NetSuite では、2種類のAPI でデータにアクセスできます。どちらのAPI を使用するかは、Schema 接続プロパティで以下のいずれかを選択して指定してください。
- SuiteTalk は、NetSuite との通信に使用されるSOAP ベースの従来から提供されているサービスです。幅広いエンティティをサポートし、INSERT / UPDATE / DELETE の操作も対応しています。ただし、SuiteQL API と比べるとデータの取得速度が劣ります。また、サーバーサイドでのJOIN に対応していないため、これらの処理はCData 製品がクライアントサイドで実行します。
- SuiteQL は、より新しいAPI です。JOIN、GROUP BY、集計、カラムフィルタリングをサーバーサイドで処理できるため、SuiteTalk よりもはるかに高速にデータを取得できます。ただし、NetSuite データへのアクセスは読み取り専用となります。
データの取得のみが目的でしたらSuiteQL をお勧めします。データの取得と変更の両方が必要な場合は、SuiteTalk をお選びください。
NetSuite への認証
CData 製品では、以下の認証方式がご利用いただけます。
- トークンベース認証(TBA)はOAuth1.0に似た仕組みです。2020.2以降のSuiteTalk とSuiteQL の両方で利用できます。
- OAuth 2.0 認証(OAuth 2.0 認可コードグラントフロー)は、SuiteQL でのみご利用いただけます。
- OAuth JWT 認証は、OAuth2.0 クライアント認証フローの一つで、クライアント認証情報を含むJWT を使用してNetSuite データへのアクセスを要求します。
トークンベース認証(OAuth1.0)
トークンベース認証(TBA)は、基本的にOAuth 1.0 の仕組みです。この認証方式はSuiteTalk とSuiteQL の両方でサポートされています。管理者権限をお持ちの方がNetSuite UI 内でOAuthClientId、OAuthClientSecret、OAuthAccessToken、OAuthAccessTokenSecret を直接作成することで設定できます。 NetSuite UI でのトークン作成手順については、ヘルプドキュメントの「はじめに」セクションをご参照ください。
アクセストークンを作成したら、以下の接続プロパティを設定して接続してみましょう。
- AuthScheme = Token
- AccountId = 接続先のアカウント
- OAuthClientId = アプリケーション作成時に表示されるコンシューマーキー
- OAuthClientSecret = アプリケーション作成時に表示されるコンシューマーシークレット
- OAuthAccessToken = アクセストークン作成時のトークンID
- OAuthAccessTokenSecret = アクセストークン作成時のトークンシークレット
その他の認証方法については、ヘルプドキュメントの「はじめに」をご確認ください。
- 「Save & Test」をクリック
-
NetSuite 接続の追加ページで「Permissions」タブに移動し、ユーザーベースの権限を更新します。
パーソナルアクセストークンを追加
REST API、OData API、または仮想 SQL Server を通じて Connect AI に接続する場合は、パーソナルアクセストークン(PAT)を使用して認証を行います。アクセス管理を細かく制御するため、サービスごとに個別の PAT を作成することをお勧めします。
- Connect AI アプリの右上にある歯車アイコン()をクリックして設定ページを開きます。
- 設定ページで「Access Tokens」セクションに移動し、「 Create PAT」をクリックします。
-
PAT に名前を付けて「Create」をクリックします。
- パーソナルアクセストークンは作成時にのみ表示されます。必ずコピーして、今後の利用のために安全に保管してください。
接続の設定と PAT の生成が完了したら、Amazon SageMaker Canvas からNetSuite のデータに接続する準備は完了です。
Amazon SageMaker Canvas から CData Connect AI に接続
CData Connect AI での接続設定が完了したら、RDS コネクタを使用してNetSuite のデータを 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 を NetSuite 接続名(例: NetSuite1)に設定
- 「Create connection」をクリックします。
NetSuite を Amazon SageMaker Canvas に統合
RDS で Connect AI への接続が設定できたら、NetSuite のデータを Amazon SageMaker Canvas のデータセットに統合していきましょう。
- NetSuite のデータで作成した RDS のテーブル形式データセットで、検索バーまたは接続リストから Connect AI で設定した NetSuite 接続を検索します。
- NetSuite から使用したいテーブルを選択し、右側のキャンバスにドラッグ&ドロップします。
- 以下のように、NetSuite 接続から任意の数のテーブルを結合してワークフローを作成できます。「Create dataset」をクリックします。
- データセットが作成されたら、「Select dataset」をクリックしてモデルを構築します。
- 分析を実行し、予測を生成してモデルをデプロイします。
これで、Amazon SageMaker からNetSuite のデータにリアルタイムでアクセスできるようになりました。カスタム ML モデルを構築し、ビジネスの予測インサイトを生成して、組織の成長に活用してください。
クラウドアプリケーションから NetSuite への SQL アクセス
Amazon SageMaker Canvas からNetSuite のデータへのダイレクト接続が完成しました。データをレプリケーションすることなく、接続やデータセット、予測モデルをさらに追加してビジネスを推進できます。
300 以上の SaaS、ビッグデータ、NoSQL ソースにクラウドアプリケーションから直接リアルタイムアクセスするには、CData Connect AI をご覧ください。