すべてのプロダクト
Search
ドキュメントセンター

:リソースマネージャー

最終更新日:Jun 22, 2026

リソースマネージャーは、PolarDB の機能で、クラスターの CPU 使用率とメモリ使用量をリアルタイムでモニタリングできます。ユーザースレッドとリソースグループという 2 つのディメンションでのモニタリングをサポートしています。これにより、システムの運用状況を把握し、負荷の原因を特定し、それに応じて負荷を分散させることができます。このトピックでは、リソースマネージャーの使用方法について説明します。

前提条件

ご利用の PolarDB クラスターは PolarDB for MySQL 8.0 を実行しており、そのリビジョンバージョンは 8.0.2.1.0 以降である必要があります。

説明 リビジョンバージョンのアップグレード方法については、「リビジョンバージョン管理」をご参照ください。

注意事項

  • スレッドプール機能を有効にすると、CPU 使用率とメモリ使用量の統計が不正確になります。そのため、resource_group_enabled パラメーターと loose_thread_pool_enabled パラメーターを同時に有効にすることはできません。
  • カスタムリソースグループ構成はサポートされていません。すべてのユーザースレッドは、接続が成功すると user_default リソースグループに割り当てられます。システムのバックグラウンドスレッドは sys_default リソースグループに割り当てられます。

パラメーター設定

リソースマネージャーでは、次のパラメーターを設定できます。

説明
  • リソースマネージャーのモニタリング機能を有効にするには、resource_group_enabledperformance_schema、および cpu_usage_capture_enabled パラメーターを ON に設定する必要があります。
  • resource_group_enabledperformance_schema、および cpu_usage_capture_enabled パラメーターを設定した後、新しい設定を有効にするには、クラスター内のすべてのノードを再起動する必要があります。操作を適切に計画し、注意して再起動してください。
パラメーター 説明
resource_group_enabled

ON または OFF

デフォルト値:OFF

リソースグループ機能を有効にするかどうかを指定します。
performance_schema

ON または OFF

デフォルト値:OFF

Performance Schema 機能を有効にするかどうかを指定します。
cpu_usage_capture_enabled

ON または OFF

デフォルト値:OFF

CPU 使用率の収集を有効にするかどうかを指定します。
cpu_usage_capture_interval

100 から 1000

デフォルト値:500

CPU 使用率の収集間隔 (ミリ秒単位)。

このパラメーターは、連続するサンプリング操作間の最小間隔を指定します。

cpu_usage_summarize_interval

1000 から ULONG_MAX

デフォルト値:2000

CPU 使用率の集計間隔 (ミリ秒単位)。

このパラメーターは、クエリ結果に表示される平均 CPU 使用率を計算するためのタイムウィンドウを指定します。

performance_schema_minimal

ON または OFF

デフォルト値:OFF

Performance Schema のメモリ使用量を最小化するかどうかを指定します。

performance_schema パラメーターを ON に設定すると、デフォルトで多くのパフォーマンス関連の統計が有効になり、パフォーマンスに大きな影響を与えます。performance_schema パラメーターのパフォーマンスへの影響を軽減するために、performance_schema_minimal パラメーターを ON に設定することを推奨します。

説明 このパラメーターは、performance_schemaON に設定されている場合にのみ設定できます。

リソースのモニタリング

  • 次のコマンドを実行して、スレッドのリソース使用量をクエリできます。
    call db_resource_manager.show_processlist();
    call db_resource_manager.show_processlist_verbose();
    説明
    • show_processlist コマンドは、並列サブスレッドのリソースをメインスレッドに集約するため、結果にはサブスレッドが個別に表示されません。その結果、報告される CPU 使用率が 100% を超えることがあります。
    • show_processlist_verbose コマンドは、サブスレッドを個別に表示します。
    mysql> call db_resource_manager.show_processlist();
    +------+------+-----------------+------+---------+------+-----------+-----------+----------------+-----------+---------+-----+----------------------------------------------+
    | ID   | USER | HOST            | DB   | COMMAND | TIME | STATE     | PARENT_ID | RESOURCE_GROUP | CPU_RATIO | MEM     | DOP | INFO                                         |
    +------+------+-----------------+------+---------+------+-----------+-----------+----------------+-----------+---------+-----+----------------------------------------------+
    |    7 | root | 127.0.0.1:47983 | test | Query   |    0 | starting  |      NULL | USR_default    | 0.00      |  455273 |   1 | call db_resource_manager.show_processlist()   |
    |   12 | root | 127.0.0.1:53189 | tpch | Query   |   51 | executing |      NULL | USR_default    | 380.86    | 1238314 |   4 | select                                       |
    |      |      |                 |      |         |      |           |           |                |           |         |     | l_returnflag,                                |
    |      |      |                 |      |         |      |           |           |                |           |         |     | l_linestatus,                                |
    |      |      |                 |      |         |      |           |           |                |           |         |     | sum(l_quantity) as sum_qty,                  |
    |      |      |                 |      |         |      |           |           |                |           |         |     | sum(l                                        |
    +------+------+-----------------+------+---------+------+-----------+-----------+----------------+-----------+---------+-----+----------------------------------------------+
    2 rows in set (0.00 sec)
    
    mysql> call db_resource_manager.show_processlist_verbose();
    +------+------+-----------------+------+---------+------+-----------+-----------+----------------+-----------+--------+-----+----------------------------------------------+
    | ID   | USER | HOST            | DB   | COMMAND | TIME | STATE     | PARENT_ID | RESOURCE_GROUP | CPU_RATIO | MEM    | DOP | INFO                                         |
    +------+------+-----------------+------+---------+------+-----------+-----------+----------------+-----------+--------+-----+----------------------------------------------+
    |    7 | root | 127.0.0.1:47983 | test | Query   |    0 | starting  |      NULL | USR_default    | 0.02      | 455273 |   1 | call db_resource_manager.show_processlist_verbose() |
    |   12 | root | 127.0.0.1:53189 | tpch | Query   |   53 | executing |      NULL | USR_default    | 0.00      | 521446 |   4 | select                                       |
    |      |      |                 |      |         |      |           |           |                |           |        |     | l_returnflag,                                |
    |      |      |                 |      |         |      |           |           |                |           |        |     | l_linestatus,                                |
    |      |      |                 |      |         |      |           |           |                |           |        |     | sum(l_quantity) as sum_qty,                  |
    |      |      |                 |      |         |      |           |           |                |           |        |     | sum(l                                        |
    |   13 | root | 127.0.0.1:53189 | tpch | Query   |   53 | executing |        12 | USR_default    | 96.71     | 192442 |   1 | NULL                                         |
    |   14 | root | 127.0.0.1:53189 | tpch | Query   |   53 | executing |        12 | USR_default    | 93.13     | 185954 |   1 | NULL                                         |
    |   15 | root | 127.0.0.1:53189 | tpch | Query   |   53 | executing |        12 | USR_default    | 94.73     | 183398 |   1 | NULL                                         |
    |   16 | root | 127.0.0.1:53189 | tpch | Query   |   53 | executing |        12 | USR_default    | 96.73     | 196194 |   1 | NULL                                         |
    +------+------+-----------------+------+---------+------+-----------+-----------+----------------+-----------+--------+-----+----------------------------------------------+
    6 rows in set (0.00 sec)
    次のコマンドを実行して、クエリ結果をフィルターおよびソートすることもできます。
    select * from information_schema.processlist_verbose order by cpu_ratio desc limit 10;
    select * from information_schema.processlist_verbose where time > 60 order by mem desc
  • 次のコマンドを実行して、システム内のすべてのリソースグループとその構成をクエリできます。
    select * from information_schema.resource_group;
    説明 このクエリを実行する前に、resource_group_enabled パラメーターを ON に設定する必要があります。詳細については、「パラメーター設定」をご参照ください。

パフォーマンスへの影響

リソースマネージャー機能を有効にすると、PolarDB クラスターのパフォーマンスに軽微な影響があります。ただし、performance_schema を有効にすると、デフォルトで多数の統計コレクターがアクティブになるため、パフォーマンスへの影響がより大きくなる可能性があります。

测试结果 测试结果

上記の Sysbench パフォーマンステストは、次のことを示しています。

  • performance_schemaresource_group_enabled を `ON` に設定し、performance_schema_minimal を `OFF` に設定してリソースマネージャーを有効にすると、機能が無効な場合 (デフォルト設定で performance_schemaresource_group_enabled が `OFF` の場合) と比較して、パフォーマンスが約 8% 低下します。
  • performance_schemaresource_group_enabled を `ON` に設定し、performance_schema_minimal を `ON` に設定してリソースマネージャーを有効にすると、機能が無効な場合 (デフォルト設定で performance_schemaresource_group_enabled が `OFF` の場合) と比較して、パフォーマンスの低下が約 2% と小さくなります。
説明
  • performance_schema パラメーターのパフォーマンスへの影響を軽減するために、performance_schema_minimal パラメーターを ON に設定することを推奨します。
  • 上記のテストは、8 コア 32 GB のメモリを搭載した PolarDB for MySQL クラスターで Sysbench を使用して実行されました。パフォーマンスへの影響は、インスタンス構成やユースケースによって異なる場合があります。