GT.M データベース設定

はじめに

このセクションでは、 グローバルディレクトリエディタ(GDE)M ペリフェラル インターチェンジ プログラム(MUPIP) を使って、データを実際に格納するデータベースを作成します。

重要:インストールして直ぐに、GT.Mを動作させないでください。 このインストールのセクション終了後は、直ちに、次の、GT.Mの設定とGT.M データベース設定のセクション(環境設定、DB作成)を行ってください。

GT.Mの実行は、GT.Mのテストのセクションで行ってください。

グローバル ディレクトリ

GT.Mではルーチンはグローバル変数から独立しています。 グローバル変数がデータベースファイルに属している一方で、ルーチンはOSのファイルシステムに属します。 グローバルは、変数の名前、領域、セグメント、ファイルで構成されます。

  1. Mグローバル変数の名前のセット(Names または Name space)は、Mグローバルに関連するプロパティを定義する領域(Regions)にマップします。
  2. 各領域(Regions)は、ファイルシステムに関連するプロパティを定義する セグメント(Segments)にマップします。
  3. これらのプロパティとのマッピングのルールは、”グローバルディレクトリ” と呼ばれるバイナリファイルに格納されます。
  4. グローバルディレクトリを定義するファイルは .gldの拡張子を持ちます。

グローバルディレクトリの場所はGT.Mの特殊変数 $ZGbldir によって示されています。 $ZGblgdir は、環境変数 gtmgbldir からプロセスの起動時に初期値を取得します。実行時に変更することも可能です。 例えば、Set $ZGBldir コマンドで、プロセス中に開発DBとテストDBのデータベースの間を行ったり来たり切り替えることができます。

GDEの詳細は、GT.M管理および操作ガイドのGDEのセクションを参照。

サンプル:Names, Regions, Segments, Files の関係図

_images/041014-2GlobalDirectory.gif

グローバルディレクトリ作成方針

このインストールガイドでは、temp.dat, mega.dat, mumps.dat の3つのグローバルファイルを作成します。

グローバルファイル設計の概要
セグメント レコードサイズ Names ジャーナル グローバルの用途
DEFAULT 8K * ON デフォルト
TEMP 32K ^tmp*,^TMP*,^temp*,^TEMP* OFF テンポラリ
MEGA 1M ^MEGA*,^mega* OFF 1MBのグローバル実験


グローバルディレクトリ db.gld 設定表
グローバル TEMP MEGA DEFAULT
Names ^tmp*,^TMP*,^temp*,^TEMP* ^MEGA*,^mega* *
Regions TEMP MEGA DEFAULT
Segments TEMP MEGA DEFAULT
Files temp.dat mega.dat mumps.dat
Journal - - default.mjl

GDEコマンドファイルの作成

GDEコマンドファイルは、実行するGDEコマンドの複数の行をテキストファイルに記述します。 テキストファイルに保存されたGDEコマンドをバッチで一度に実行するには@コマンドを使用します。 GDEはターミナルで入力された場合と同様に、コマンドファイルのそれぞれの行を実行します。

GDEコマンドファイルの詳細は、GT.M管理および操作ガイドのGDEの@セクションを参照。 下記のテキストファイルを、GTM-GDE.gde ファイルに保存します。

!
!**** SEGMENT section ****
!==DEFAULT   SEG Change==
change -segment DEFAULT -ACCESS_METHOD=BG -block_size=4096 -allocation=24000000 -extension_count=10000 -lock_space=1000 -global_buffer_count=4096 -file_name=$DBINST/g/mumps.dat
!==TEMP   SEG add==
add -segment TEMP -access_method=BG -block_size=4096 -allocation=1500000 -extension_count=10000 -lock_space=100 -global_buffer_count=4096 -file_name=$DBINST/g/temp.dat
!==MEGA   SEG temPlate==
add -segment MEGA -access_method=BG -block_size=4096 -allocation=150000 -extension_count=10000 -lock_space=100 -global_buffer_count=4096 -file_name=$DBINST/g/mega.dat
!
!
!@@DEFAULT   REG ChanGe@@
change -region DEFAULT -record_size=8192 -key_size=1019 -journal=(before,file="$DBINST/j/default.mjl") -dyn=DEFAULT
!@@TEMP   REG add@@
add -region TEMP -record_size=32768 -key_size=1019 -dyn=TEMP -nojournal
!@@MEGA   REG add@@
add -region MEGA -record_size=1048576 -key_size=1019 -dyn=MEGA -nojournal
!
!<< Name MAP >>
!
add -name tmp*    -region=TEMP
add -name TMP*    -region=TEMP
add -name temp*   -region=TEMP
add -name TEMP*   -region=TEMP
add -name z*      -region=TEMP
add -name Z*      -region=TEMP
add -name MEGA*   -region=MEGA
add -name mega*   -region=MEGA

GDE実行

次のコマンドで、GT.Mグローバルディレクトリエディタ Global Directory Editor (GDE)を実行します。

$gtm_dist/mumps -r GDE

%GDE-I-GDUSEDEFS, Using defaults for Global Directory
        /home/mta/g/db.gld
GDE>

GDEのプロンプトが表示されます。 上記で作成したGDEコマンドファイル GTM-GDE.gde を。@コマンドで実行します。

GDE> @GTM-GDE.gde

GDEの定義を、showコマンドで確認します。

GDE> show

定義を保存し、終了し、OSのシェルに戻ります。

GDE> exit

%GDE-I-VERIFY, Verification OK

%GDE-I-GDCREATE, Creating Global Directory file
        /home/mta/g/db.gld

$

MUPIPでDBを作成

データベースを作成する mupip コマンドを呼び出します。 mupip create で、グローバルDATを作成します。

$gtm_dist/mupip create

Created file /home/mta/g/mumps.dat
Created file /home/mta/g/mega.dat
Created file /home/mta/g/temp.dat

$

デフォルトで使用されるデータベースが何であるかを単に定義しているので、mupip create の引数が必要ないことに注意してください。

ジャーナリング設定

GDEで設定した、DEFAULTのジェーナリングをONにします。 GT.M管理および操作ガイド GT.M ジャーナリング MUPIP SET を参照

$gtm_dist/mupip set -journal=before -region DEFAULT

%GTM-I-JNLCREATE, Journal file /home/mta/j/default.mjl created for region DEFAULT with BEFORE_IMAGES
%GTM-I-JNLSTATE, Journaling state for region DEFAULT is now ON

ジャーナルをOFFにするには、

$gtm_dist/mupip set -journal=OFF -region DEFAULT

%GTM-I-JNLSTATE, Journaling state for region DEFAULT is now OFF

ジャーナル中のジャーナルファイルのステータスを見るには、mupip journal コマンドで行います。 GT.M管理および操作ガイド GT.M ジャーナリング MUPIP JOURNAL を参照

$gtm_dist/mupip journal -show=all /home/mta/j/default.mjl

%GTM-I-MUJNLSTAT, Initial processing started at Thu Sep 26 16:06:43 2013
%GTM-I-MUJNLSTAT, Backward processing started at Thu Sep 26 16:06:43 2013
%GTM-I-MUJNLSTAT, Forward processing started at Thu Sep 26 16:06:43 2013

%GTM-S-JNLSUCCESS, Show successful
%GTM-S-JNLSUCCESS, Verify successful
%GTM-I-MUJNLSTAT, End processing at Thu Sep 26 16:06:43 2013
inserted by FC2 system