ABAP CDS View vs HANA Information View(HANA View):メモリ使用量比較

この記事を書いたメンバー:

橋口 大

ABAP CDS View vs HANA Information View(HANA View):メモリ使用量比較

目次

検証の背景

 ここ数年SAPプロジェクトでは、Code Pushdownの考え方で業務ロジックを設計し、ABAP CDS Viewによる実装が一般的になりつつあります。単体テストの少量データで正常動作したものが、システムテスト、性能テストで本番想定のデータ量で動かそうとすると、SAP HANA Database(HDB)でメモリ不足によるエラーが発生して、動作できなくなってしまうケースを、複数のプロジェクトで目の当たりにし、また、人伝に聞きます。
 メモリ消費を抑えるための定石は、Viewに実装しているロジックを再確認して、洗練されたロジックに置き換えます。しかしながら、洗練されたロジックは要件によりケースバイケースになり一概に比較が難しいです。今回はロジックの見直しは行わず、同一ロジックをHANA Information View(HANA View)に置き換える方法をとり、メモリ消費が抑えられるかどうかを比較検証します。

検証方法

 今回は、SAP標準テーブル:ACDOCA:ユニバーサルジャーナルより、以下処理の結果を表示します。(ピボットテーブルで各種分析できる出力形式を目指します)

  • 月次集計(四半期、半期、通期集計含む)
  • BS残高(累計値)計算(PLは増減値、BSは累計値の切替含む)
  • 前年度金額を別途項目として持つ(前年度比較に対応)

 以下の2種類の方式でそれぞれ実装します。(ABAP SQL(旧Open SQL)でアクセスできるようにします)

  • ABAP CDS View
  • HANA Information View(AMDP:Table Functionでラッピング)

データ量(目安)

  • ACDOCA:145,000レコード
  • SKA1:19,500レコード

検証結果

ABAP CDS View

  • 割当メモリ :377.5[MB]
  • 実行時間:362.87[ms]

HANA Information View

  • 割当メモリ :140[MB]
  • 実行時間:212.79[ms]

比較および総括

ABAP CDS Viewを、ロジックをそのままにHANA Information Viewに置き換えました。

ABAP CDS ViewとHANA Information Viewの割当メモリ、実行時間の比較


ABAP
CDS
View
HANA
Information
View
改善率
割当メモリ
377.5[MB]140[MB]約1/2.7倍
実行時間362.78[ms]212.79[ms]約1/1.7倍

割当メモリ

1/3近くに削減出来ました。実プロジェクトでは、洗練したロジックに置き換えることで、割当メモリの削減すると思います。既に洗練したロジックを採用していて、メモリ不足エラーが発生してしまう場合に有効な選択肢の一つになると思います。

実行時間

1/2近くに削減出来ました。データボリュームが少ないので、大きな差にはなりませんでした。実プロジェクトでは、数千万レコードに対してViewを実行することになります。実際はより大きく削減出来る可能性があります。

関連リンク


SAP関連のViewまとめ(1/3):全体像と処理速度|基幹システムのクラウド移行・構築・導入支援のBeeX

株式会社Beex(ビーエックス)のエンジニアが執筆するSAP関連のViewまとめ(1/3):全体像と処理速度のページです。SAPなど基幹システムを中心としたエンタープライズシステムのクラウドインテグレーションを専業としています。

beex-inc.com

og_img

お知らせ

実プロジェクトで、ABAP CDS Viewのメモリ不足エラーは、一筋縄に解消出来ないことが多くあります。BeeXでは、SAP HANA黎明期からCode Pushdownを取り入れた実プロジェクトを経験しているスタッフが、直接対応する体制が整っています。メモリ不足や実行時間に関する課題がございましたら、ご連絡ご相談くださいますようお願い致します。

キーワード:
SAP S/4HANA
SAP BW/4HANA
SAP HANA
ABAP CDS View
HANA View
HANA Information View
AMDP
Code Pushdown
Code to Data
メモリ不足
メモリオーバーフロー

カテゴリー
タグ

この記事を書いたメンバー

橋口 大
シニアテクニカルコンサルタント
橋口 大

SAP HANA、ABAP関連のアプリ設計開発を担当しています。

SAP HANAの各種オブジェクトを使用した、Code Pushdown開発(SQL)を得意としています。

SAP認定技術者:

  • SAP Certified Development Specialist - ABAP for SAP HANA 2.0
  • SAP Certified Application Associate - SAP HANA Cloud Modeling
  • SAP Certified Application Associate - SAP Analytics Cloud Story Design
  • SAP Certified Application Associate - SAP Analytics Cloud: Planning

SAPシステムや基幹システムのクラウド移行・構築・保守、
DXに関して
お気軽にご相談ください

03-6260-6240 (受付時間 平日9:30〜18:00)