DBTUNE テーブルとは
最も基本的なレベルでは、dbtune テーブルは参照テーブルです。ユーザがジオデータベースにデータを作成または追加すると、ArcSDE はユーザが指定したコンフィグレーション キーワードを dbtune テーブルで検索します。ArcSDE は、コンフィグレーション キーワードに関連付けられているパラメータとコンフィグレーション文字列を取得し、それらをクライアント アプリケーションからデータベースに送信される CREATE TABLE または CREATE INDEX ステートメントに追加します。これにより、テーブルまたはインデックスがデータベースにどのように格納されるかが決定されます。
例を示します。
pablo という名前のユーザが、ArcCatalog で [新規フィーチャクラス] ウィザードを使用して、新しい mines フィーチャクラスを作成したとします。pablo は、フィーチャクラスの名前(mines)、フィールド名、タイプ、および長さを指定します。また、フィーチャクラスを作成するときに DEFAULTS コンフィグレーション キーワードも指定し、ウィザードを使用してフィーチャクラスのその他のすべての特性を指定します。pablo のジオデータベースは Oracle に格納されているため、ウィザードは CREATE TABLE および CREATE INDEX ステートメントを Oracle に送信します。ArcSDE は、DBTUNE テーブルでキーワードとして DEFAULTS が指定されているすべてのレコードを検索します。そして、DEFAULTS キーワードに関連付けられている各パラメータの config_string 値を、ウィザードからデータベースに送信された CREATE TABLE および CREATE INDEX ステートメントに追加します。たとえば、DEFAULTS キーワードの B_STORAGE パラメータは、ステートメントに次のように追加されます(B_STORAGE パラメータは、フィーチャクラスのビジネス テーブルの格納場所を指定します)。
CREATE TABLE pablo.mines (OBJECTID NUMBER(38), NAME NVARCHAR2(40), STATUS NUMBER(4)...)
IN TABLESPACE gisdata
WHERE PCTFREE = 0 and INITRANS = 4
SQL エディタから SQL を使用して、dbtune の内容を直接変更することは推奨されません。これにより、sdedbtune コマンド ライン ツールに組み込まれている特定の保護が無視され、パフォーマンスを低下させるおそれがあります。
dbtune テーブルは、ジオデータベースの作成時に作成され、デフォルトのキーワード、パラメータ名、コンフィグレーション文字列値が設定されます。テーブルには、次の列が含まれています。
- keyword: コンフィグレーション キーワード
- parameter_name: コンフィグレーション パラメータ
- config_string: コンフィグレーション パラメータに割り当てられた値
Informix の DBTUNE テーブル
Informix データベースでは、DBTUNE テーブルは次の目的で使用されます。
- テーブルとインデックスを特定の dbspace に読み込む
- 排他ロックを設定し、既存のユーザがまだデータベースに接続している間にデータベース圧縮を許可する
- インデックスの FILLFACTOR を指定する
- 使用するキャッシュされるカーソルの最大数を設定する