各製品の資料を入手。
詳細はこちら →Denodo Platform でNetSuite のデータソースを作成
CData JDBC ドライバを使ってDenodo Virtual DataPort Administrator でNetSuite のデータ の仮想データソースを作成します。
最終更新日:2022-02-28
この記事で実現できるNetSuite 連携のシナリオ
こんにちは!テクニカルディレクターの桑島です。
Denodo Platform は、エンタープライズデータベースのデータを一元管理するデータ仮想化製品です。CData JDBC Driver for NetSuite と組み合わせると、Denodo ユーザーはリアルタイムNetSuite のデータと他のエンタープライズデータソースを連携できるようになります。この記事では、Denodo Virtual DataPort Administrator でNetSuite の仮想データソースを作成する手順を紹介します。
最適化されたデータ処理が組み込まれたCData JDBC Driver は、リアルタイムNetSuite のデータを扱う上で比類のないパフォーマンスを提供します。NetSuite にSQL クエリを発行すると、ドライバーはフィルタや集計などのサポートされているSQL 操作をNetSuite に直接渡し、サポートされていない操作(主にSQL 関数とJOIN 操作)は組み込みSQL エンジンを利用してクライアント側で処理します。組み込みの動的メタデータクエリを使用すると、ネイティブデータ型を使ってNetSuite のデータを操作および分析できます。
NetSuite Virtual Port を作成
Denodo からリアルタイムNetSuite のデータに接続するには、JDBC Driver のJAR ファイルをDenodo の外部ライブラリディレクトリにコピーし、Virtual DataPort Administration Tool から新しいJDBC データソースを作成する必要があります。
- CData JDBC Driver for NetSuite インストーラーをダウンロードしてパッケージを展開し、JAR ファイルを実行してドライバーをインストールします。
- JAR ファイル(およびライセンスファイルがある場合はそれも)をインストール先(通常はC:\Program Files\CData\CData JDBC Driver for NetSuite\lib\)からDenodo 外部ライブラリディレクトリ(C:\Denodo\Denodo Platform\lib-external\jdbc-drivers\cdata-netsuite-19)にコピーします。
- Denodo Virtual DataPort Administration Tool を開き、Server Explorer タブに移動します。
- 「admin」を右クリックし、「New」->「Data source」->「JDBC」を選択します。
- JCBC Connection を設定します。
- Name:任意の名前(例:netsuite)
- Database adapter:Generic
- Driver class path:C:\Denodo\Denodo Platform\lib-external\jdbc-drivers\cdata-netsuite-19
- Driver class:cdata.jdbc.netsuite.NetSuiteDriver
Database URI:必要な接続プロパティを使用してJDBC のURL に設定。例えば次のようになります。
jdbc:netsuite:Account Id=XABC123456;Password=password;User=user;Role Id=3;Version=2013_1;
Database URI の作成については以下を参照してください。
組み込みの接続文字列デザイナー
JDBC URL の作成の補助として、NetSuite JDBC Driver に組み込まれている接続文字列デザイナーが使用できます。JAR ファイルをダブルクリックするか、コマンドラインからjar ファイルを実行します。
java -jar cdata.jdbc.netsuite.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
Netsuite への接続
NetSuite は現在、2つの異なるAPI を提供しています。
- SuiteTalk はNetSuite との通信に使用する、SOAP ベースのより古いサービスです。多くのエンティティを幅広くサポートし、INSERT / UPDATE / DELETE を完全にサポートします。 しかしデータの抽出用ツールは低機能で、SELECT 時のパフォーマンスは極めて低いです。テーブルを結合するよい方法もありません。データのグループ化および集計はこのAPI からは利用できず、 そのためこれらの操作をサポートするには、すべてをクライアントサイドで実行しなければなりません。
- SuiteQL は新しいAPI です。サービスとのSQL ライクな通信方法を実現するため、JOIN の機能はより豊富になり、GROUP BY や集計機能もサポートします。 加えて、抽出したいカラムだけを取得する機能も完全にサポートします。そのため、データを抽出する際のパフォーマンスがSuiteTalk より大幅に向上しています。ただし、サポートされるのはデータの抽出のみです。
NetSuite に接続するには、以下を行う必要があります。
- Schema を設定して、接続に使用するAPI を指定。データを取得するだけの場合は、SuiteQL の使用をお勧めします。データの取得および変更が必要な場合は、SuiteTalk の使用をお勧めします。
- 使用するAPI に適した接続オプションを設定します。(それぞれのAPI で利用可能な接続オプションが異なります。ヘルプドキュメントの「許可の設定」を参照してください。)
Netsuite への認証
SuiteTalk またはSuiteQL
NetSuite は3つの形式のOAuth 認証を提供します。
- トークンベース認証(TBA)は、基本的にOAuth 1.0 で、OAuthAccessToken とOAuthAccessTokenSecret を実行時ではなくNetSuite UI 内で作成します。 TBA は、2020.2 以降のSuiteTalk およびSuiteQL の両方で利用可能です。
- OAuth 2.0 認証は、SuiteQL でのみ利用できます。OAuth 2.0 認証を強制するには、次のいずれかを実行します。
- OAuthVersion を使用するAPI に明示的に設定、または
- Schema をSuiteQL に設定
- OAuth JWT 認証は、OAuth 2.0 クライアント認証フローであり、クライアント認証情報を含むJWT を使用してNetSuite データへのアクセスを要求します。この認証方法は、Schema がSuiteQL に設定されている場合にのみ使用できます。
認証方法の詳細はヘルプドキュメントの「はじめに」を参照してください。
- 「接続テスト」をクリックして設定を確認し、「保存」をクリックします。
Virtual DataPort Administration Tool でNetSuite のデータを表示
データソースを作成したら、Denodo Platform で使用するNetSuite のデータの基本ビューを作成できます。
- 新しく作成したVirtualPort(admin.NetSuite)で「Create base view」をクリックします。
- オブジェクトツリーを展開し、インポートしたいオブジェクト(テーブル)を選択します。
- 「Create selected」をクリックしてNetSuite のデータのビューを作成します。
オプション:「Create associations from foreign keys」をクリックして、オブジェクト間の関係を定義します。 - ビューを作成した状態で、Server Explorer のテーブル(cdata_netsuite_salesorder)に移動し、選択したテーブルをダブルクリックします。
- 新しいタブで「Execution panel」をクリックしてクエリパネルを開きます。
- 「Execute」タブでクエリをカスタマイズするか、デフォルトを使用します。
SELECT * FROM cdata_netsuite_salesorder CONTEXT ('i18n'='us_est', 'cache_wait_for_load'='true')
- 「Execute」をクリックすると、データが表示されます。
基本ビューを作成すると、Denodo Platform の他のデータソースと同様にリアルタイムNetSuite のデータを操作できるようになります。例えば、Denodo Data Catalog でNetSuite にクエリを実行できます。
CData JDBC Driver for NetSuite の30日の無償評価版をダウンロードして、Denodo Platform でリアルタイムNetSuite のデータの操作をはじめましょう!ご不明な点があれば、サポートチームにお問い合わせください。