
上図からわかるように、OceanBaseデータベースのノードが使用する総メモリサイズは、サーバーの一定の割合となります(絶対値を設定することも可能です)。このうちの一部はノード自身のシステム運用に使用され(ノード予約メモリ)、残りの部分は作成されたテナントに割り当てられます。各テナントは従来のデータベースのインスタンスに相当し、システムテナントを除き、他のテナントのメモリ構成は同じです。システムテナントには対応するMetaテナントが存在せず、そのメモリは増分データを格納するMemStoreとKVCacheキャッシュに直接分割されます。一方、他のユーザーテナントには対応するMetaテナントが存在するため、ユーザーテナントのメモリは、テナント自身のメモリと対応するMetaテナントのメモリに分かれます。そして、テナント自身のメモリと対応するMetaテナントのメモリは、増分データを格納するMemStoreおよびKVCacheキャッシュにさらに分割されます。