このトピックでは、CloudDBA のストレージ分析機能を使用して、ApsaraDB for MongoDB インスタンスのストレージ概要を表示する方法について説明します。ストレージ分析機能は、インスタンスのストレージ使用量の概要を示します。また、インスタンス上の各オブジェクトが占有しているストレージに関する情報を提供し、ディスクの最適化を可能にします。ストレージ分析結果を使用して、ストレージの例外を特定し、トラブルシューティングを行うことができます。これにより、インスタンスの安定したパフォーマンスが保証されます。
前提条件
ストレージ分析機能は、レプリカセットインスタンスまたはシャードクラスターインスタンスでサポートされています。次の表は、レプリカセットインスタンスまたはシャードクラスターインスタンスの MongoDB バージョンが、この機能をサポートしているかどうかを示しています。
メジャーエンジンバージョン | マイナーエンジンバージョン | ストレージ分析のサポート |
MongoDB 4.0 | 3.0.x | いいえ |
MongoDB 4.2 | 4.0.0-4.0.22 | いいえ |
>= 4.0.23 | はい | |
MongoDB 4.4 | 5.0.0-5.0.6 | いいえ |
>= 5.0.7 | はい | |
MongoDB 5.0 | クラウドコンピュータのスペックアップまたはスペックダウン | はい |
MongoDB 6.0 | クラウドコンピュータのスペックアップまたはスペックダウン | はい |
MongoDB 7.0 | クラウドコンピュータのスペックアップまたはスペックダウン | はい |
使用上の注意
Resource Access Management ( RAM ) ユーザーとして CloudDBA のストレージ分析機能を使用する場合は、RAM ユーザーに Database Autonomy Service ( DAS ) に対する AliyunHDMFullAccess または AliyunHDMReadOnlyAccess 権限が付与されていることを確認してください。詳細については、「RAM ユーザーとして DAS を使用するにはどうすればよいですか?」をご参照ください。
ストレージ概要の表示
ApsaraDB for MongoDB コンソールにログインします。
左側のナビゲーションウィンドウで、[レプリカセットインスタンス] または [シャードクラスターインスタンス] をクリックします。
ページの左上隅で、インスタンスが属するリソースグループとリージョンを選択します。
インスタンスの ID をクリックするか、管理 列の 操作 をクリックします。
インスタンスの詳細ページの左側のナビゲーションウィンドウで、 を選択します。
ストレージ分析結果を表示します。
名前空間のストレージ概要を表示する
[ストレージ概要] タブをクリックして、次の情報を表示します。
[ストレージ] セクションで、ストレージの概要を表示します。
指標
説明
[例外]
インスタンスで特定されたストレージ例外の数。ApsaraDB for MongoDB は、次のタイプの例外を特定できます。
ストレージの 90 % 以上が使用されている。
使用可能な物理ストレージが 7 日以内に使い果たされる可能性がある。
1 つのコレクションに 10 個を超えるインデックスが含まれている。
[過去 1 週間の 1 日あたりの平均増加量]
過去 7 日間のインスタンスにおけるストレージ使用量の 1 日あたりの平均増加量。
計算式:(収集時の使用可能ストレージサイズ - 7 日前の使用可能ストレージサイズ)/ 7
説明この増加量は、収集時の過去 7 日間の 1 日あたりの平均増加量を示します。
このパラメーターは、トラフィック量が安定しているシナリオに適しています。一括インポート、既存データの削除、インスタンスの移行、インスタンスの再構築などの操作によりストレージが急激に変化した場合、このパラメーターの値は不正確になります。
[使用可能なストレージ日数]
インスタンスでストレージが使用可能な日数。
計算式:使用可能なストレージサイズ / 過去 7 日間の 1 日あたりの平均増加量
説明値 90+ は、インスタンスの使用可能なストレージが長期間にわたって十分であることを示します。
このパラメーターは、トラフィック量が安定しているシナリオに適しています。一括インポート、既存データの削除、インスタンスの移行、インスタンスの再構築などの操作によりストレージが急激に変化した場合、このパラメーターの値は不正確になります。
[使用済みストレージ]
インスタンスによって使用されているストレージ容量と合計ストレージ容量。
[例外] セクションで、ストレージ例外の情報を表示します。情報に基づいて例外のトラブルシューティングを行うことができます。
[ストレージトレンド] セクションで、過去 1 週間のデータトレンドを表示します。
[テーブルスペース] セクションで、コレクションのデータを表示します。
説明コレクションの名前をクリックすると、そのインデックスを表示できます。
データ空間のストレージ概要を表示する
[データ空間] タブをクリックして、次の情報を表示します。
データ空間の名前をクリックすると、その名前空間情報を表示できます。
コレクションの名前をクリックすると、そのインデックスを表示できます。
ディスクの最適化
非表示ノードのディスクのみを最適化できます。プライマリノードまたはセカンダリノードのディスクを最適化する場合は、プライマリノードまたはセカンダリノードを非表示ノードに切り替えてから、非表示ノードのディスクを最適化できます。また、「インスタンスのディスクを最適化してディスク使用率を向上させる」で説明されている compact コマンドを実行することもできます。プライマリ/セカンダリのスイッチオーバーの実行方法の詳細については、「プライマリ/セカンダリのフェールオーバー」をご参照ください。
ApsaraDB for MongoDB コンソールにログインします。
左側のナビゲーションウィンドウで、[レプリカセットインスタンス] または [シャードクラスターインスタンス] をクリックします。
ページの左上隅で、インスタンスが属するリソースグループとリージョンを選択します。
インスタンスの ID をクリックするか、管理 列の 操作 をクリックします。
インスタンスの詳細ページの左側のナビゲーションウィンドウで、 を選択します。
表示されるページの 表領域 セクションで、管理するコレクションを見つけます。次に、断片化率 列の [リサイクル] をクリックします。
リサイクル ダイアログボックスで、関連する設定を行います。
自動最適化
インスタンスのディスクを自動的に最適化するプランを設定すると、DAS は指定された メンテナンス ウィンドウ
compact中に非表示ノードのコレクションを自動的に検出し、インデックスとデータストレージ使用量の合計が 1 GB を超え、断片化率が 20 % を超えるコレクションに対して コマンドを実行します。最適化時間を短縮するために、最適化プランの各ラウンドにおける各非表示ノードのコレクションのリサイクル可能スペースの合計量は 100 GB を超えることはできません。共通コレクションのリサイクル可能スペースのサイズが 100 GB を超える場合は、コレクションのディスクを手動で最適化する必要があります。手動最適化
「コレクションの断片化率が高い」セクションで、管理するコレクションを見つけ、アクション 列の 再利用の実行 をクリックします。 [今すぐ実行] または [O & M ウィンドウで実行] を選択することで、ディスクのデフラグを実行できます。
説明操作が完了した後、ディスクはすぐに最適化されません。数分お待ちください。実際には、
compactコマンドはバックグラウンドで引き続き実行され、徐々にディスクが最適化されます。最適化時間は、最適化するストレージのサイズによって異なります。ストレージが大きいほど、最適化時間は長くなります。最大 10 個のコレクションのディスクを同時に最適化し、現在の最適化タスクが完了するまで待ってから、次のタスクを開始することをお勧めします。現在のタスクが完了する前に次のタスクを開始すると、最適化タスクが失敗する可能性があります。
コレクションの断片化率が比較的低い場合、コレクションの最適化プロセスでは、大きなサイズのストレージがリサイクルされない場合があります。断片化率
リサイクル可能スペースが比較的小さいコレクションの数が多い場合は、コレクションのディスクを自動的に最適化するプランを設定することをお勧めします。コレクションのリサイクル可能スペースが比較的大きい場合は、コレクションのディスクを手動で最適化することをお勧めします。再生可能なスペース再生可能なスペース コレクションの 再生可能なスペース 値が 100 GB を超える場合、コレクションのディスクの最適化に必要な時間は 1 時間を超える場合があります。
最適化結果の表示
最適化タスクが完了したら、再分析 をクリックして結果を表示します。
最適化の効果は、データ分布の影響を受けます。効果が不十分な場合は、最適化タスクを再実行できます。
FAQ
(Interrupted) Compaction interrupted on table:*** due to cache eviction pressure というエラーメッセージが表示された場合はどうすればよいですか?
ディスクを最適化するインスタンスのバージョンが古く、仕様が低いことが原因です。インスタンスで compact コマンドを実行すると、キャッシュデータが多いため、インスタンスは失敗します。最適化タスクが失敗した場合は、タスクを再起動する時間を選択できます。タスクが複数回失敗する場合は、チケットを送信 してください。
関連情報
ストレージ分析機能は、MongoDB 4.0 以降を実行する ApsaraDB for MongoDB レプリカセットインスタンスまたはシャードクラスターインスタンスでのみサポートされています。MongoDB 4.0 より前の MongoDB バージョンを実行する ApsaraDB for MongoDB インスタンスのディスクを最適化する方法の詳細については、「インスタンスのディスクを最適化してディスク使用率を向上させる」をご参照ください。
関連タスク
CloudDBA のストレージ分析機能は、最大 20,000 個のコレクションを分析できます。ストレージ分析結果が表示されない場合は、コレクションの数が 20,000 を超えているか、アカウントに指定されたコレクションに対する権限が付与されているかを確認してください。アカウントに権限が付与されていない場合は、次のいずれかの方法を使用して、指定されたコレクションに対する権限をアカウントに付与できます。再認証するには、次のいずれかの方法を選択します。
既存のアカウントに権限を付与する
インスタンスストレージ分析ページの上部にある [再認証] をクリックします。
[データベースアカウント] フィールドと [パスワード] フィールドに、アカウントのユーザー名とパスワードを入力します。
[OK] をクリックします。
コマンドを実行して現在のアカウントに権限を付与する
インスタンスストレージ分析ページの上部にある [再認証] をクリックします。
[データベースアカウント] フィールドと [パスワード] フィールドに、アカウントのユーザー名とパスワードを入力します。
[認証コマンドの生成] をクリックします。
[OK] をクリックします。
関連 API 操作
操作 | 説明 |
1 つ以上のデータベースとコレクションの使用状況の詳細をクエリするためのストレージ分析タスクを作成します。 | |
ストレージ分析タスクのステータスと結果をクエリします。 |