日本オラクル株式会社主催
Oracle Database 12c for SAP
最新情報セミナー
at ベルサール東京日本橋2015年9月3日
富士通-SAPコンピテンスセンター
fjcc-sap@ml.css.fujitsu.com
SAP環境における
Oracle Database In-Memory
共同検証結果報告
富士通とオラクルのアライアンス
1989年にOEM契約を締結。日本企業初のDiamond Partnerとして、
富士通とオラクルのSAP領域でのアライアンス
2000年代中盤 「SAP on Oracle 10g」協業ビジネス ・Data Guardを用いたDRソリューション ・日本企業で唯一のO2O(Oracle-to-Oracle)サービス提供 2011年・Advanced Security Transparent Data Encryption 共同検証、 共同テクニカルホワイトペーパー 2010年 「SAP on Oracle 11g」協業ビジネス開始 ・Solaris環境における導入手順確立 ・Windows環境における導入手順確立 2010年
・Database Smart Flash Cache共同検証 ・Transportable Tablespace共同検証、 高速移行ソリューションの拡充
2011年
・RAC on Oracle Linux and ASM / ACFS w/ SAPCTL on Oracle VM 共同検証 2010年
・国内初RAC on Windows 共同検証、 共同セミナー、ブローシャ
2013年
・Oracle Exadata共同PoC
2000年代前半 「SAP on Oracle 8i / 9i」協業ビジネス ・PRIMECLUSTERを用いた HAソリューション 2015年New ! 「SAP on Oracle 12c」協業ビジネス開始 ・導入手順確立 ・Database In-Memory共同検証 2012年
・Solaris 11 Dynamic Reconfiguration / ZFS 共同検証、共同セミナー
要件に合わせて選べるSAP認定FUJITSU Servers
PRIMERGY
(PCサーバ)
PRIMEQUEST
(基幹IAサーバ)
[Solaris] [Linux/Windows]大規模
基幹
システム
部門
システム
UNIXサーバ
IAサーバ
SPARC M10
PRIMERGY
PRIMEQUEST
SPARC M10
オラクルとの共同開発による
グローバルスタンダードのUNIXサーバ
2階層SAP SDベンチマークで世界最高性能(844,420SAPS)
最大64TBの大容量メモリを搭載可能
IAサーバでメインフレーム並みの高い信頼性・可用性を実現
最大8CPU/144コア、12TBメモリまでの拡張性
ハードウェアパーティション機能による柔軟性
Linux/Windowsのオープン性を活かし、高信頼を追求
優れたコストパフォーマンス
1wayから4wayまで、
タワー型・ラック型・ブレードサーバの多様な選択肢
中規模
基幹
システム
Agenda
SAP環境における
Oracle Database In-Memory(DBIM) 共同検証結果報告
現行SAPユーザのロードマップ
Oracle Database 12cとDBIMのSAPサポート条件
DBIMの特長とベストプラクティス
SAP環境におけるDBIM導入手順
SAP環境におけるDBIM性能評価
Live Demo
現行SAPユーザのロードマップ
ERP 6.0 EHP7未満 NUC/UC NW 7.0x Any DB ERP 6.0 EHP7 UC NW 7.40 HANA ERP 6.0 EHP8 UC NW 7.50 HANA S/4HANA (sFIN+sLOG) S/4HANA (sFIN) ERP 6.0 EHP7 NUC/UCNW 7.40
Any DB ERP 6.0 EHP8 UC NW 7.50 Any DB ERP 6.0 EHP7 UC NW 7.40 HANA現在のS/4HANA
2015/Q4予定
~2025年まで
DMO(EHP最新化&ユニコード化
&HANAマイグレーション)
sERP適用と有効化
“Upgrade-Like”
SUM(EHP最新化)
SWPM(ユニコード化
&HANAマイグレーション)
オンプレミス or クラウド?
現状のままという判断も
ユニコード化必須
その先は??
ERP 6.0
=~2025年まで?
S/4HANA化?
SAP LT
(Planned)
Oracle Database 12cのSAPサポート条件
SAP NetWeaver 7.0以上を基盤とするSAPアプリケーションが対象
SAP Note 2133079 - Oracle Database 12c: Integration in SAP environment
・いくつかの新機能は遅れての認定
・DBIMも
6月30日
に認定済
DBIMのSAPサポート条件
SAP NetWeaver 7.0以上を基盤とするSAPアプリケーションが対象
SAP Note 2178980 - Using Oracle Database In-Memory with SAP NetWeaver based Products
DBIMのDDICフルサポート
SAP NetWeaver 7.40 SP12(2015年8月14日提供)での変更点
(SAPシステムコピーなどのBASIS作業においてインメモリ属性を保持)
DBIMの利用条件
DBIMについて、まず読むべき資料
Oracle Database 12c Release 1
コアテク・セミナー
http://www.oracle.com/technetwork/jp/ondemand/od12c-coretech-aug2014-2283256-ja.html
SAP on Oracle | SCN
http://scn.sap.com/docs/DOC-65092以下の資料を読んでDBIMの理解を深めましょう
DBIMの特長
OLTP・OLAP処理の両方を高速化
アプリケーションの変更不要
容易な導入手順
必要なデータのみインメモリ化
(適切なハードウェア投資)
既存Oracle Databaseの機能を
透過的に利用可能
既存DB管理者、スキルの活用
OLTP処理が得意なロー型とOLAP(集計・分析)処理を高速化するカラム型の
両方を保持する「インメモリ・デュアル・フォーマット」
2種類のフォーマットを
オプティマイザが自動判別
DBIMのサイジング - メモリ
新しいインメモリ・カラム・
フォーマットのデータを格納
初期化パラメータ
「INMEMORY_SIZE」で設定
SGA_TARGETはこのインメモリ
領域を格納できるサイズに調整
静的な領域で自動メモリ管理に
より増減しない(増加量を見込む)
SGA内の新たな領域として、インメモリ領域が追加。
インメモリ・カラム・ストアを加味した物理メモリ量を用意
DBIMのサイジング - CPU
バックグラウンドでワーカー・プ
ロセス(ora_wNNN_${SID})が実行
ワーカー・プロセス数は
初期化パラメータ
「INMEMORY_MAX_POPULATE_S
ERVERS」で明示的に設定可能
データ更新時の再ポピュレーショ
ンも自動で行われる
データをディスクからインメモリ・カラム・ストアにロードする動作、
ポピュレーションを加味したCPUコア数を用意
バックグラウンドで
ポピュレーション
6つの圧縮タイプ
圧縮タイプ
概要
圧縮率
ポピュレー
ション時の
CPU負荷
クエリ性能
NO MEMCOMPRESS
圧縮なし
なし
低
速
MEMCOMPRESS FOR
DML
ある程度のデータ更新がかかるセグメントに
適した圧縮レベル
低
MEMCOMPRESS FOR
QUERY LOW
デフォルト。ディクショナリやランレングス圧縮、
ビット・パッキングを使用
最速
MEMCOMPRESS FOR
QUERY HIGH
上記QUERY LOWより高圧縮、
下記CAPACITY LOWよりは低圧縮
MEMCOMPRESS FOR
CAPACITY LOW
上記までに加え新規開発のアルゴリズムで
Oracleデータ型に特化した圧縮を適用
MEMCOMPRESS FOR
CAPACITY HIGH
上記までに加え一般的なgzip、DEFLATEなどに
近い圧縮を適用
高
高
速
SAP環境におけるDBIM導入のベストプラクティス
SAP標準の索引を削除しない(カスタム索引は削除してもよい)
個別の列をインメモリ・カラム・ストアにロードしない
データベース・バッファ・キャッシュ領域は従来通り必要
SAP BWの集約(Aggregates)を削除しない
一般的なDBIMのナレッジは有効だが、一部SAP固有の制約を考慮
DBIM導入の流れ
事前調査
DBIM設定
運用管理
効果のある
データの
見極め
インメモリ・
カラム・
ストアの
サイズを決定
インメモリ・
カラム・
ストアに
格納する
データを選択
不要な
インデックス
を削除
インメモリ・
カラム・
ストアの
状況監視
DBIM
アドバイザ
DBIMアドバイザ導入手順
SBPに含まれているインストール用SQLを実行するだけ(数分で完了)。
Oracle 11.2.0.3以上で使えるため、12cへの移行検討段階でも活用可能
$ cd $ORACLE_HOME/sap/ora_imadvisor $ ls
imadvisor imadvisor_install.sql imadvisor_version.txt sapimadv.sql version.txt
imadvisor_deinstall.sql imadvisor_preinstall.sql README.txt sapgenexclusions.sql sapmodimadvscript.pl $
$ sqlplus / as sysdba @imadvisor_install Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options **********************************************
Preparing Installation
********************************************** (略)
The Oracle Database In-Memory Advisor is licensed as part of the Oracle Tuning Pack. Do you currently have a valid Oracle Tuning Pack license with this database (Y/N)? (略)
DBMS_INMEMORY_ADVISOR installation and setup complete.
いくつか入力を要求されるため、 README.txtの記入例に従って進める
During the installation you need to provide the following information: - Oracle Tuning Pack license -> Yes
- Database Connection identifier -> Database SID or Service name
- IMADVISOR password -> <password> for database user IMADVISOR - IMADVISOR tablespace -> e.g. SYSAUX
- IMADVISOR directory -> e.g. /oracle/<DBSID>/oraimadvisor - IMADVISOR password -> <password provided above> - SAP schema user for Grant -> e.g. SAPSR3
DBIMアドバイザ実行手順 1/2
AWRとASHが主な情報源。STSの指定は任意。
タスクを実行(スクリプト作成)し、推奨事項をデータベース内に格納
$ vi sap_imadvisor.sql
$ sqlplus / as sysdba @sap_imadvisor (略)
PL/SQL procedure successfully completed. $ cat sap_imadvisor.sql
set serveroutput on
exec dbms_inmemory_advisor.drop_task('SAPWORK',true); exec dbms_inmemory_advisor.create_task('SAPWORK');
exec dbms_inmemory_advisor.set_parameter('WRITE_DISADVANTAGE_FACTOR', 0.7, 'SAPWORK'); exec dbms_inmemory_advisor.set_parameter('LOB_BENEFIT_REDUCTION', 1.2, 'SAPWORK');
exec dbms_inmemory_advisor.set_parameter('MIN_INMEMORY_OBJECT_SIZE', 1024000, 'SAPWORK'); exec dbms_inmemory_advisor.set_parameter('READ_BENEFIT_FACTOR', 2, 'SAPWORK');
/* exec dbms_inmemory_advisor.add_sqlset('SAPWORK', 'STSSAPWORKLOAD'); */ exec dbms_inmemory_advisor.add_hist_statistics('SAPWORK', 1306, 1590); exec dbms_inmemory_advisor.execute_task('SAPWORK');
exec dbms_inmemory_advisor.generate_recommendations('SAPWORK', NULL, 68719476736);
SAP環境におけるDBIMアドバイザの パラメータ名および推奨値 • WRITE_DISADVANTAGE_FACTOR = 0.7 • LOB_BENEFIT_REDUCTION = 1.2 • MIN_INMEMORY_OBJECT_SIZE = 1024000 • READ_BENEFIT_FACTOR = 2
STSを指定する場合
AWRの開始IDと終了ID
使用可能なメモリサイズ
(inmemory_size)
= XX[GB] x 1024 x 1024 x 1024
DBIMアドバイザ実行手順 2/2
(続き) データベース内に格納された推奨事項をローカルファイルに生成。
最後に、インメモリ化できないSAPテーブルを考慮したSQLに調整
$ sqlplus / as sysdba @imadvisor/imadvisor_fetch_recommendations.sql Enter value for im_task_name: SAPWORK
Fetching recommendation files for task SAPWORK
Enter value for recommendation_directory: <ローカルファイルを生成するパス> Placing recommendation files in directory <ローカルファイルを生成するパス> $
$ sqlplus / as sysdba @sapgenexclusions (略)
Enter the owner of your SAP (e.g. SAPR3 or SAPSR3): SAPSR3 "Writing to file: exclusions.txt"
"File created: exclusions.txt“ $
$ $ORACLE_HOME/perl/bin/perl sapmodimadvscript.pl imadvisor_SAPWORK.sql exclusions.txt > finalimtabs.sql $
DBIMアドバイザ実行結果例
Workload Database Usage
OLAP処理の時間と比率
In-Memory Sizes
インメモリ・カラム・ストアの
推奨サイズとOLAP処理の改善効果
ALL n SQL Statements With Analytics
Processing Benefit
SQLごとの改善効果
All n Objects Recommended To Place
In-Memory For Analytics Processing
オブジェクトごとの改善効果
HTML形式のレポートとSQLを生成
ALTER TABLE "SAPSR3"."/B49/DBENCH103" INMEMORY
MEMCOMPRESS FOR QUERY LOW PRIORITY HIGH; ALTER TABLE "SAPSR3"."/B49/XCUSTOMER" INMEMORY
MEMCOMPRESS FOR QUERY LOW PRIORITY HIGH; ALTER TABLE "SAPSR3"."/B49/EBENCH10" MODIFY
PARTITION "/B49/EBENCH10201010" INMEMORY NO