本記事では、データベースのメモリ上限を設定する方法と、その使用例について説明します。
自身のデータベースメモリ上限の設定方法
OceanBaseデータベースは、自身のメモリ上限を設定するための以下の2つの方法を提供しています:
マシンの総メモリ上限の割合に応じて、使用可能な総メモリを計算します。これは
memory_limit_percentageパラメータで設定します。OceanBaseデータベースの使用可能メモリの上限を直接設定します。これは
memory_limitパラメータで設定します。memory_limitパラメータの値が0Mの場合は割合設定方式が使用され、それ以外の場合は絶対値設定方式が使用されます。
使用例
以下の例は、100GBのマシンでOceanBaseデータベースインスタンスを起動する際、memory_limit_percentage と memory_limit パラメータの値がOceanBaseデータベースのメモリ上限にどのように影響するかを示しています。
例 |
memory_limit_percentage |
memory_limit |
OceanBaseデータベースのメモリ上限 |
|---|---|---|---|
| 例1 | 80 | 0M | 80 GB |
| 例2 | 80 | 90 GB | 90 GB |
例1では、
memory_limitが0Mであるため、割合設定方式が使用され、memory_limit_percentageが優先されます。その結果、OceanBaseデータベースのメモリ上限は100 GB × 80% = 80 GBとなります。例2では、
memory_limitが90 GBであるため、絶対値設定方式が使用され、memory_limitが優先されます。その結果、OceanBaseデータベースのメモリ上限は90 GBとなります。注意
現在の主流のOceanBaseデータベースサーバーは一般的にメモリが384GBまたは512GBです。384GBメモリの場合はマシンメモリの80%、512GBメモリの場合はマシンメモリの90%を使用する設定を推奨します。