本記事では、データベースのメモリ上限を設定する方法とその使用例について説明します。
自身のデータベースのメモリ上限の設定方法
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 | 0MB | 80GB |
| 例2 | 80 | 90GB | 90GB |
例1では、
memory_limitは0Mであり、割合による設定方式を使用することを意味します。したがって、memory_limit_percentageに従って、OceanBaseデータベースのメモリ上限は100GB×80%=80GBとなります。例2では、
memory_limitは90GBであり、絶対値による設定方式を使用することを意味します。したがって、memory_limitに従って、OceanBaseデータベースのメモリ上限は90GBとなります。注意
現在の主流のOceanBaseデータベースサーバーは一般的に384GBまたは512GBのメモリを搭載しています。384GBのメモリの場合は、マシンメモリの80%を使用することを推奨し、512GBのメモリの場合は、マシンメモリの90%を使用することを推奨します。