データベースの運用中は、ストレージに関連する問題をできるだけ早く特定して解決することが重要です。 Database Autonomy Service (DAS) は、ストレージ分析機能を提供します。 この機能を使用して、データベースインスタンスのストレージ使用状況と、データベース内の各テーブルに関するストレージ情報を表示できます。 これにより、ストレージ例外をできるだけ早く特定することができます。 DASでは、テーブルスペースフラグメントをリサイクルして、ディスクスペースの無駄やパフォーマンスの低下を防ぐこともできます。
前提条件
管理するデータベースインスタンスは、次のいずれかのタイプです。
自己管理型 MongoDB データベース
ApsaraDB for MongoDB インスタンス
特定のバージョンのApsaraDB for MongoDBレプリカセットまたはシャードクラスターインスタンスのみがサポートされています。 詳細については、次の表を参照してください。
メジャーバージョン
マイナーバージョン
対応
MongoDB 4.0
3.0.x
非対応
MongoDB 4.2
4.0.0から4.0.22
非対応
4.0.23以降
対応
データベースファイルシステム (DBFS) を使用するMongoDB 4.4
All
非対応
MongoDB 4.4
5.0.0から5.0.6
非対応
5.0.7以降
対応
MongoDB 5.0
All
対応
MongoDB 6.0
All
対応
データベースインスタンスがDASに接続され、正常なアクセス 状態になっています。 詳細については、「データベースインスタンス」をご参照ください。
ストレージ分析ページの情報の表示
にログインします。DASコンソール.
左側のナビゲーションウィンドウで、インスタンスモニター.
表示されるページで、管理するデータベースインスタンスを見つけ、インスタンスIDをクリックします。 インスタンス詳細ページが表示されます。
左側のナビゲーションウィンドウで、ストレージ分析 をクリックします。 表示されるページで、ストレージ概要 または データ容量 タブをクリックします。 [ストレージの概要] タブで、インスタンスのストレージ統計、例外、およびストレージの傾向を表示できます。 [データスペース] タブで、ストレージの使用状況を表示できます。
タブ
セクション
説明
ストレージ概要
ストレージ
例外、過去7日間のスペース使用量の1日の平均増加、残りのストレージスペースが利用可能な日数、使用されたスペースの合計量などの情報を表示できます。
説明アイコンの上にポインタを
移動して、各項目の詳細を表示できます。
例外
データベースインスタンス内のテーブルまたはコレクションに関する例外情報を表示できます。
ストレージトレンド
特定の時間範囲内の使用傾向を表示できます。
説明時間範囲は最大7日間です。
表領域
データベースインスタンスの各テーブルの詳細情報とストレージ使用量を表示できます。 テーブルの名前をクリックすると、テーブルのフィールドとインデックスを表示できます。
データ容量
データベースインスタンス内の各データベースのストレージ使用率とデータベース内のテーブルスペースの使用率を表示できます。
テーブルの名前をクリックすると、テーブルのフィールドとインデックスを表示できます。
tablespaceフラグメントのリサイクル
非表示ノードのテーブルスペース断片のみをリサイクルできます。 プライマリノードまたはセカンダリノードのテーブルスペース断片をリサイクルする場合は、プライマリノードまたはセカンダリノードを隠しノードに切り替えてから、新しい隠しノードのテーブルスペース断片をリサイクルする必要があります。 または、テーブルスペースのフラグメントに対してcompact
コマンドを実行することもできます。 ノードの切り替え方法の詳細については、「プライマリ /セカンダリの切り替え」をご参照ください。 compactコマンドの実行方法の詳細については、「インスタンスのディスクをデフラグメントしてディスク使用率を高める」をご参照ください。
リサイクルプロセス中にキャッシュ削除
エラーが報告された場合は、コンパクト操作中にインスタンスにキャッシュプレッシャーが発生し、早期に終了したことを示します。別の時間にタスクを再スケジュールすることを選択できます。 タスクが複数回失敗した場合は、チケットを起票してください。
にログインします。DASコンソール.
左側のナビゲーションウィンドウで、インスタンスモニター.
表示されるページで、管理するデータベースインスタンスを見つけ、インスタンスIDをクリックします。 インスタンス詳細ページが表示されます。
左側のナビゲーションウィンドウで、ストレージ分析 をクリックします。
表領域 セクションで、管理するテーブルを見つけます。 断片化率 列の [リサイクル] をクリックします。
リサイクル ダイアログボックスで、tablespaceフラグメントのリサイクル計画を作成します。
自動tablespaceフラグメントのリサイクル
インスタンスのテーブルスペースフラグメントを自動的にリサイクルする計画を設定した場合、DASは指定されたメンテナンス期間中に隠しノードのコレクションを自動的に検出し、インデックスとデータストレージの使用量の合計が1 GBを超え、フラグメント化率が20% を超えるコレクションに対して
compact
コマンドを実行します。 リサイクル時間を短縮するために、各ラウンドのリサイクル計画の各隠しノードのコレクション内のリサイクル可能なスペースの合計量は100 GBを超えることはできません。 共通テーブルのリサイクル可能なスペースが100 GBを超える場合は、テーブルのテーブルスペースフラグメントを手動でリサイクルする必要があります。手動テーブルスペース断片リサイクル
[分割率の高いコレクション] セクションで、管理するコレクションを見つけて、[操作] 列の 再利用の実行 をクリックします。 [今すぐ実行] または [O & Mウィンドウで実行] を選択して、テーブルスペースフラグメントをリサイクルできます。
説明リサイクル作業はすぐには完了しません。 実際の状況では、DASはバックエンドで
compact
コマンドを一定期間実行して、表領域の断片を徐々にリサイクルします。 リサイクル期間は、リサイクルされるテーブルスペース断片のサイズに依存します。 より多くのテーブルスペースフラグメントは、より長いリサイクル期間を必要とします。一度に最大10個のコレクションをリサイクルし、現在のリサイクルタスクが完了した後に次のリサイクルタスクを開始することを推奨します。 そうしないと、リサイクルタスクが失敗する可能性があります。
コレクションの断片化率が比較的小さい場合、コレクションは、あまり効果的でない方法でリサイクルされ得る。
リサイクル可能なスペースが比較的小さいコレクションの数が多い場合は、コレクションのテーブルスペースフラグメントを自動的にリサイクルするように計画を設定することをお勧めします。 コレクションのリサイクル可能なスペースが比較的大きい場合は、コレクションのtablespaceフラグメントを手動でリサイクルすることをお勧めします。 コレクションのリサイクル可能なスペースが100 GBを超える場合、コレクションのテーブルスペースフラグメントをリサイクルするのに1時間以上かかる場合があります。 リサイクル時間を適切に調整します。
リサイクル結果を見る
リサイクルタスクが完了したら、再分析 をクリックして結果を表示します。
関連ドキュメント
ストレージ分析機能は、データベースバージョンがMongoDB 4.0以降のMongoDBレプリカセットまたはシャードクラスターデータベースインスタンスでのみサポートされます。 他のMongoDBインスタンスのテーブルスペースフラグメントをリサイクルする方法の詳細については、「インスタンスのディスクをデフラグメントしてディスク使用率を高める」をご参照ください。
関連する API
操作 | 説明 |
データベースとテーブルの使用状況の詳細を照会するストレージ分析タスクを作成します。 | |
ストレージ分析タスクのステータスと結果を照会します。 |