はじめに
- RDS for OracleでもHugePagesが使える
HugePagesとは
- ページテーブルのページサイズはデフォルトは4 KB
- HugePage は、それよりも大きなページサイズ (デフォルトで 2 MB) で管理する機能
- 大規模な物理メモリを搭載したサーバなどでは、主にパフォーマンス面でのメリットがある
- 詳しくはこちら
HugePagesのメリット
- ページのテーブルを小さくし、メモリ管理の CPU 経過時間を減少することで、大規模なデータベースインスタンスのパフォーマンスを向上できます
HugePagesのデメリット
- MEMORY_MAX_TARGET/MEMORY_TARGETが使えなくなる
HugePages有効時の注意点
- DB再起動が伴う
HugePagesがデフォルト有効でないDBインスタンスクラス
↓から確認可能
Oracle DB インスタンスで huge pages を使用する
初期化パラメータ use_large_pages
- Huge pagesの有効/無効を制御する初期化パラメータ
- デフォルト値:{DBInstanceClassHugePagesDefault}
- 設定値:ONLY、FALSE、 {DBInstanceClassHugePagesDefault}
メモリ | {DBInstanceClassHugePagesDefault} |
---|---|
インスタンスクラスのメモリが 14 GiB 以下 | FALSE。手動で有効化可能。 |
インスタンスクラスのメモリが 14 GiB 以上、100 GiB 以下 | TRUE(ONLY)。手動で無効化可能。 |
インスタンスクラスのメモリが 100 GiB 以上 | TRUE(ONLY)。無効にはできない。 |
HugePagesの有効化の方法
1)パラメータグループの編集
次の初期化パラメータを設定する(設定例)
初期化パラメータ | 設定値 |
---|---|
memory_target | 0 |
memory_max_target | 0 |
pga_aggregate_target | 0 |
memory_max_target | {DBInstanceClassMemory*1/8} |
sga_target | {DBInstanceClassMemory*3/4} |
sga_max_size | {DBInstanceClassMemory*3/4} |
use_large_pages | ONLY |