区分化とは?くぶんか
区分化とは、1つの表を区分キーの値によって複数の格納単位へ分けて保持する物理設計。分け方にはレンジ・ハッシュ・リストと、それらを重ねたコンポジットがある。論理的には1つの表のままなのでSQLは変えずに済み、保守の単位と走査の範囲だけを区分ごとに切り出せる。
最終更新:2026-10-06
データベースSPを最短で暗記・合格する →背景
数億行の受注表では、1か月ぶんを消すだけでも全行走査とログの膨張を招き、再編成のたびに表全体を止めることになる。分割の単位を格納側に持たせておけば、古い区分の切り離しだけで用が足り、検索の走査対象も区分単位に絞れる。DBのシラバスは物理設計で「テーブルの区分化を設計する能力」を挙げており、狙いが性能なのか保守なのかを言い分けられることが問われる。
具体例
Oracle Databaseのレンジパーティションで受注表を受注日の年月ごとに区切ると、保存期間を過ぎた分はDROP PARTITIONで切り離せる。同じ量をDELETEで消すとログが膨らんで長時間かかるが、区分の切り離しならデータ辞書の操作で完了する。
試験での引っ掛け
効くのは検索条件に区分キーが入るときだけで、そのとき不要な区分を読み飛ばせる(パーティションプルーニング)。区分キーを含まない条件では全区分を走査するため、分割しない場合より遅くなることさえある。効果を決めるのは分割したかどうかではなく区分キーの選び方。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。