スケーラブルデータベースサーバ HiRDB Version 8 システム導入・設計ガイド(Windows(R)用)
HiRDBのデータベースはリレーショナルデータベースです。その論理構造である表をどのように設計するかを検討します。
まず,表を正規化しておくことが必要です。ただし,同じように正規化した表であっても,ユーザ用RDエリアへの格納の仕方などによって,表に対する処理性能が異なります。また,処理性能よりも操作性を重視する場合もあるため,期待する効果を考慮した表の設計が必要になります。表を設計するときの検討項目を次の表に示します。
表12-1 データベースの表を設計するときの検討項目
設計作業ごとの検討項目 | 長所 | 短所 | 記載箇所 | |
---|---|---|---|---|
表の正規化 | 表の格納効率や処理効率が向上します。 | 表の検索時に,正規化後の表同士の結合検索が必要になる場合は,処理性能が落ちることがあります。 | 12.2 | |
表の横分割 | 表の横分割の指定 |
|
|
12.3 |
キーレンジ分割 |
|
キーレンジを意識しないと,RDエリアに均等に格納できません。 | ||
フレキシブルハッシュ分割※ |
|
|
||
FIXハッシュ分割※ |
|
表にデータが格納されているとユーザ用RDエリアの追加及びハッシュ関数の変更ができません。 | ||
表のマトリクス分割 |
|
通常の横分割に比べ,RDエリアを更に細分化できるため,運用や管理が複雑になります。 | 12.4 | |
トリガの定義 | ある表への操作を契機として,自動的にSQL文を実行するようにできます。 | 特にありません。 | 12.5 | |
ビュー表の作成 |
|
特にありません。 | 12.6 | |
FIX属性の指定 |
|
特にありません。 | 12.7 | |
主キー(プライマリキー)の指定 | 主キーを定義した列には,一意性制約と非ナル値制約が適用されます。 | 特にありません。 | 12.8 | |
クラスタキーの指定 |
|
|
12.9 | |
サプレスオプションの指定 |
|
特にありません。 | 12.10 | |
ノースプリットオプションの指定 | データの格納効率を向上できるため,ディスク所要量を削減できます。 | 特にありません。 | 12.11 | |
バイナリデータ列の指定 | 文書,画像,音声などの可変長データを指定できます。 | 特にありません。 | 12.12 | |
文字集合の指定 | 表の列ごとに異なる文字集合の文字列データを格納できます。これによって,次のことができます。
|
特にありません。 | 12.13 | |
WITHOUT ROLLBACKオプションの指定 | 採番業務で使用する表を定義する場合,表に対する更新処理完了を契機に更新行に対する排他が解除されるため,排他待ちの発生を削減できます。 | 特にありません。 | 12.14 | |
改竄防止機能の指定 | 表データを誤って,又は不当に更新されることを防止できます。 | 改竄防止表があるRDエリアに対して使用できない機能や,SQL,ユティリティ,コマンドの実行に制限があります。 | 12.15 | |
繰返し列を含む表 |
|
特にありません。 | 12.16 | |
抽象データ型を含む表 | 複雑な構造のデータを表に格納して,通常の表データと同様に操作できます。 | 特にありません。 | 12.17 | |
共用表 |
|
共用表を更新する場合,全バックエンドサーバで,更新する共用表があるRDエリアに排他を掛けるので,共用RDエリアのほかの表にアクセスする業務があると,デッドロックが発生することがあります。 | 12.18 | |
参照制約 | 複数の表間のデータの整合性チェック,及びデータ操作を自動化できます。 | 被参照表や参照表を更新する場合,データの整合性をチェックするため,チェックに掛かる処理時間が増加します。 | 12.19 | |
検査制約 | データの追加又は更新時のチェックを自動化できます。 | 検査制約が定義された表を更新する場合,データの整合性をチェックするため,チェックに掛かる処理時間が増加します。 | 12.20 |
All Rights Reserved. Copyright (C) 2006, 2016, Hitachi, Ltd.