PostgreSQLは、継続的アーカイブのためのカスタムモジュールを作成するためのインフラストラクチャを提供します(26.3を参照)。 シェルコマンド(すなわちarchive_command)によるアーカイブは非常に簡単ですが、カスタムアーカイブモジュールはしばしば非常に堅牢でパフォーマンスが高いでしょう。
カスタムarchive_libraryが設定されている場合、PostgreSQLは完了したWALファイルをモジュールに送信します。 サーバは、モジュールがファイルが正常にアーカイブされたことを示すまで、これらのWALファイルの再利用や削除を回避します。 各WALファイルをどうするかは最終的にモジュール次第ですが、26.3.1には多くの推奨事項が記載されています。
アーカイブモジュールは、少なくとも初期化関数(51.1を参照)と必要なコールバック(51.2を参照)で構成されている必要があります。 しかし、アーカイブモジュールはさらに多くのこと(GUCの宣言やバックグラウンドワーカーの登録など)も許可されています。
contrib/basic_archive
モジュールには、いくつかの有用なテクニックを示す実用的な例が含まれています。