PREPARATION
受験対策

Silverの例題解説「運用管理 - バックアップ方法(トランザクションログ(WAL)とWALアーカイブ)」

今回は、Silverの「運用管理 - バックアップ方法(トランザクションログ(WAL)とWALアーカイブ)」からの出題です。

例題

1.123

WALアーカイブの説明として最も適切なものを3つ選びなさい。

  1. ポイントインタイムリカバリ(PITR)を使用するには、WALアーカイブを有効にする必要がある。
  2. 複数のWALファイルを1つのファイルにまとめる機能である。
  3. 設定パラメータ archive_command で指定したコマンドが実行される。

  4. コマンドの実行に失敗しても再実行されないことに注意する必要がある。

  5. PostgreSQLはコマンドを実行したかどうかは管理するが、コマンドが実際に何をしているのか、WALアーカイブとして適切な処理をしているかどうかは関知しない。

※この例題は実際のOSS-DB技術者認定試験とは異なります。
例題公開日:2022年3月2日

解答と解説

WALはWrite-Ahead-Logの略で、データベースファイルの更新に先立ち、トランザクションの情報をログファイルに書き出すものです。COMMIT処理は、WALへの書き込みをもってクライアントには完了が通知され、時間がかかるデータベースファイル本体の更新は非同期に実行するようになっています。

データベース更新の情報はすべてWALに書き込まれるので、データベースファイルに障害が発生したような場合でも、ある時点のデータベースのバックアップと、それ以降に生成されたすべてのWALファイルがあれば、データベースを最新の状態に復元することができます。この仕組みを利用するのがポイントインタイムリカバリ(PITR)です。

ただし、WALを放置しておくとサイズがどんどん大きくなって、すぐにディスク容量がなくなってしまいます。これを避けるため、デフォルトでは古いWALファイルをリサイクルして、WALがディスクを圧迫しないようになっていますが、そのためポイントインタイムリカバリなどもデフォルトでは利用できません。すべてのWALファイルを保管するための機能がWALアーカイブです。

WALアーカイブを利用するには、設定パラメータwal_levelをreplica以上、wal_archiveをonにした上で、WALをアーカイブするためのコマンドをarchive_commandに設定します。通常は、データベースが置かれるのとは別のディスクにWALをコピーするコマンド(シェルスクリプトなど)を設定しますが、このコマンドは成功したら0を、失敗したら非ゼロを返すようにする必要があります。PostgreSQLはarchive_commandが成功したかどうかを管理し、失敗した場合には再実行します。アーカイブに成功したら、そのWALはリサイクルされます。

なお、PostgreSQLはarchive_commandが実際に何をしているのかについて関知しません。ファイルをコピーするコマンドが成功を返したかどうかは管理しますが、本当にコピーされたかどうか、そもそもarchive_commandがコピー処理をしているかどうか、などは管理者の設定に任されますので、十分にテストをした上で設定する必要があります。

「アーカイブ」は名詞としては「書庫」、動詞としては「書庫などに保管する」という意味なので、WALアーカイブはその動詞の意味で理解すれば良いのですが、Linuxのarコマンドやtarコマンドなど、複数のファイルを1つのファイル(書庫)にまとめるコマンドでもアーカイブという用語が使われるので、誤解しないように注意してください。

従って正解はA、C、Eです。

 

今回の解説について、理解できないポイントがあればどんどん質問をお寄せ下さい。
採用になった方にはLPI-Japanオリジナルの記念品を贈呈します。

※試験問題に関わるお問い合わせにつきましては、LPI-Japan事務局ではお応えできませんのでご了解ください。

企業の基幹システムや業務システム、AIなどの
新領域での「PostgreSQL」の採用が拡大している中、
昇格・昇給・就職・転職に必ず役立つ認定です

OSS-DBの受験対策について

受験の学習をサポートする情報や対策に役立つ情報をご紹介

サンプル問題/例題解説

例題 のアーカイブを試験ごとにまとめています。OSS-DB技術者認定試験の学習にお役立てください

学習教材・教育機関のご紹介

OSS-DB認定教材や教育機関について詳しくご説明いたします。

無料技術解説セミナー

受験準備をされていらっしゃる方々を対象に、無料技術解説セミナーの日程をお知らせしています。

OSS-DB道場

受験準備をされていらっしゃる方々を対象に、無料技術解説セミナーの日程をお知らせしています。