PREPARATION
受験対策

Silverの例題解説「運用管理 - 基本的な運用管理作業(VACUUM、ANALYZEの目的と使い方)」

「運用管理 - 基本的な運用管理作業(VACUUM、ANALYZEの目的と使い方)」からの出題です。

例題

1.128

ANALYZEについてもっとも適切な説明を3つ選びなさい。

  1. ユーザは、自身が所有するテーブルに対してANALYZEを実行することができる。
  2. ANALYZEを実行することは、SELECTなどのSQLを実行するときの性能(速度)を最適化するために重要である。
  3. ANALYZEは対象テーブルの全データを検証するので非常に負荷が高い。夜間などデータベースアクティビティが少ない時間帯に実行するのが望ましい。

  4. VAVUUMコマンドを実行すると、同じテーブルについてANALYZEも自動的に実行される。

  5. 自動バキュームを実行すると、VACUUMだけでなく、ANALYZEも自動的に実行される。

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

解答と解説

SELECTなどSQLを実行するときの性能向上を図るためにインデックスが作成されますが、インデックスがあっても全件走査を実行する方が高速な場合もありますし、複数あるインデックスのうちどれを使えば高速になるのか単純には決定できない場合もあります。

SQLの実行速度に最も大きな影響を与えるのはディスクアクセスです。複数考えられる実行計画のそれぞれで、どれくらいのディスクアクセスが必要になりそうかを予想するため、各テーブルのデータ件数、テーブル内の列ごとのデータの散らばり具合などを参照します。

このテーブルの状態に関する情報を取得するのがANALYZEです。すべてのテーブルについて一度はANALYZEを実行し、またデータ件数やデータの散らばり具合に大きく影響するような更新があったときは、その度にANALYZEを実行することが望ましいです。

ANALYZEはテーブルのごく一部のデータをサンプリングして統計情報を計算するので、短時間で処理が終わります。 psqlのコマンドラインなどからテーブル名を指定してANALYZEを実行する場合、テーブルの所有者、スーパーユーザーなどがANALYZEを実行することができます。

VACUUMコマンドの実行時にANALYZEをオプションとして指定すると、VACUUMとANALYZEが同時に実行されますが、オプション指定しなければVAVUUMのみが実行されます。

自動バキュームは変更量が一定以上に達したテーブルについて自動的にVACUUMを実行する機能ですが、このときは同時にANALYZEも実行されます。

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

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

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

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

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

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

サンプル問題/例題解説

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

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

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

無料技術解説セミナー

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

OSS-DB道場

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