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

PolarDB:ディスク容量診断

最終更新日:Jan 23, 2025

ユーザーデータとライトアヘッドロギング (WAL) データは、 PolarDB for PostgreSQLのディスク領域の大部分を占めています。

ユーザーデータが占有するディスク容量の照会

データベースおよびテーブル内のユーザーデータが占めるディスク容量を照会します。

  • データベース

    PostgreSQLクライアントで \lコマンドを実行し、各データベースのデータが占有しているディスク容量を表示します。 この操作を実行するには、システムはディレクトリツリーをトラバースする必要があります。 これは、高いCPUオーバーヘッドおよびI/Oオーバーヘッドを引き起こす。

  • クライアントを使用して、データが大量のディスク容量を占有するデータベースに接続できます。 次に、\dコマンドを実行して、データベース内の各テーブルのデータが占めるディスク容量を表示します。

WALログが占有するディスク容量を照会する

次のSQL文を実行して、WALログが占有しているディスク容量を表示します。

SELECT pg_size_pretty(SUM(size)) FROM pg_ls_waldir();

PolarDB for PostgreSQLは、デフォルトでWALログを占有しているディスク領域を回収します。 メモリ内データがディスクに書き込まれる前にシステムがクラッシュした場合、WALログはメモリ内データの損失を防ぐことができます。 メモリ内データがディスクに書き込まれた後、WALログを占有するディスクスペースが再利用されます。

WALログが大量のディスク領域を占有する場合は、非アクティブなレプリケーションスロットなどの予期しないシナリオでWALログが生成されているかどうかを確認します。

説明

false状態のレプリケーションスロットが存在する場合は、SELECT * FROM pg_replication_slots; ステートメントを実行してさらに確認します。