Cloud Bigtable は、Google Cloud Console と Cloud Monitoring で利用可能なグラフを使用することによって視覚的にモニタリングできます。または、Cloud Monitoring を使用してプログラムでモニタリングすることもできます。
Google Cloud Console と Cloud Monitoring を介して利用可能なデータから、Cloud Bigtable の使用状況の概要を把握できます。また、Key Visualizer ツールを使用すると、行キーごとのアクセス パターンを分析し、特定のパフォーマンス問題のトラブルシューティングを行うことができます。詳細については、Key Visualizer スタートガイドをご覧ください。
CPU 使用率とディスク使用量について
インスタンスのモニタリングでどのツールを使用する場合でも、インスタンスの各クラスタの CPU とディスクの使用状況をモニタリングすることが重要です。クラスタの CPU 使用率やディスク使用量が一定のしきい値を超えると、クラスタの性能が低下し、データの読み取りや書き込みを試行するとエラーが発生することがあります。
CPU 使用率
クラスタのノードは CPU リソースを使用して読み取り、書き込み、管理タスクを処理します。ノードの数がクラスタのパフォーマンスに及ぼす影響については、通常のワークロードでのパフォーマンスをご覧ください。
Cloud Bigtable は、CPU 使用率について以下の指標をレポートします。
指標 | 説明 |
---|---|
平均 CPU 使用率 |
クラスタ内にあるすべてのノードの平均 CPU 使用率。 推奨最大値により、使用率が急増した場合のヘッドルームを確保できます。 クラスタが構成の推奨最大値を超過する時間が数分間にわたる場合は、クラスタにノードを追加します。 |
最もホットなノードの CPU 使用率 |
クラスタで最もビジーなノードの CPU 使用率。 最もホットなノードが頻繁に推奨値を超える場合、平均 CPU 使用率が適切な範囲にあっても、ごく一部のデータに他のデータよりも頻繁にアクセスしている可能性があります。
|
こうした指標の値は、以下を超えてはいけません。
構成 | 推奨最大値 |
---|---|
単一クラスタ |
平均 CPU 使用率 70% |
単一クラスタ ルーティングを使用する任意のクラスタ数 |
平均 CPU 使用率 70% |
複数クラスタ ルーティングの 2 つのクラスタ |
平均 CPU 使用率 35% |
複数クラスタ ルーティングを使用する 3 つ以上のクラスタ |
構成によります。一般的な使用例については、レプリケーション設定の例をご覧ください。 |
ディスク使用量
インスタンスのクラスタごとに、Cloud Bigtable はそのインスタンスのすべてのテーブルのコピーを個別に格納します。
Cloud Bigtable はディスク使用量をバイナリ単位でトラッキングします。たとえば、バイナリ ギガバイト(GB)では、1 GB は 230 バイトです。この測定単位はギビバイト(GiB)とも呼ばれます。
Cloud Bigtable は、ディスク使用量について以下の指標をレポートします。
指標 | 説明 |
---|---|
ストレージの利用率(バイト) |
クラスタに格納されているデータの量。 この値は費用に影響します。また、後述のように、データ量の増加に伴い各クラスタにノードを追加することが必要になる場合があります。 |
ストレージの利用率(最大に対するパーセント) |
クラスタのストレージ容量のうち、使用されている容量の割合。この容量はクラスタ内のノード数に基づいています。 一般的に、データを追加する場合は、ストレージ合計でハードリミットの 70% を超過しないでください。大量のデータをインスタンスに追加する予定がない場合は、ハードリミットの 100% まで使用できます。 ストレージ上限の推奨パーセンテージを超えて使用している場合は、クラスタにノードを追加してください。既存のデータを削除することもできますが、コンパクションが発生するまでは、削除されたデータの占有容量が少なくなるどころかむしろ多くなります。 この値の計算方法については、ノードあたりのストレージ使用率をご覧ください。 |
ディスク負荷 |
HDD の読み取りと書き込みに使用できる最大帯域幅のうち、クラスタが使用している容量の割合。HDD クラスタの場合のみ使用可能です。 この値が頻繁に 100% に達する場合、レイテンシが増加することがあります。クラスタにノードを追加して、ディスク負荷の割合を下げます。 |
Cloud Console でパフォーマンスの概要を確認
インスタンスの概要ページを使用して、インスタンスのクラスタの現在のステータスを確認します。
概要ページには、各クラスタに関するいくつかの主要指標の現在値が表示されます。
指標 | 説明 |
---|---|
平均 CPU 使用率 | クラスタ内にあるすべてのノードの平均 CPU 使用率。 |
最もホットなノードの CPU 使用率 |
クラスタで最もビジーなノードの CPU 使用率。 最も使用頻度の高いノードの推奨最大値を超えると、クラスタでレイテンシなどの問題が発生する可能性があります。 |
読み取られた行数 | 1 秒あたりに読み取られた行の数。 |
書き込まれた行数 | 1 秒あたりに書き込まれた行の数。 |
読み取りスループット | 送信されたレスポンス データの 1 秒あたりの非圧縮バイト数。この指標は、フィルタの適用後に返されたデータの全量を表します。 |
書き込みスループット | データの書き込み時に受信した 1 秒あたりの非圧縮バイト数。 |
システムエラー率 | Cloud Bigtable サーバー側で失敗したすべてのリクエストの割合。 |
入力のレプリケーション レイテンシ | 別のクラスタへの書き込みがこのクラスタにレプリケートされるまでの、99 番目のパーセンタイルでの最大時間(秒)。 |
出力のレプリケーション レイテンシ | このクラスタへの書き込みが別のクラスタにレプリケートされるまでの、99 番目のパーセンタイルでの最大時間(秒)。 |
これらの主要指標の概要を表示するには:
Cloud Console で Cloud Bigtable インスタンスのリストを開きます。
指標を表示するインスタンスをクリックします。インスタンスのクラスタに関する現在の指標が Cloud Console に表示されます。
Cloud Console で時間の経過に伴うパフォーマンスをモニタリング
インスタンスのモニタリング ページを使用して、インスタンスの過去のパフォーマンスを確認します。各クラスタのパフォーマンスを分析したり、Cloud Bigtable リソースの種類ごとに指標を細分化したりできます。グラフでは、過去 1 時間から過去 30 日間の期間を表示できます。
Cloud Bigtable リソースのグラフ
モニタリング ページでは、以下のタイプの Cloud Bigtable リソースのグラフが表示されます。
- インスタンス
- テーブル
- アプリケーション プロファイル
グラフは以下の指標について利用できます。
指標 | 対象 | 説明 |
---|---|---|
CPU 使用率 | インスタンス | クラスタ内にあるすべてのノードの平均 CPU 使用率。 |
CPU 使用率(最もホットなノード) | インスタンス |
クラスタで最もビジーなノードの CPU 使用率。 最も使用頻度の高いノードの推奨最大値を超えると、クラスタでレイテンシなどの問題が発生する可能性があります。 |
ユーザーエラー率 | インスタンス |
Cloud Bigtable サーバー側のエラーではなく、リクエストの内容が原因で発生したエラーの割合。ユーザーエラー率には、次のステータス コードが含まれます。
ユーザーエラーの多くは構成上の問題が原因で発生します(たとえば、間違ったクラスタ、テーブル、アプリ プロファイルがリクエストで指定されている場合)。 |
システムエラー率 | インスタンス |
Cloud Bigtable サーバー側で失敗したすべてのリクエストの割合。システムエラー率には、次のステータス コードが含まれます。
|
自動フェイルオーバー |
インスタンス テーブル アプリ プロファイル |
短時間の停止や遅延などのフェイルオーバー シナリオにより、クラスタ間で自動的に再ルーティングされたリクエストの数。アプリ プロファイルがマルチクラスタ ルーティングを使用している場合、自動で再ルーティングされる可能性があります。 このグラフには、手動で再ルーティングされたリクエストは反映されません。 |
ストレージの利用率(バイト) |
インスタンス テーブル |
クラスタに格納されているデータの量。 この指標には、データが格納時に Cloud Bigtable によって圧縮されるという事実が反映されています。 |
ストレージの利用率(最大に対するパーセント) | インスタンス |
クラスタのストレージ容量のうち、使用されている容量の割合。この容量はクラスタ内のノード数に基づいています。 この値の計算方法については、ノードあたりのストレージ使用率をご覧ください。 |
ディスク負荷 | インスタンス | HDD の読み取りと書き込みに使用できる最大帯域幅のうち、クラスタが使用している容量の割合。HDD クラスタの場合のみ使用可能です。 |
読み取られた行数 |
インスタンス テーブル アプリ プロファイル |
1 秒あたりに読み取られた行の数。 1 つのリクエストで多数の行を読み取ることができるため、読み取りリクエストの数よりもこの指標を確認したほうが Cloud Bigtable のスループット全体についてより有益な情報が得られます。 |
書き込まれた行数 |
インスタンス テーブル アプリ プロファイル |
1 秒あたりに書き込まれた行の数。 1 つのリクエストで多数の行を書き込むことができるため、書き込みリクエストの数よりもこの指標を確認した方が Cloud Bigtable のスループット全体についてより有益な情報が得られます。 |
読み取りリクエスト |
インスタンス テーブル アプリ プロファイル |
1 秒あたりのランダム読み取りとスキャン リクエストの数。 |
書き込みリクエスト |
インスタンス テーブル アプリ プロファイル |
1 秒あたりの書き込みリクエストの数。 |
読み取りスループット |
インスタンス テーブル アプリ プロファイル |
送信されたレスポンス データの 1 秒あたりの非圧縮バイト数。この指標は、フィルタの適用後に返されたデータの全量を表します。 |
書き込みスループット |
インスタンス テーブル アプリ プロファイル |
データの書き込み時に受信した 1 秒あたりの非圧縮バイト数。 |
ノード数 | インスタンス | クラスタ内のノード数。 |
これらのリソースの指標を表示するには:
Cloud Console で Cloud Bigtable インスタンスのリストを開きます。
指標を表示するインスタンスをクリックします。
左側のペインで [モニタリング] をクリックします。Cloud Console に、インスタンスに関する一連のグラフと、インスタンスの指標を示す表が表示されます。デフォルトでは、Cloud Console には過去 1 時間の指標が表示されます。また、インスタンスのクラスタごとに異なる指標が表示されます。
すべてのグラフを表示するには、グラフが表示されるペインでスクロールします。
テーブルレベルで指標を表示するには、[テーブル] をクリックします。
個別のアプリ プロファイルの指標を表示するには、[アプリケーション プロファイル] をクリックします。
インスタンス全体の指標をまとめて表示するには、グラフの上にある [グループ条件] セクションで [インスタンス] をクリックします。
より長い期間の指標を表示するには、[1 時間] の横の矢印をクリックします。既定の期間を選択するか、カスタムの期間を入力して [適用] をクリックします。
レプリケーションに関するグラフ
モニタリング ページには、時間の経過に伴うレプリケーション レイテンシを示すグラフが表示されます。50 番目、99 番目、100 番目のパーセンタイルにおける書き込みのレプリケーションの平均レイテンシを表示できます。
時間の経過に伴うレプリケーション レイテンシを表示するには:
Cloud Console で Cloud Bigtable インスタンスのリストを開きます。
指標を表示するインスタンスをクリックします。
左側のペインで [モニタリング] をクリックします。[インスタンス] タブが選択された状態でページが開きます。
[レプリケーション] タブをクリックします。Cloud Console に、時間の経過に伴うレプリケーション レイテンシが表示されます。デフォルトでは、Cloud Console には過去 1 時間のレプリケーション レイテンシが表示されます。
テーブルまたはクラスタ別にグループ化されたレイテンシ グラフ間で切り替えるには、[Group by] メニューを使用します。
表示するパーセンタイルを変更するには、[パーセンタイル] メニューを使用します。
より長い期間の指標を表示するには、[1 時間] の横の矢印をクリックします。既定の期間を選択するか、カスタムの期間を入力して [適用] をクリックします。
Cloud Monitoring を使ったインスタンスのモニタリング
Cloud Bigtable は、Cloud Monitoring を使用してプログラムでモニタリング可能な使用状況の指標をエクスポートします。Cloud Monitoring API または Metrics Explorer を使用して、Cloud Bigtable の使用状況の指標をトラッキングできます。また、使用状況の指標に基づいてアラート ポリシーを設定したり、Cloud Bigtable の使用状況の指標に関するグラフをカスタム ダッシュボードに追加したりできます。
Metrics Explorer で使用状況の指標を確認するには:
Cloud Console で [モニタリング] ページを開きます。
アカウントを選択するよう求められたら、Google Cloud へのアクセスに使用するアカウントを選択します。
[Resources] をクリックし、[Metrics Explorer] をクリックします。
[Find resource type and metric] に「
bigtable
」と入力します。Cloud Bigtable のリソースと指標のリストが表示されます。グラフを表示する指標をクリックします。
Python 用 Matplotlib などのグラフ描画ライブラリを使用して、Cloud Bigtable の使用状況に関する指標のプロットや分析を行うこともできます。詳細については、Cloud Monitoring と Cloud Bigtable での Matplotlib の使用に関するチュートリアルをご覧ください。
Cloud Monitoring の使用方法の詳細については、Cloud Monitoring のドキュメントをご覧ください。
次のステップ
- プログラムによって Cloud Bigtable クラスタをスケールする方法を学習する
- Key Visualizer でトラブルシューティングを行う方法を学習する。
- Cloud Bigtable のパフォーマンスの詳細を学習する
- Java 用 HBase クライアントのクライアント側の指標の詳細を確認する
- Cloud Monitoring クイックスタートを試す
- Cloud Bigtable の指標に基づいてアラートを作成する方法を学習する