物理ストレージの検討事項
論理モデルの作成 への移動
データベースのパフォーマンスを改善して、データ管理タスクを効率化するには、物理設計の段階でテーブルとインデックスのストレージを計画するのが最良の方法です。物理ストレージを計画する際には、テーブルとインデックスの配置およびサイズについて慎重に検討する必要があります。
ほとんどのデータベース アプリケーションは、I/O の速度によってパフォーマンスが決まります。I/O のスループットを向上させるには、頻繁に結合されるテーブルを物理的に分離する必要があります。また、テーブルとインデックスも分離する必要があります。この目的は、データベース上でのデータの読み取りや書き込み処理をできるだけ並列して実行できるようにするためです。
データベース管理者が特に注意しなければならないのは、空き領域の管理とデータの断片化の 2 点です。テーブルとインデックスの容量と増加率に対する計画が不十分な場合、これら 2 つの管理上の問題がシステムの可用性やパフォーマンスに深刻な影響を与えることがあります。そのため、物理モデルの設計では、初期エクステント サイズおよび論理パーティション サイズを検討する必要があります。
はじめに、予測した行数に基づいて各テーブルとそのインデックスのサイズを見積もる必要があります。初期エクステント サイズを指定できるデータベース(Oracle など)では、見積もったサイズに対して初期エクステント サイズを設定して、テーブルの拡大に伴うデータの断片化を回避します。テーブルを 1 つのエクステント内に保持することにより、データ アクセスに要する時間を短縮して、テーブルの再編成を回避できます。
データベース内のテーブルとインデックスの配置およびサイズを決定すると、データベースに必要な合計サイズを見積もることができます。これにより、データベースの空き領域の不足を回避できます。
次のセクションでは、テーブル/インデックス エディタでデータベース プラットフォーム固有のオプションを使用して、テーブルとインデックスの格納およびパーティション化を最適化する方法を説明します。
- テーブル ストレージの定義
- IBM DB2 for LUW 9.x(およびそれ以降のバージョン)を対象としたカラムの分散
- Greenplum を対象としたカラムの分散
- Netezza を対象としたカラムの分散
- カラムに基づくテーブルの編成(Netezza 向け)
- テーブルのパーティション化
- インデックス ストレージの定義
- テーブル インデックスのパーティション化