各製品の資料を入手。
詳細はこちら →こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。
この記事では、SQL Server でe-Sales Manager データを使うというシナリオにフォーカスして実現方法やメリット&デメリットを解説します。
一番簡単な方法として、CData ODBC Driver for ESalesManager でCACHE クエリを実行する方法があります。CData ODBC ドライバはCACHE をサポートしており、メタデータのみのキャッシュから明示的にデータを含むCACHE を発行可能です。
詳細はこちら: e-Sales Manager のデータをPowerShell script でSQL Server にレプリケートする方法
ODBC Driver for ESalesManager のDSN 設定でCACHE 設定を行います。以下のようにCACHE SELECT というSQL を発行することで、選択したテーブルのデータをコピーできます。
CACHE SELECT * FROM テーブル名
設定の簡単さ:★★
環境の簡単さ:★★★
ライセンスコスト:★★★
リアルタイム性:★
連携はe-Sales Manager → SQL Server の片方向のみ
柔軟性:★★
簡単な.NET デスクトップアプリでCACHE クエリを定期的に発行することもできますし、記事のようにPowerShell からスクリプトで実行することもできます。PowerShell ですとWindows マシンからアプリのデプロイなどをしなくても使えますし、定期実行ができるのでお手軽です。
必要なCData 製品のライセンスはODBC Driver 1本のみなので、低価格でe-Sales Manager → SQL Server の実装が可能です。とはいえバッチ連携ですので、リアルタイムなe-Sales Manager データを扱えない点は少し残念です。またSQL やPowerShell スクリプトを書いたり、バッチ処理を行うアプリを作成する必要があります。
CData では、e-Sales Manager PowerShell Cmdlets も提供しています。Cmdlets を使えば、中継用のアプリケーションを作成せずにPowerShell だけでe-Sales Manager からSQL Server にデータをコピーすることが可能です。PowerShell Cmdlets については こちらを参照してください。
SQL Server には、リンクサーバーという他のDB をSQL Server から呼び出せる統合機能があります。CData ODBC Driver for ESalesManager に付属しているSQL Gateway を使えば、e-Sales Manager のデータをSQL Server のリンクサーバーとして扱うことができます。e-Sales Manager のデータがSQL Server 保存されるわけではありませんが、SQL Server のインターフェースでe-Sales Manager のデータをSQL を使って呼び出すことができます。
設定方法はこちら:e-Sales Manager データにSQL Server のリンクサーバーとして接続
通常のODBC Driver for ESalesManager のDSN 設定の後にSQL Gateway を立ち上げ、e-Sales Manager DSN をSQL Server のサービスとして設定します。SQL Server Management Studio でこのサービスをリンクサーバーとして登録すると、SQL クエリでe-Sales Manager データをリンクサーバー経由で使用することができます。 複数の.NET クライアントアプリからのe-Sales Manager のデータ参照や、SQL Server データとのJOIN などに最適です。
SELECT * from リンクサーバー名.CData e-Sales Manager Source Sys(ODBC DSN 名).e-Sales Manager.テーブル名
設定の簡単さ:★
環境の簡単さ:★
ライセンスコスト:★★
リアルタイム性:★★★
連携はe-Sales Manager → SQL Server および、SQL Server → e-Sales Manager の双方向が可能
柔軟性:★★
SQL Server のリンクサーバーに慣れ親しんだ方には一番使いやすい利用方法です。常に最新のe-Sales Manager データをリアルタイムにクエリできる点も優れています。SQL Server 側からSQL で双方向連携(書き込みを含む)できる点が大変便利です。
手間としてはSQL Gateway をホスティングして稼働させなければならない点があります。またSQL Gateway は、ODBC Driver for ESalesManager のサーバーライセンスに同梱されています。
そして、SQL Server のリンクサーバーを使えば、SQL Server → e-Sales Manager の方向の連携も可能になります。SQL Server 側のストアドプロシージャでe-Sales Manager へのSQL Server データの書き込みができます。
SQL Server ユーザーの中には、データ統合・ワークフローにSSIS(SQL Server Integration Services)を使っている方も多いのではないでしょうか。CData では、SSIS 向けにe-Sales Manager への連携が可能なSSIS Components for ESalesManager を提供しています。
技術記事: SSIS を使ってe-Sales Manager のデータをSQL Server にインポート
設定の簡単さ:★★
環境の簡単さ:★★
ライセンスコスト:★★
リアルタイム性:★★
連携はe-Sales Manager → SQL Server および、SQL Server → e-Sales Manager の双方向が可能
柔軟性:★★★
SSIS ユーザーであれば、e-Sales Manager Components さえあれば、簡単にSQL Server へのインポートフローを組むことができます。コンポーネントもドライバーと同程度の価格でありリーズナブルです。
SSIS 以外でもすでにETL / EAI ツールをお持ちであれば、CData Drivers をETL / EAI ツールで使うだけで簡単にデータ連携が可能です。
最後はCData Sync というSaaS データをRDB に同期する専用のアプリケーションを使う方法です。CData Sync はサーバーアプリケーションになっており、ブラウザコンソールからノーコードで3ステップで同期ジョブが設定できます。
定期実行や細かいレプリケーションの項目設定までをGUI 操作だけで実行可能です。
設定方法はこちら:SQL Server にe-Sales Manager のデータを連携・統合する方法
設定の簡単さ:★★★
環境の簡単さ:★★
ライセンスコスト:★
リアルタイム性:★
連携はe-Sales Manager → SQL Server の片方向のみ
柔軟性:★★★
DB への同期専用のノーコードツールであり、使いやすさや拡張性は高いです。サーバーツールですので、価格は#2 と同程度になります。
e-Sales Manager → SQL Server の連携の4つの実装方法を紹介しました。利用の規模や技術的な制約によっていろいろな方法があります。ぜひ、自分のケースに合った連携方法を選んでください。 記事で紹介した4つの方法の実行に必要な製品は以下になります。どの製品も30日間の無償トライアルが利用できますので、ぜひお試しください。