Documentation Home
MySQL 5.6 リファレンスマニュアル
Download this Manual
PDF (US Ltr) - 26.8Mb
PDF (A4) - 26.9Mb
HTML Download (TGZ) - 7.2Mb
HTML Download (Zip) - 7.2Mb


18.5.6.3 MySQL Cluster 管理クライアントでの CLUSTERLOG STATISTICS の使用

NDB 管理クライアントの CLUSTERLOG STATISTICS コマンドは、その出力にいくつかの役に立つ統計を表示できます。クラスタの状態に関する情報を提供するカウンタは、トランザクションコーディネータ (TC) およびローカルクエリーハンドラ (LQH) によって 5 秒のレポート間隔で更新され、クラスタログに書き込まれます。

トランザクションコーディネータの統計  各トランザクションには、1 つのトランザクションコーディネータがあり、それは次の方法のいずれかによって選択されます。

  • ラウンドロビン方式で

  • 通信の近さによって

  • (MySQL Cluster NDB 6.3.4 以降:) トランザクションの開始時にデータ配置のヒントを指定することによって

注記

ndb_optimized_node_selection システム変数を使用すると、特定の SQL ノードから起動されたトランザクションに使用される TC の選択方法を判断できます。

同じトランザクション内の操作ではすべて、同じトランザクションコーディネータが使用され、次のような統計がレポートされます。

  • Trans count  これは、この TC をトランザクションコーディネータとして使用して、最後の期間で開始されたトランザクション数です。これらのトランザクションのいずれかは、レポート期間の最後でコミットされた、中止された、または未コミットのままの状態になっている可能性があります。

    注記

    トランザクションは TC 間で移行しません。

  • Commit count  これは、最後のレポート期間でコミットされた、この TC をトランザクションコーディネータとして使用したトランザクション数です。このレポート期間でコミットされた一部のトランザクションは、前のレポート期間で開始された可能性があるため、Commit countTrans count よりも大きくなる可能性もあります。

  • Read count  これは、最後のレポート期間で開始された、この TC をトランザクションコーディネータとして使用した主キーの読み取り操作 (単純な読み取りを含む) 数です。このカウントには、一意のインデックス操作の一部として実行される読み取りも含まれます。一意のインデックス読み取り操作では、2 つの主キー読み取り操作 (非表示の一意のインデックステーブルに対して 1 つ、および読み取りが行われるテーブルに対して 1 つ) が発生します。

  • Simple read count  これは、最後のレポート期間で開始された、この TC をトランザクションコーディネータとして使用した単純な読み取り操作数です。これは Read count のサブセットです。Simple read count の値は Read count とは異なる時点でインクリメントされるため、Read count よりもわずかに遅れる可能性があります。そのため、その時間内に行われたすべての読み取りが実際に単純な読み取りであった場合でも、特定のレポート期間で Simple read countRead count と等しくなくなることがあり得ます。

  • Write count  これは、最後のレポート期間で開始された、この TC をトランザクションコーディネータとして使用した主キーの書き込み操作数です。これには、一意のインデックス操作の一部として実行される書き込みに加えて、すべての挿入、更新、書き込み、および削除も含まれます。

    注記

    一意のインデックスの更新操作では、インデックステーブルおよびベーステーブルで、複数の PK 読み取りおよび書き込み操作が発生する可能性があります。

  • AttrInfoCount  これは、この TC をトランザクションコーディネータとして使用した主キー操作の最後のレポート期間で受信された 32 ビットのデータ語の数です。読み取りの場合、これはリクエストされたカラムの数に比例します。挿入および更新の場合、これは書き込まれたカラムの数、およびそれらのデータのサイズに比例します。削除操作の場合、これは通常ゼロです。

    一意のインデックス操作では、複数の PK 操作が発生するため、このカウントが増加します。ただし、ここでは、PK 操作自体を記述するために送信されたデータ語、および送信されたキー情報はカウントされません。スキャン用に読み取られるカラムを記述するため、または ScanFilters を記述するために送信された属性情報も、AttrInfoCount ではカウントされません。

  • Concurrent Operations  これは、最後のレポート期間中に開始されたが完了しなかった、この TC をトランザクションコーディネータとして使用した主キーまたはスキャン操作数です。このカウンタは、操作が開始されるとインクリメントされ、操作が完了するとデクリメントされます。これは、トランザクションのコミット後に行われます。このカウンタは失敗した操作だけでなく、ダーティー読み取りおよび書き込みでもデクリメントされます。

    Concurrent Operations に指定可能な最大値は、TC ブロックでサポートできる操作の最大数です。現在、これは (2 * MaxNoOfConcurrentOperations) + 16 + MaxNoOfConcurrentTransactions です。(これらの構成パラメータについての詳細は、セクション18.3.2.6「MySQL Cluster データノードの定義」の「トランザクションパラメータ」セクションを参照してください。)

  • Abort count  これは、最後のレポート期間中に中止された、この TC をトランザクションコーディネータとして使用したトランザクション数です。最後のレポート期間で中止された一部のトランザクションは、前のレポート期間で開始された可能性があるため、Abort countTrans count よりも大きくなる可能性もあります。

  • Scans  これは、最後のレポート期間中に開始された、この TC をトランザクションコーディネータとして使用したテーブルスキャン数です。これには、範囲スキャン (つまり、順序付きインデックススキャン) は含まれません。

  • Range scans  これは、最後のレポート期間で開始された、この TC をトランザクションコーディネータとして使用した順序付きインデックススキャン数です。

ローカルクエリーハンドラの統計 (操作)  ローカルクエリーハンドラブロックごとに、1 つのクラスタイベント (つまり、データノードプロセスごとに 1 つずつ) があります。操作は、それらが操作しているデータが存在する LQH に記録されます。

注記

単一のトランザクションが複数の LQH ブロックに格納されたデータを操作する場合もあります。

Operations 統計には、最後のレポート期間で、この LQH ブロックによって実行されたローカル操作数が表示され、すべてのタイプの読み取りおよび書き込み操作 (挿入、更新、書き込み、および削除の操作) が含まれます。これには、書き込みをレプリケートするために使用される操作も含まれます。たとえば、2 つのレプリカクラスタでは、プライマリレプリカへの書き込みがプライマリ LQH に記録され、バックアップへの書き込みがバックアップ LQH に記録されます。一意のキー操作では、複数のローカル操作が発生する可能性があります。ただし、これには、テーブルスキャンまたは順序付きインデックススキャンの結果として発生するローカル操作は含まれず、カウントもされません。

プロセススケジューラの統計  トランザクションコーディネータおよびローカルクエリーハンドラによってレポートされる統計に加えて、各 ndbd プロセスには、MySQL Cluster のパフォーマンスに関する役に立つメトリクスも提供するスケジューラが含まれています。このスケジューラは、無限ループ時に実行されます。各ループ中に、スケジューラは次のタスクを実行します。

  1. ソケットからジョブバッファーに受信メッセージを読み込みます。

  2. 時間指定のメッセージが実行されたかどうかをチェックします。実行された場合は、これらのメッセージもジョブバッファーに配置します。

  3. ジョブバッファー内のメッセージを (ループ内で) 実行します。

  4. ジョブバッファー内のメッセージを実行することで生成された配信されるメッセージを送信します。

  5. 新しい受信メッセージを待機します。

プロセススケジューラの統計には、次の情報が含まれています。

  • Mean Loop Counter  これは、上記のリストの 3 番目のステップで実行されたループの数です。TCP/IP バッファーの使用率が改善されると、この統計のサイズが増加します。これを使用すると、新しいデータノードプロセスを追加したときにパフォーマンスの変化をモニターできます。

  • Mean send size と Mean receive size  これらの統計を使用すると、ノード間の書き込みと読み取りのそれぞれの効率性を測定できます。値はバイト単位で指定されます。値が大きいほど、送受信される 1 バイト当たりのコストが小さくなることを意味します。最大値は 64K です。

NDB 管理クライアントで次のコマンドを使用すると、クラスタログの統計をすべて記録できます。

ndb_mgm> ALL CLUSTERLOG STATISTICS=15
注記

STATISTICS のしきい値を 15 に設定すると、クラスタログが非常に詳細になり、MySQL Cluster 内のクラスタノードの数およびアクティビティーの量に正比例して、サイズが急速に増大します。

ロギングおよびレポートに関する MySQL Cluster 管理クライアントコマンドについての詳細は、セクション18.5.6.1「MySQL Cluster のロギング管理コマンド」を参照してください。