PREPARATION
受験対策

Goldの例題解説
「G3.2 チューニングの実施」

今回は、Goldの「G3 パフォーマンスチューニング - G3.2 チューニングの実施」からの出題です。

例題

3.16

部分インデックス(Partial Index)に関する以下の記述について、正しいものを全て選択してください。

  1. 部分インデックスを作成すると、必ず Index Only Scan が選択されるようになる。

  2. 部分インデックスは、テーブルの全行を対象に作成される。

  3. 部分インデックスは、検索条件がインデックス定義の WHERE 句と論理的に一致または包含関係にある場合にのみ利用される可能性がある。

  4. データの物理的な配置を分割する目的に部分インデックスを利用することができる。

  5.  一意制約(UNIQUE)と組み合わせることで、「特定条件を満たす行に対してのみ一意性を保証する」ことができる。

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

解答と解説

A. 誤った記述です。
部分インデックスを作成しても、必ず Index Only Scan が選択されるとは限りません。選択されるインデックスは、可視性マップ(Visibility Map)の状態や、必要なカラムがインデックスに含まれているかといった条件によって決定されます。

B. 誤った記述です。
部分インデックスは条件を満たす行に対してのみ作成されるため、特定のキー値に対する検索を効率化できます。例えば、status = 'active' の列にだけインデックスを作成しておけば、SELECT * FROM test WHERE velocity = 5 AND status = 'active'のクエリを効率的に実行しながらも、テーブル全体にインデックスを作成する場合と比較してインデックスのサイズを抑えることができます。

C. 正しい記述です。
プランナは、クエリの WHERE 句の条件がインデックス定義の条件を満たす場合にのみ、部分インデックスを利用します。条件が一致しない場合は利用できません。

D. 誤った記述です。
データの物理的な配置の分割にはパーティショニング機能を利用します。部分インデックスはインデックスの対象行を限定する仕組みであり、データの物理的な配置を変更することはできません。

E. 正しい記述です。
CREATE UNIQUE INDEX ... WHERE 条件 とすれば、条件を満たす行に対してカラムの一意性を保証できます。例えば「アカウント有効フラグが true の行では、登録 email が一意である」といった制約を実現できます。

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

例題および解説は、ボランティアをはじめとした協力者によって作成されたものであり、実際の試験問題とは異なります。

ご質問やご意見、誤記等のご連絡は、こちらまでお願いします。
※実際の試験問題に関するお問い合わせについてはご回答いたしかねます。あからじめご了承ください。

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

OSS-DBの受験対策

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

例題解説

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

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

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

無料技術解説セミナー

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

OSS-DB道場

OSS-DBやPostgreSQLの知識、技術を得るために役立つ情報の紹介やコラムを公開しています。