SAP ODP データ複製 APIの使用が許可されない理由とは?SAP Note 3255746について解説(vol.121)

  • 公開日:

昨今、データドリブン経営を目指し、企業活動に関わるあらゆるデータを一元化するために新たなデータ分析基盤の構築を進める動きが広がる中でSAPのデータを外部のDWH等に出力し、活用するケースが増えています。

SAPデータをDWHなど外部へ出力する際、一般的には次の3通りの方法が考えられます。

  • SAP社の製品を利用する
  • ABAPなど個別開発を行う
  • サードパーティ製品を利用する

その中でも③サードパーティ製品は、SAPODPデータ複製API(以下ODP API)が用いられているケースが多いかと思われます。

ところがSAP社は2024年に、サードパーティ製品のODP APIの使用を禁止する発表を行いました。(参照:SAP Note 3255746
今回はSAP Noteの内容も踏まえ、現状や対応策などについて解説します。

SAPのODP APIとは?

まず本章では、SAPのODP APIについて解説します。
ODP(Operational Data Provisioning、オペレーショナルデータプロビジョニング)は、SAP NetWeaver または ABAP ベースのアプリケーションからのデータ抽出およびデータ複製 (デルタメカニズムを含む) のための技術インフラストラクチャです。

一般的なシステムの場合、データ連携に関してはDBを直接参照するケースが多数です。
一方でSAPの場合は特殊なデータの持ち方をしている部分があるため、DBを直接参照してもSAP画面と同じデータが出力できず加工をしなければなりません。
加えてSAPのDBを直接参照するためには高額なライセンス費用が必要となります。SAPのデータを業務画面と同じ形で出力するためにはアプリケーションレイヤーを通してデータを取得する必要があり、ODP APIを利用することにより実現ができるようになっています。
SAPデータ連携を行うサードパーティ製品は、この仕組みを通してSAP BW または SAP BW∕4HANA、SAP Extractor、もしくはABAP CDS ViewからSAPデータの抽出・複製を行っています。

また、変更データキャプチャ(CDC) に対応しており、差分データ取得が可能なほか、イベント駆動型のデータ複製にも対応することが可能となっています。(例:リアルタイムデータ連携)

SAP ODP APIの使用禁止の問題点とは?

次に本章では、「SAP ODP APIの使用禁止の何が問題か」について解説します。

SAP社は20255月時点のSAP Note 3255746の中で主に以下の3点を述べています。

  • サードパーティ製品でODP API RFC モジュールを使用して SAP ABAP ソース にアクセスすることを許可しない
  • SAP は、ODP API RFC モジュールの使用を制限および監査する技術対策を導入する権利を留保している
  • ODP APIを使用することで発生する問題について、SAPは解決する責任を負わない

SAP Note 3255746は①に記載の通り、呼び出し先を SAP 内部用途に限定しました。もともと公開 API でない RFC SAP以外のサードパーティ製品により大量並列抽出に使われ、ABAP サーバー負荷・アップグレード時の互換保証などで SAP 側のサポート負担が高まっていたと推測されます。

また、②について、サードパーティ製品による ODP RFC データ抽出で “Indirect/Digital Access” と類似のライセンス論点が生じる前に牽制する意図があると見る向きもあります。

SAP ODP APIの使用禁止の解決策は?

では、SAP ODP API使用禁止の解決策はあるのでしょうか?
SAP社は解決策として、20255月時点のSAP Note 3255746の中で、次の2点を挙げています。

  • SAP Datasphereの利用
  • OData APIの利用

 SAP Datasphereの利用

SAP Datasphereの利用について解説します。

こちらはSAP製品内でのデータの蓄積のほか、Parquet形式でデータをファイル出力することも可能となっています。また、最近ではSAP Business Data CloudSAP BDC)に内包されることが発表されています。SAP社としてはサブスクリプション型の公式サービスに誘導し、ライセンスポリシーを一本化する狙いがあるものと読み取れます。

SAP Datasphereについては、「SAPのデータ統合プラットフォームって何ができるの?~ SAP Datasphereをわかりやすく解説 ~」で紹介しておりますので、詳細は併せてご覧ください。

OData APIの利用

OData(Open Data Protocol)は、Microsoft社が策定したREST APIの標準プロトコルで、HTTPを使用してWEBサーバー等とブラウザ等でデータのやりとりをするための手順などを定めた規格です。

SAP ODataについては、弊社ブログで紹介しておりますので、詳細はそちらをご覧ください。

OData APIについて、こちらは公式かつ外部で利用可能なOData APIによって公開されているものであり、SAP BTP S/4HANA Cloud では、セキュリティ/スケーラビリティの観点から旧来の RFC ではなく OData/REST を利用することが基本となっています。SAP Note 3255746 では 「ABAP CDS 等は OData API を通してアクセスせよ」 と案内しており、今後のクラウドネイティブ移行を睨んだ整理と考えられます。

ただし、ODP ODataは、S/4HANAのみ利用可能となります。また、ODataについてはアーキテクチャ的な問題もあり、DWHへのデータ連携のような大量データの転送が必要なケースにおいてはパフォーマンスに問題があることで知られています。SAP Noteの中でもパフォーマンスへの影響を確認する必要があることが述べられています。

まとめ

冒頭でも触れましたが近年、企業のDX化やデータドリブン経営を背景としてビジネスデータを1か所に集約する動きが加速しています。
SAP
社としてもSAP Business Data CloudSAP BDC)を打ち出し、非SAPデータを含めたデータ集約を目指していく中で、SAP Note 3255746によって、未公開 RFC に依存した抜け道的なデータ抽出を整理し、サポート負荷とライセンス曖昧性を減らしつつ、クラウド対応 API と公式サービス(SAP BDC)へ集約したいといった狙いがあるものと思われます。

現時点では技術的にすぐ通信が遮断されるわけではありませんが、

  • サポート対象外=将来のパッチで急に動かなくなるリスク
  • 契約/監査上のリスク=間接アクセスと同様に追加ライセンス請求の可能性

SAP 自ら明文化した点が大きなインパクトとなります。

すでにSAPデータを外部に連携する仕組みを構築している企業は導入しているサードパーティ製品がSAP Note 3255746に抵触していないかを確認するとともに将来の置き換え候補の評価を進めていく必要があるかと思われます。

また、SAPデータ連携の仕組みをこれから構築する企業においてはサードパーティ製品を選択する際にODP APIを利用しているかの確認が必要になるかと思われます。

なお、サードパーティ製品を提供している各社もSAP Note 3255746に対してパブリックなコメントなどを公開していますのでそちらもご参考いただいた方がよいかと思われます。

電通総研では、SAP専用のBIツールとして、BusinessSPECTREを提供しています。

BusinessSPECTREはSAP社に認定されたSAP連携製品(※BusinessSPECTRE XCは除く)であり、弊社開発の外部プログラムによりSAPのクエリをコールすることでアプリケーションレイヤーを通したデータの抽出を行っております。そのため、今回のブログで取り上げたODP APIは利用していないソリューションとなります。

BusinessSPECTREの詳細については弊社のホームページで詳しくご紹介しております。
https://erp.dentsusoken.com/solution/sap-bi-businessspectre/

ご検討時はもちろん、導入後の運用まで全面的にサポートしておりますので、ご興味がありましたらぜひご確認ください。

また、SAPのデータをクラウドDWHへ連携するBusinessSPECTRE XCも紹介しておりますので、併せてご覧ください。
https://erp.dentsusoken.com/download/guidebook_businessspectre/

製品・サービスに関する詳しいお問い合わせは、電通総研のWebサイトからお問い合わせください。
https://erp.dentsusoken.com/inquiry/