スケーラブルデータベースサーバ HiRDB Version 8 システム導入・設計ガイド(Windows(R)用)

[目次][索引][前へ][次へ]

変更内容

変更内容(3020-6-352-43) HiRDB Version 8 08-05,08-51

追加・変更内容 変更個所
リリースノートのマニュアル訂正を反映しました。

単なる誤字・脱字などはお断りなく訂正しました。


変更内容(3020-6-352-42) HiRDB Version 8 08-05,08-51

追加・変更内容
(2) HiRDBが作成するディレクトリ及びファイル
表1-4 HiRDBが作成するディレクトリ及びファイル構成
[追加]
%PDDIR%\spool\tmp│作業用一時ファイル格納ディレクトリ
(4) トラブルシュート情報
[訂正前]
%PDDIR%\spool\shmdump\*
[訂正後]
%PDDIR%\spool\pdshmdump\*
(6) 運用コマンド作業用一時ファイル
[追加]
[図データ]
(2) 簡易セットアップツールを実行するマシン環境
表3-1 簡易セットアップツールを実行するマシンの前提OSと,Windows版HiRDBのセットアップ可否
[追加]
プラットフォーム:Windows
Windows 7 Professional  │○
Windows 7 Ultimate,又はWindows 7 Enterprise  │○
プラットフォーム:Windows (x64)
Windows 7 Professional  │○
Windows 7 Ultimate,又はWindows 7 Enterprise  │○
(3) Windowsの設定について
[追加]
Windowsのフォントサイズが規定のサイズ(96dpi)であることを確認してください。
表6-2 順序番号の取得方式ごとの特徴
  • 「バッファ単位取得方式」欄
[訂正前]
発生しません。
[訂正後]
発生しません。※2
  • 「検討項目」欄
[訂正前]
順序数生成子への採番要求時の通信オーバヘッド
[訂正後]
順序数生成子への採番要求時の通信オーバヘッド※1
表6-2の下の注意書き
[訂正前]
注※
HiRDB/パラレルサーバの場合,(中略)通信が発生します。
[訂正後]
注※1
HiRDB/パラレルサーバの場合,(中略)通信が発生します。
注※2
順序番号の格納方式が列データ全置換以外の場合は,欠番が発生する可能性があります。
(4) インデクスの使用条件
表6-4 XML型全文検索用インデクスの使用条件
「XQuery中の演算子又は関数」
[訂正前]
fn:contains
fn:starts-wtih
fn:ends-with
=
[訂正後]
=
fn:contains
fn:starts-wtih
fn:ends-with
「XML型全文検索用インデクスの使用条件」
[訂正前]
(d)1,2,4,5,6,7
[訂正後]
(d)1,2,4,5,6,7,8
(4) インデクスの使用条件
[追加]
部分構造インデクス,及びXML全文検索用インデクスの両方が使用可能なXQuery中の演算子,又は関数を使用して検索する場合,使用されるインデクスは演算子,又は関数によって決まります。異なるインデクスを使用したい場合は,マニュアル「HiRDB Version 8 SQLリファレンス」の「使用インデクスのSQL最適化指定」で使用するインデクスを指定することができます。
表6-5 複数のインデクスが使用可能な演算子又は関数の場合に使用されるインデクス
[図データ]
(4) インデクスの使用条件
(b) 部分構造インデクスの使用条件
[訂正前]
なお,1.,2.,4.〜10.では,次のように定義したインデクスを例文中で使用します。
 create index idx1 on t1(c1) key using unique tag from '/root/elm1/@attr1' as varchar(10)
3.では,次のように定義したインデクスを例文中で使用します。
 create index idx2 on t1(c1) key from '/root/elm1/@attr1' as varchar(10)
[訂正後]
なお,1.,2.,4.〜9.では,次のように定義したインデクスを例文中で使用します。
 create index idx1 on t1(c1) key using unique tag from '/root/elm1/@attr1' as varchar(10)
 create index idx4 on t1(c1) key using unique tag from '/root/elm1/elm2
' as varchar(10)
3.,10.では,次のように定義したインデクスを例文中で使用します。
 create index idx2 on t1(c1) key from '/root/elm1/@attr1' as varchar(10)
 create index idx5 on t1(c1) key from '/root/elm1/elm2' as varchar(10)
(4) インデクスの使用条件
(b) 部分構造インデクスの使用条件 9.
[訂正前]
修飾名:: = 〔接頭辞:〕局所名
 
(例)
select c2 from t1 
  where xmlexists('/root/child::elm1[@attr1 eq "ABC"]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
[訂正後]
修飾名:: = 〔接頭辞:〕局所名
 
以下,(例1)〜(例3)は値比較,又は汎用比較を使用した例です。下記の例で,値比較eqに他の値比較又は汎用比較を指定した場合も,インデクスが使用されます。
USING UNIQUE TAGの指定有無に関連するインデクスの使用有無は2.と3.を参照してください。
(例1)ステップ式に@,又はattribute::と,修飾名を指定した場合(@とattribute::は同義)
select c2 from t1 
  where xmlexists('/root/child::elm1[@attr1 eq "ABC"]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(例2)ステップ式にchild::を指定,又はchild::を省略し,修飾名を指定した場合
select c2 from t1
  where xmlexists('/root/child::elm1[child::elm2 eq "ABC"]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(例3)ステップ式に文脈項目式を指定した場合(値比較は2.に該当する場合だけ)
select c2 from t1
  where xmlexists('/root/child::elm1/elm2[ . eq "ABC"]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
以下,(例4)〜(例6)はXQuery関数を使用した例です。下記の例で,fn:starts-withに他のXQuery関数を指定した場合も,インデクスが使用されます。
(例4)ステップ式に@,又はattribute::と,修飾名を指定した場合(@とattribute::は同義)
select c2 from t1
  where xmlexists('/root/elm1[fn:starts-with(@attr1 ,"ABC")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(例5)ステップ式にchild::を指定,又はchild::を省略し,修飾名を指定した場合
select c2 from t1
  where xmlexists('/root/elm1[fn:starts-with(elm2 ,"ABC")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(例6)ステップ式に文脈項目式を指定した場合
select c2 from t1
  where xmlexists('/root/elm1/@attr1[fn:starts-with( . ,"ABC")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(4) インデクスの使用条件
(b) 部分構造インデクスの使用条件 10.
[訂正前]
修飾名:: = 〔接頭辞:〕局所名
 
(例)
select c2 from t1 
  where xmlexists('/root/elm1[starts-with(@attr1 ,"ABC")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
[訂正後]
修飾名:: = 〔接頭辞:〕局所名
 
下記の例で,fn:starts-withに他のXQuery関数を指定した場合も,インデクスを使用します。
(例1)ステップ式終端に@,又はattribute::と,修飾名を指定した場合(@とattribute::は同義)
select c2 from t1 
  where xmlexists('/root/elm1[fn:starts-with(@attr1 ,"ABC")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(例2)ステップ式終端に文脈項目式を指定した場合
select c2 from t1
  where xmlexists('/root/elm1/@attr1[fn:starts-with( . ,"ABC")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(4) インデクスの使用条件
(d) XML型全文検索用インデクスの使用条件 2.
[訂正前]
注※ HiRDB XML Extensionのバージョンが08-04以降の場合に指定できます。
(例)
select c2 from t2
  where xmlexists('/root/child::elm1[fn:contains(@attr1,"ABC")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
[訂正後]
下記の例で,fn:containsに他のXQuery関数を指定した場合も,インデクスを使用します。
(例1)第一引数に@,又はattribute::と,名前テストを指定した場合(@とattribute::は同義)
select c2 from t2
  where xmlexists('/root/child::elm1[fn:contains(@attr1,"ABC")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(例2)第一引数に@,又はattribute::と,属性テストを指定した場合(@とattribute::は同義)
select c2 from t2
  where xmlexists('/root/child::elm1[fn:contains(@attribute(),"ABC")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(例3)第一引数に属性テストのみを指定した場合
select c2 from t2
  where xmlexists('/root/child::elm1[fn:contains(attribute(),"ABC")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(例4)第一引数に文脈項目式を指定した場合
select c2 from t2
  where xmlexists('/root/child::elm1/text()[fn:contains( . ,"ABC")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(4) インデクスの使用条件
(d) XML型全文検索用インデクスの使用条件 3.
[訂正前]
(例)
select c2 from t2
  where xmlexists('/root/elm1[hi-fn:contains(text(),"""ABC AND DEF""")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
[訂正後]
(例1)第一引数にテキストを指定した場合
select c2 from t2
  where xmlexists('/root/elm1[hi-fn:contains(text(),"""ABC AND DEF""")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
select c2 from t2
  where xmlexists('/root/elm1[hi-fn:contains(descendant::text(),"""ABC AND DEF""")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(例2)第一引数にテキストテストおよび文脈項目式を指定した場合
select c2 from t2
  where xmlexists('/root/elm1[hi-fn:contains(text()/.,"""ABC AND DEF""")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
select c2 from t2
  where xmlexists('/root/elm1[hi-fn:contains(descendant::text()/.,"""ABC AND DEF""")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(例3)第一引数に文脈項目式を指定した場合
select c2 from t2
  where xmlexists('/root/elm1/text()[hi-fn:contains( . ,"""ABC AND DEF""")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
select c2 from t2
  where xmlexists('/root/elm1/ descendant::text()[hi-fn:contains( . ,"
""ABC AND DEF""")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(例4)第一引数に@又はattribute::と,名前テストを指定した場合(@とattribute::は同義)
select c2 from t2
  where xmlexists('/root/elm1[hi-fn:contains(@attr1,"""ABC AND DEF"
"")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(例5)第一引数に@,又はattribute::と,属性テストを指定した場合(@とattribute::は同義)
select c2 from t2
  where xmlexists('/root/elm1[hi-fn:contains(@attribute(),"""ABC AND DEF""")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(例6)第一引数に属性テストのみを指定した場合
select c2 from t2
  where xmlexists('/root/elm1[hi-fn:contains(attribute(),"""ABC AND DEF")]'
        passing by value c1)
注 アンダーライン部分が上記の形式と一致する部分構造パスです。
(4) インデクスの使用条件
(d) XML型全文検索用インデクスの使用条件
[追加]
8. 検索対象のXML型の列に定義した全文検索インデクスに,以下のどのプラグインオプションも指定していない。
プラグインオプションの詳細は,マニュアル「HiRDB XML拡張機能 HiRDB XML Extension Version 8」の「2.5.4 インデクスの定義」を参照してください。
  • DELcode=ファイル名
  • NOindex=ファイル名
  • ENGLISH
  • ENGLISH_STANDARD
(例)
create index idx6 using type ixxml on t2(c1) in (LOB1) PLUGIN'SAMECASE=
ON,SAMEWIDE=ON,SAMEY=ON,SAMED=ON,DELcode=ON'
(アンダーラインがインデクスを使用可能なオプションだけを指定した全文検索インデクス)
(4) インデクスの使用条件
(e) インデクスを使用しない場合
[訂正前]
次に示す場合は,部分構造インデクス又はXML型全文検索用インデクスを使用しません。
[訂正後]
次に示す1.〜4.の場合は,部分構造インデクス又はXML型全文検索用インデクスを使用しません。
なお,1.,3.では,次のように定義したインデクスを例文中で使用します。
create index idx1 on t1(c1) key using unique tag from '/root/elm1/@attr1' as archar(10)
2.,4.では次のように定義したインデクスを例文中で使用します。
create index idx3 using type ixxml on t2(c1) in (LOB1)
(4) インデクスの使用条件
(e) インデクスを使用しない場合
[追加]
4. 論理演算子(OR,AND)でXMLEXISTS述語を多数連結した場合
HiRDBが見積もるアクセスコストにより,インデクスを使用しない方が最適なアクセスパスとなると判断し,XMLEXISTS述語の評価にインデクスを使用しません。hi-fn:contains関数を指定した場合はインデクスだけで評価できないため,SQLエラーとなります。
(例:変更前)
select c2 from t2
  where xmlexists('/root/elm1[hi-fn:contains(text(),"""01ABC""")]' passing by value c1)
     or xmlexists('/root/elm1[hi-fn:contains(text(),"""02ABC""")]' passing by value c1)
        ・・・(省略)・・・
     or xmlexists('/root/elm1[hi-fn:contains(text(),"""30ABC""")]' passing by value c1)
注 アンダーライン部分が,単独の指定ではインデクスを使用するXMLEXISTS述語を30個指定した条件です。
次のように変更すると,インデクスを使用するようになります。
(例:変更後)
select c2 from t2 with index(idx3,idx3)
where xmlexists('/root/elm1[hi-fn:contains(text(),"""01ABC""")]' passing by value c1)
or xmlexists('/root/elm1[hi-fn:contains(text(),"""02ABC""")]' passing by value c1)
        ・・・(省略)・・・
or xmlexists('/root/elm1[hi-fn:contains(text(),"""30ABC""")]' passing by value c1)
注 アンダーライン部分が,複数インデク利用の実行に必要な種類のインデクスを指定したインデクスのSQL最適化指定です。
(1) トランザクションマネジャがOpenTP1の場合
[削除]
ただし,次の表で示す条件によっては,OpenTP1でトランザクションの移行を使用する設定をしても(コミット最適化及びプリペア最適化を抑止しない設定をしても),HiRDBではトランザクションの移行を使用しない設定ができます。
(1) トランザクションマネジャがOpenTP1の場合
表7-2 OpenTP1のtrnstringオペランドとHiRDBのPDXAMODEオペランドの関係
[訂正前]
[図データ]
[訂正後]
[図データ]
(1) トランザクションマネジャがOpenTP1の場合
[削除]
また,OpenTP1とHiRDBを接続したシステムでトランザクションの移行を使用するかどうかは,次に示す適用基準で判断してください。
適用基準
クライアントUAP及びサーバUAPが次に示す条件をすべて満たす場合は,トランザクションの移行を使用してください。
  1. クライアントUAP及びサーバUAPが同一OpenTP1環境下にあります。
  2. クライアントUAP及びサーバUAPがHiRDB XAライブラリにリンクされています。
  3. クライアントUAP及びサーバUAPがHiRDBをアクセスしています。※

注※
次に示すどちらかの条件を満たす場合のことです。
1. HiRDBをアクセスするSQLを発行している場合
2. OpenTP1システム定義のトランザクションサービス定義/ユーザサービス定義のtrn_rm_open_close_scopeオペランドにprocessを指定又は省略している場合
(2) 注意事項 6.
[訂正前]
回復不要FESユニットが稼働しているのに,ネットワーク障害などでそのユニットのステータス情報がSTOP(A)になった場合,障害が回復してシステムマネジャからそのユニットに通信できるようになると,システムマネジャがそのユニットを自動的に強制停止してから再度開始します。ただし,システムマネジャからそのユニットに通信できるようになる前にユニットが停止した場合はシステムマネジャは強制停止及び再度開始をしません。停止しているユニットは,必要に応じてpdstartコマンドを実行してユニットを開始してください。なお,次の場合はそれぞれ状況に応じて対策してください。
  • 該当するユニットに対してエラーメッセージが表示されている場合
    ユニットを開始する前に,メッセージからエラー要因を調査し,対策してください。ユニットが停止している場合,syslogfileシステムログにKFPS01841-I又はKFPS01821-Eメッセージが表示されます。pdstartコマンド実行時,KFPS01853-W,KFPS01863-E,及びKFPS05619-Eメッセージは表示されません。
  • システムマネジャがユニットを再度開始する場合,起動処理に失敗してユニットが停止状態のままのとき
    メッセージから起動処理に失敗した原因を調査し,対策してください。その後,必要に応じて該当するユニットをpdstartコマンドで開始してください。
[訂正後]
回復不要FESユニットが稼働しているのに,ネットワーク障害などで回復不要FESユニットのステータス情報がSTOP(A)になった場合,障害が回復してシステムマネジャを配置するユニットから回復不要FESユニットに通信できるようになると,システムマネジャが回復不要FESユニットを自動的に強制停止してから再度開始します。自動的に強制停止してから再度開始する契機を次に示します。
  • システムマネジャを配置するユニットのユニット監視プロセスが,STOP(A)になっている回復不要FESユニットの稼動状態を確認し,KFPS05288-Iメッセージを出力したとき。
  • システムマネジャを配置するユニットが再度開始する際に,システムマネジャが,STOP(A)になっている回復不要FESユニットの稼動状態を確認したとき。

(1) 回復不要FESユニットの起動処理が正常に終了していない場合の対処
(a) システムマネジャを配置するユニット,及びディクショナリサーバを配置するユニットの稼働状態をpdls -d ustコマンドで確認します。
(b) これらのユニットが稼働していない場合,pdstart -qコマンドで開始します。
(c) これらのユニットが稼働している場合,又はこれらユニットを開始してもKFPS05110-Iメッセージを出力しない場合は,(2)の対処をします。

(2) KFPS05110-Iメッセージを出力しない場合の対処
回復不要FESユニットの稼働状態をpdls -d ustコマンドで確認し,実行結果に応じて,次に示す対処をします。
[図データ]
なお,システムマネジャから回復不要FESユニットに通信できるようになる前にユニットが停止した場合は,システムマネジャは強制停止及び再度開始をしません。
(2) 注意事項 7.
[訂正前]
回復不要FESから分岐してバックエンドサーバやディクショナリサーバで実行しているトランザクションは,コミット決着時に分岐先のバックエンドサーバ及びディクショナリサーバ間で決着の同期合わせを行います。このため,同期合わせのときに,ほかのバックエンドサーバやディクショナリサーバがトランザクション処理を実行できない状態(系切り替え中,サーバ停止状態,サーバ開始準備中,又はサーバ停止準備中)になっていると,トランザクション第1状態がREADY又はCOMMITで待ち合わせを行うことがあります。この場合,トランザクション処理を実行できない状態になっている原因を該当するサーバで対策して,トランザクションの決着処理が続行できるようにしてください。
[訂正後]
回復不要FESから分岐して,ほかのサーバで実行しているトランザクションは,コミット決着時に分岐先のサーバ間で決着の同期合わせを行います。このため,同期合わせのときに,分岐先サーバのいずれかがトランザクション処理を実行できない状態(系切り替え中,サーバ停止状態,サーバ開始準備中,又はサーバ停止準備中)になっていると,トランザクション第1状態がREADY又はCOMMITで待ち合わせを行うことがあります。この場合,トランザクション処理を実行できない状態になっている原因を該当するサーバで対策して,トランザクションの決着処理が続行できるようにしてください。
(3) ビュー表の作成方法
[訂正前]
  • 最大15個の実表又は外部表を一つにしたビュー表
[訂正後]
  • 最大64個の実表を基にした一つのビュー表
注意事項
[訂正前]
  • 可変長の行(BINARY型を含む)に空き領域の再利用機能が使用された場合,追加と削除が同量の場合でも,セグメント数が増加する場合があります。
[訂正後]
  • 非FIX表の場合,空き領域再利用機能を適用していても,次のような更新を行うとデータの追加と削除が同量でもセグメント数が増加する場合があります。
    ・↓(ページ長−48)÷(行長+2)↓件のデータを挿入し,行長が短くなるデータ(NULL値含む),又は別のページに分岐するようなデータに更新した後削除する操作を繰り返す。
    そのため,定期的にデータベース再編成ユティリティ(pdrorg)によるデータの再編成を実施してください。
表15-1 HiRDB/シングルサーバの共用メモリの詳細
[訂正前]
作成契機 │ユニット起動時(高速系切り替え機能使用時の待機ユニットの起動を含む)
削除契機 │次回ユニット起動時(高速系切り替え機能使用時の待機ユニットの起動を含む)
[訂正後]
作成契機 │ユニット起動時(ユーザサーバホットスタンバイまたは高速系切り替え機能使用時の待機ユニットの起動を含む)
削除契機 │ユニット起動時(ユーザサーバホットスタンバイまたは高速系切り替え機能使用時の待機ユニットの起動を含む)
表15-2 HiRDB/シングルサーバが使用するメモリ所要量
項目「ユニットコントローラ全プロセスが使用するプロセス固有領域」
メモリ所要量(単位:キロバイト)欄
[訂正前]
●インメモリデータ処理を行う場合,加算します。
+K×(pd_max_usersの値×2+7)
[訂正後]
●インメモリデータ処理を行う場合,加算します。
+↑{K×(pd_max_usersの値×2 + 7)}÷1024↑
●通信トレース格納最大数を変更する場合,加算します。
+ ↑M÷1024↑
表15-2 HiRDB/シングルサーバが使用するメモリ所要量
項目「シングルサーバプロセスが使用するプロセス固有領域」
メモリ所要量(単位:キロバイト)欄
  • pd_work_buff_mode=each指定時
[訂正前]
●インメモリデータ処理を行う場合,加算します。
+K×(pd_max_usersの値+3)
[訂正後]
●インメモリデータ処理を行う場合,加算します。
+↑{K×(pd_max_usersの値+3)}÷1024↑
●通信トレース格納最大数を変更する場合,加算します。
+↑P÷1024↑
  • pd_work_buff_mode=pool指定又は省略時
[訂正前]
●インメモリデータ処理を行う場合,加算します。
+K
[訂正後]
●インメモリデータ処理を行う場合,加算します。
+↑{K×(pd_max_usersの値+3)}÷1024↑
●通信トレース格納最大数を変更する場合,加算します。
+↑P÷1024↑
表15-2の下の注意書き
[訂正前]

K:pd_max_resident_rdarea_noオペランドに1以上を指定している場合に,次の値を加算します。
1648+16×pd_max_resident_rddarea_noの値+16×pd_max_resident_rddarea_shm_noの値
L:(略)
[訂正後]

K:pd_max_resident_rdarea_noオペランドに1以上を指定している場合に,次の値を加算します。
1648+16×pd_max_resident_rdarea_noの値+16×pd_max_resident_rdarea_shm_noの値
L:(略)

M:通信トレース処理で必要なメモリ所要量
32ビットモードの場合:
(16×(N−1024)×2)×(pd_max_server_process値−pd_max_users値−3)
64ビットモードの場合:
(32×(N−1024)×2)×(pd_max_server_process値−pd_max_users値−3)
N:ユニット制御情報定義として有効なpd_pth_trace_max値です。オペランド指定値を2のべき乗の値に切り上げた値になります。

P:通信トレース処理で必要なメモリ所要量
32ビットモードの場合:
(16×(Q−1024)×2)×(pd_max_users値+3)
64ビットモードの場合:
(32×(Q−1024)×2)×(pd_max_users値+3)
Q:シングルサーバ定義として有効なpd_pth_trace_max値です。オペランド指定値を2のべき乗の値に切り上げた値になります。
(1) 32ビットモードのHiRDBの場合
プロセスの種類:ユニット共通
[訂正前]
a:25328+p×4
[訂正後]
a:25360+p×4
(2) 64ビットモードのHiRDBの場合
プロセスの種類:ユニット共通
[訂正前]
a:34736+p×4
[訂正後]
a:34768+p×4
(1) グローバルバッファが使用する共用メモリを実メモリ上に固定しない場合
表 計算式1
[訂正前]
●32ビットモードの場合
 n
Σ{
i=1
  ↑{736+64+(280+64※1)×(Pi+4)
  +(124+80※2+96×A×Mi)×Ui}÷4096↑×4096
  +Si×{Pi+4+(Ui×Mi×A)}
  }÷1024
●64ビットモードの場合
 n
Σ{
i=1
  ↑{928+64+(464+112※1)×(Pi+4)
  +(176+96※2+136×A×Mi)×Ui}÷4096↑×4096
  +Si×{Pi+4+(Ui×Mi×A)}
  }÷1024
[訂正後]
●32ビットモードの場合
 n
Σ{《管理領域部》+《データ格納部》}÷1024
i=1

《管理領域部》
↑{736+64+(296+64※1)×(Pi+4)
+(124+80※2+96×A×Mi)×Ui}÷4096↑×4096

《データ格納部》
Si×{Pi+4+(Ui×Mi×A)}
●64ビットモードの場合
 n
Σ{《管理領域部》+《データ格納部》}÷1024
i=1

《管理領域部》
↑{928+64+(480+112※1)×(Pi+4)
+(176+96※2+136×A×Mi)×Ui}÷4096↑×4096

《データ格納部》
Si×{Pi+4+(Ui×Mi×A)}
(1) グローバルバッファが使用する共用メモリを実メモリ上に固定しない場合
表 計算式2
[訂正前]
●32ビットモードの場合
{↑[((s×1024÷4)÷8)+112]÷4096↑×4096×↑a÷(s×1024)↑
}÷1024
●64ビットモードの場合
{↑[((s×1024÷4)÷8)+144]÷4096↑×4096×↑a÷(s×1024)↑
}÷1024
[訂正後]
●32ビットモードの場合
{↑[((s×1024÷4)÷8)+112]÷4096↑×4096×↑a÷(s×1024)↑

●64ビットモードの場合
{↑[((s×1024÷4)÷8)+144]÷4096↑×4096×↑a÷(s×1024)↑
(2) グローバルバッファが使用する共用メモリを実メモリ上に固定する場合
表 計算式1
[訂正前]
●32ビットモードの場合
 n
Σ{
i=1
  ↑{↑{736+64+(280+64※1)×(Pi+4)
  +(124+80※2+96×A×Mi)×Ui}÷4096↑×4096
  +Si×{Pi+4+(Ui×Mi×A)}}÷p↑×p
  }÷1024
●64ビットモードの場合
 n
Σ{
i=1
  ↑{↑{928+64+(464+112※1)×(Pi+4)
  +(176+96※2+136×A×Mi)×Ui}÷4096↑×4096
  +Si×{Pi+4+(Ui×Mi×A)}}÷p↑×p
  }÷1024
[訂正後]
●32ビットモードの場合
n
Σ{↑{《管理領域部》+《データ格納部》}÷p↑×p}÷1024
i=1

《管理領域部》:
↑{↑{736+64+(296+64※1)×(Pi+4)
+(124+80※2+96×A×Mi)×Ui}÷4096↑×4096

《データ格納部》
Si×{Pi+4+(Ui×Mi×A)}
●64ビットモードの場合
n
Σ{↑{《管理領域部》+《データ格納部》}÷p↑×p}÷1024
i=1

《管理領域部》:
↑{↑{928+64+(480+112※1)×(Pi+4)
+(176+96※2+136×A×Mi)×Ui}÷4096↑×4096

《データ格納部》:
Si×{Pi+4+(Ui×Mi×A)}
(2) グローバルバッファが使用する共用メモリを実メモリ上に固定する場合
表 計算式2
[訂正前]
●32ビットモードの場合
{↑{↑[((s×1024÷4)÷8)+112]÷4096↑×4096×↑a÷(s×1024)↑}÷p↑×p}÷1024
●64ビットモードの場合
{↑{↑[((s×1024÷4)÷8)+144]÷4096↑×4096×↑a÷(s×1024)↑}÷p↑×p}÷1024
[訂正後]
●32ビットモードの場合
{↑{↑[((s×1024÷4)÷8)+112]÷4096↑×4096×↑a÷(s×1024)↑}÷p↑×p}
●64ビットモードの場合
{↑{↑[((s×1024÷4)÷8)+144]÷4096↑×4096×↑a÷(s×1024)↑}÷p↑×p}
表15-6 HiRDB/パラレルサーバの共用メモリの詳細
[訂正前]
作成契機 │ユニット起動時(高速系切り替え機能使用時の待機ユニットの起動を含む)
削除契機 │次回ユニット起動時(高速系切り替え機能使用時の待機ユニットの起動を含む)
[訂正後]
作成契機 │ユニット起動時(ユーザサーバホットスタンバイまたは高速系切り替え機能使用時の待機ユニットの起動を含む)
削除契機 │ユニット起動時(ユーザサーバホットスタンバイまたは高速系切り替え機能使用時の待機ユニットの起動を含む)
表15-7 HiRDB/パラレルサーバの各ユニットが使用するメモリ所要量
項目「ユニットコントローラ全プロセスが使用するプロセス固有領域」
メモリ所要量(単位:キロバイト)欄
[訂正前]
●インメモリデータ処理を行う場合,加算します。
+T×(pd_max_bes_processの値×2+7)×ユニット内BES数
[訂正後]
●インメモリデータ処理を行う場合,加算します。
+↑{T×(pd_max_bes_processの値×2+7)×ユニット内BES数}÷1024↑
●通信トレース格納最大数を変更する場合,加算します。
+↑V÷1024↑
表15-7 HiRDB/パラレルサーバの各ユニットが使用するメモリ所要量
項目「フロントエンドサーバ」
メモリ所要量(単位:キロバイト)欄
[訂正前]
(N+h+m+p+q)×(b+3)+100+y
[訂正後]
(N + h + m + p + q)×(b + 3)+100+y
●通信トレース格納最大数を変更する場合,加算します。
+ ↑W÷1024↑
表15-7 HiRDB/パラレルサーバの各ユニットが使用するメモリ所要量
項目「ディクショナリサーバ」
  • pd_work_buff_mode=each指定時
[訂正前]
{(P+i+m+r+t)×(b+3)}+(a+9)×2+100+y+S
[訂正後]
{(P+i+m+r+t)×(b+3)}+(a+9)×2+100+y+S
●通信トレース格納最大数を変更する場合,加算します。
+↑W÷1024↑
 
  • pd_work_buff_mode=pool指定又は省略時
[訂正前]
{(P+i+m+r+t)×(b+3)}+a+9+↑a÷128×0.1↑+100+n+y+S
[訂正後]
{(P+i+m+r+t)×(b+3)}+a+9+↑a÷128×0.1↑+100+n+y+S
●通信トレース格納最大数を変更する場合,加算します。
+↑W÷1024↑
表15-7 HiRDB/パラレルサーバの各ユニットが使用するメモリ所要量
項目「バックエンドサーバ」
  • pd_work_buff_mode=each指定時
[訂正前]
{Q+g+(a+9)×c+i+m+r+t}×(b+3)+100+y+S
●インメモリデータ処理を行う場合,加算します。
+T×(pd_max_usersの値+3)
[訂正後]
{Q+g+(a+9)×c+i+m+r+t}×(b+3)+100+y+S
●インメモリデータ処理を行う場合,加算します。
+↑{T×(pd_max_usersの値+3)}÷1024↑
●通信トレース格納最大数を変更する場合,加算します。
+↑W÷1024↑
 
  • pd_work_buff_mode=pool指定又は省略時
[訂正前]
●インメモリデータ処理を行う場合,加算します。
+T×(pd_max_usersの値+3)
[訂正後]
+↑{T×(pd_max_usersの値+3)}÷1024↑
●通信トレース格納最大数を変更する場合,加算します。
+↑W÷1024↑
表15-7の下の注意書き
[追加]
x:ユニット制御情報定義として有効なpd_pth_trace_max値です。オペランド指定値を2のべき乗の値に切り上げた値になります。
V:通信トレース処理で必要なメモリ所要量

32ビットモードの場合:
(16×(x−1024)×2)×(pd_max_server_process値−w)

64ビットモードの場合:
(32×(x−1024)×2)×(pd_max_server_process値−w)

W:通信トレース処理で必要なメモリ所要量
ユニット内の各サーバプロセスに関して算出した下記の値
32ビットモードの場合:
(16×(Z−1024)×2)×(最大起動プロセス数+3)
64ビットモードの場合:
(32×(Z−1024)×2)×(最大起動プロセス数+3)
最大起動プロセス数については,マニュアル「HiRDB Version 8 システム定義」を参照してください。

Z:各サーバ定義として有効なpd_pth_trace_max値です。
オペランド指定値を2のべき乗の値に切り上げた値になります。
(1) 32ビットモードの場合
プロセスの種類:ユニット共通
[訂正前]
a:26720+v×4×34
[訂正後]
a:26752+v×4×34
(2) 64ビットモードの場合
プロセスの種類:ユニット共通
[訂正前]
a:36128+v×4×34
[訂正後]
a:36160+v×4×34
(1) フロントエンドサーバが使用する共用メモリの計算式
●32ビットモードの場合
[訂正前]
+32+{16×(f+1)×g}+20000+112×B
[訂正後]
+36+{28×(f+1)×g}+20000+112×B
(1) フロントエンドサーバが使用する共用メモリの計算式
●64ビットモードの場合
[訂正前]
+48+{16×(f+1)×g}+20000+112×B
[訂正後]
+56+{40×(f+1)×g}+20000+112×B
(1)(a) グローバルバッファが使用する共用メモリを実メモリ上に固定しない場合
表 計算式1
[訂正前]
●32ビットモードの場合
n
Σ{
i=1
  ↑{736+64+(280+64※1)×(Pi+4)
  +(124+80※2+96×A×Mi)×Ui}÷4096↑×4096
  +Si×{Pi+4+(Ui×Mi×A)}
  }÷1024
●64ビットモードの場合
n
Σ{
i=1
  ↑{928+64+(464+112※1)×(Pi+4)
  +(176+96※2+136×A×Mi)×Ui}÷4096↑×4096
  +Si×{Pi+4+(Ui×Mi×A)}
  }÷1024
[訂正後]
●32ビットモードの場合
n
Σ{《管理領域部》+《データ格納部》}÷1024
i=1

《管理領域部》:
↑{736+64+(296+64※1)×(Pi+4)
+(124+80※2+96×A×Mi)×Ui}÷4096↑×4096

《データ格納部》:
Si×{Pi+4+(Ui×Mi×A)}
●64ビットモードの場合
n
Σ{《管理領域部》+《データ格納部》}÷1024
i=1

《管理領域部》:
↑{928+64+(480+112※1)×(Pi+4)
+(176+96※2+136×A×Mi)×Ui}÷4096↑×4096

《データ格納部》:
Si×{Pi+4+(Ui×Mi×A)}
(1)(a) グローバルバッファが使用する共用メモリを実メモリ上に固定しない場合
表 計算式2
[訂正前]
●32ビットモードの場合
{↑[((s×1024÷4)÷8)+112]÷4096↑×4096×↑a÷(s×1024)↑
}÷1024
●64ビットモードの場合
{↑[((s×1024÷4)÷8)+144]÷4096↑×4096×↑a÷(s×1024)↑
}÷1024
[訂正後]
●32ビットモードの場合
{↑[((s×1024÷4)÷8)+112]÷4096↑×4096×↑a÷(s×1024)↑

●64ビットモードの場合
{↑[((s×1024÷4)÷8)+144]÷4096↑×4096×↑a÷(s×1024)↑
(1)(b) グローバルバッファが使用する共用メモリを実メモリ上に固定する場合
表 計算式1
[訂正前]
●32ビットモードの場合
n
Σ{
i=1
  ↑{↑{736+64+(280+64※1)×(Pi+4)
  +(124+80※2+96×A×Mi)×Ui}÷4096↑×4096
  +Si×{Pi+4+(Ui×Mi×A)}}÷p↑×p
  }÷1024
●64ビットモードの場合
n
Σ{
i=1
  ↑{↑{928+64+(464+112※1)×(Pi+4)
  +(176+96※2+136×A×Mi)×Ui}÷4096↑×4096
  +Si×{Pi+4+(Ui×Mi×A)}}÷p↑×p
  }÷1024
[訂正後]
●32ビットモードの場合
n
Σ{↑{《管理領域部》+《データ格納部》}÷p↑×p}÷1024
i=1

《管理領域部》:
↑{↑{736+64+(296+64※1)×(Pi+4)
+(124+80※2+96×A×Mi)×Ui}÷4096↑×4096

《データ格納部》:
Si×{Pi+4+(Ui×Mi×A)}
●64ビットモードの場合
n
Σ{↑{《管理領域部》+《データ格納部》}÷p↑×p}÷1024
i=1

《管理領域部》:
↑{↑{928+64+(480+112※1)×(Pi+4)
+(176+96※2+136×A×Mi)×Ui}÷4096↑×4096

《データ格納部》:
Si×{Pi+4+(Ui×Mi×A)}
(1)(b) グローバルバッファが使用する共用メモリを実メモリ上に固定する場合
表 計算式2
[訂正前]
●32ビットモードの場合
{↑{↑[((s×1024÷4)÷8)+112]÷4096↑×4096×↑a÷(s×1024)↑}÷p↑×p}÷1024
●64ビットモードの場合
{↑{↑[((s×1024÷4)÷8)+144]÷4096↑×4096×↑a÷(s×1024)↑}÷p↑×p}÷1024
[訂正後]
●32ビットモードの場合
{↑{↑[((s×1024÷4)÷8)+112]÷4096↑×4096×↑a÷(s×1024)↑}÷p↑×p}
●64ビットモードの場合
{↑{↑[((s×1024÷4)÷8)+144]÷4096↑×4096×↑a÷(s×1024)↑}÷p↑×p}
(2)(a) グローバルバッファが使用する共用メモリを実メモリ上に固定しない場合
[訂正前]
●32ビットモードの場合
 n
Σ{
i=1
  (96+((736×(A+B))+(272×(F+(8×(A+B))))
  +8×F×(A+B)+16)+H+D)
  +2048+G+(E×F+(8×(A+B)))
  }÷1024
●64ビットモードの場合
 n
Σ{
i=1
  ((144+((928×(A+B))+(448×(F+(8×(A+B))))
  +(16×F×(A+B))))+16+H+D)
  +2048+G+(E×F+(8×(A+B)))
  }÷1024
[訂正後]
●32ビットモードの場合
 n
Σ{《管理領域部》+《データ格納部》}÷1024
i=1

《管理領域部》:
((96+((736×(A+B))+(288×(F+(8×(A+B))))
+(8×F×(A+B)))+16)+H+D)

《データ格納部》:
2048+G+(E×F+(8×(A+B)))

●64ビットモードの場合
 n
Σ{《管理領域部》+《データ格納部》}÷1024
i=1

《管理領域部》:
((144+((928×(A+B))+(464×(F+(8×(A+B))))
+(16×F×(A+B))))+16+H+D)

《データ格納部》:
2048+G+(E×F+(8×(A+B)))
(2)(b) グローバルバッファが使用する共用メモリを実メモリ上に固定する場合
[訂正前]
●32ビットモードの場合
 n
Σ{
i=1
  {↑(96+((736×(A+B))+(272×(F+(8×(A+B))))
  +8×F×(A+B)+16)+H+D)
  +2048+G+(E×F+(8×(A+B)))÷p↑}×p
  }÷1024
●64ビットモードの場合
 n
Σ{
i=1
  {↑((144+((928×(A+B))+(448×(F+(8×(A+B))))
  +(16×F×(A+B))))+16+H+D)
  +2048+G+(E×F+(8×(A+B)))÷p↑}×p
  }÷1024
[訂正後]
●32ビットモードの場合
n
Σ{↑{《管理領域部》+《データ格納部》}÷p↑×p}÷1024
i=1

《管理領域部》:
((96+((736×(A+B))+(288×(F+(8×(A+B))))
+(8×F×(A+B)))+16)+H+D)

《データ格納部》:
+2048+G+(E×F+(8×(A+B)))
●64ビットモードの場合
 n
Σ{↑{《管理領域部》+《データ格納部》}÷p↑×p}÷1024
i=1

《管理領域部》:
((144+((928×(A+B))+(464×(F+(8×(A+B))))
+(16×F×(A+B)))+16)+H+D)

《データ格納部》:
2048+G+(E×F+(8×(A+B)))
計算式 マスタディレクトリ用RDエリアの容量(単位:バイト)
[訂正前]
(前略)
+↑(d+240)÷6000↑×51+↑e÷6400↑×51
(後略)
[訂正後]
(前略)
+↑(d+240)÷64000↑×51+↑e÷64000↑×51
(後略)
(3) Sの求め方
(a) HiRDB/シングルサーバの場合
Sの計算式
[訂正前]
+↑8192÷g↑+↑(8192−128)÷g↑×{((a + m)÷k)−1}
[訂正後]
+↑8192÷g↑+↑(8192−128)÷g↑×{↑(a+m)÷k↑−1}
[訂正前]
リソース数に関連する環境変数に設定する値の見積もり式を次の表に示します。計算結果が環境変数の省略値より大きい場合は,その環境変数に計算結果を設定してください。設定しないとHiRDBを開始できない,又はユティリティを実行できないなどの問題が発生します。
[訂正後]
リソース数に関連する環境変数の設定について説明します。これらの環境変数を設定することで,Windowsにはないメッセージキュー,セマフォ,及び共用メモリの機能が使えるようになります。
環境変数の設定値の見積もりはユニット単位で行います。ただし,設定方法にはOS単位とユニット単位の二つがあります。HiRDBの構成に応じて設定方法を選択してください。
  • OS単位で設定する
    Windowsのシステム環境変数として設定します。この場合,OS内のすべてのユニットに対して同じ値が設定されます。OS内に複数のユニットが存在するマルチHiRDB構成の場合は,各ユニットの見積もりの最大値を設定します。そのため,最大値を必要としないユニットはむだなリソースを使用することになります。
    OS内に一つのユニットしか存在しない場合はOS単位の設定で問題ありません。
    設定を有効にするためには,OSを再起動する必要があります。
  • ユニット単位で設定する
    pdntenvコマンドの-srオプションで設定します。OS内に複数のユニットが存在する場合,各ユニットに適した値を設定できます。
    設定を有効にするためには,サービスを再開始する必要があります。
なお,両方で設定した場合,ユニット単位の設定値が優先されます。
(1) 見積もり式
見積もり式を次の表に示します。
表20-1 リソース数に関連する環境変数に設定する値(HiRDB/シングルサーバの場合)
[訂正前]
[図データ]
[訂正後]
[図データ]
表20-1 リソース数に関連する環境変数に設定する値(HiRDB/シングルサーバの場合)
[追加]

注※1
設定範囲より小さい値を設定した場合,HiRDBが最小値に切り上げます。

注※2
設定範囲より大きい値を設定した場合,HiRDBが最大値に切り下げます。

注※3
グローバルバッファの動的変更機能を使用する場合に加算してください。セキュリティ監査機能使用時はさらに1を加算してください。

注※4
インメモリデータ処理を行う場合に加算してください。
表20-1 リソース数に関連する環境変数に設定する値(HiRDB/シングルサーバの場合)
種別:メッセージキューテーブル数の「計算式」
[訂正前]
MAX(b×ユニット数,pdbufferの-m指定値の合計値)
[訂正後]
b×ユニット数+A+B
A:次の値を代入してください。
[図データ]
 
B:非同期READ機能使用時(pd_max_ard_processに0以外指定時)だけ加算します。非同期READ機能を使用しない場合は0で見積もります。次の値を代入してください
[図データ]
表20-1 リソース数に関連する環境変数に設定する値(HiRDB/シングルサーバの場合)
種別:共用メモリ使用数の「計算式」
[訂正前]
2×e+16
[訂正後]
(2+h+pd_max_add_dbbuff_shm_noの値※3+pd_max_resident_rdarea_shm_noの値※4)×(e+i+50)
h:↑(グローバルバッファが使用する共用メモリの総量(※)÷SHMMAXの値)↑
i:pd_aud_file_nameオペランドを指定している場合はbの値,pd_aud_file_name
オペランドを指定していない場合は0

注※
15.1.5 グローバルバッファが使用する共用メモリの計算式」を参照してください。
[追加]
(2) 共用メモリの計算式
メッセージキュー,セマフォ,及び共用メモリの機能を使うことによって使用される共用メモリの計算式を次の表に示します。
表 20-2 共用メモリの計算式
[図データ]
[訂正前]
リソース数に関連する環境変数に設定する値の見積もり式を次の表に示します。計算結果が環境変数の省略値より大きい場合は,その環境変数に計算結果を設定してください。設定しないとHiRDBを開始できない,又はユティリティを実行できないなどの問題が発生します。
なお,この計算式は一つのサーバマシン内で必要な値です。
[訂正後]
リソース数に関連する環境変数の設定について説明します。これらの環境変数を設定することで,Windowsにはないメッセージキュー,セマフォ,及び共用メモリの機能が使えるようになります。
環境変数の設定値の見積もりはユニット単位で行います。ただし,設定方法にはOS単位とユニット単位の二つがあります。HiRDBの構成に応じて設定方法を選択してください。
  • OS単位で設定する
    Windowsのシステム環境変数として設定します。この場合,OS内のすべてのユニットに対して同じ値が設定されます。OS内に複数のユニットが存在するマルチHiRDB構成の場合は,各ユニットの見積もりの最大値を設定します。そのため,最大値を必要としないユニットはむだなリソースを使用することになります。
    OS内に一つのユニットしか存在しない場合はOS単位の設定で問題ありません。
設定を有効にするためには,OSを再起動する必要があります。
  • ユニット単位で設定する
    pdntenvコマンドの-srオプションで設定します。OS内に複数のユニットが存在する場合,各ユニットに適した値を設定できます。
    設定を有効にするためには,OSを再起動する必要があります。
なお,両方で設定した場合,ユニット単位の設定値が優先されます。
(1) 見積もり式
見積もり式を次の表に示します。
表20-3 リソース数に関連する環境変数に設定する値(HiRDB/パラレルサーバの場合)
[訂正前]
[図データ]
[訂正後]
[図データ]
表20-3 リソース数に関連する環境変数に設定する値(HiRDB/パラレルサーバの場合)
[追加]

注※1
設定範囲より小さい値を設定した場合,HiRDBが最小値に切り上げます。

注※2
設定範囲より大きい値を設定した場合,HiRDBが最大値に切り下げます。

注※3
グローバルバッファの動的変更機能を使用する場合に加算してください。セキュリティ監査機能使用時はさらに1を加算してください。

注※4
インメモリデータ処理を行う場合に加算してください。
表20-3 リソース数に関連する環境変数に設定する値(HiRDB/パラレルサーバの場合)
[訂正前]
MAX(h×ユニット数,pdbufferの-m指定値の合計値)
[訂正後]
h×ユニット数+A+B
A:次の値を代入してください。
[図データ]
 
B:非同期READ機能使用時(pd_max_ard_processに0以外指定時)だけ加算します。非同期READ機能を使用しない場合は0で見積もります。次の値を代入してください。
[図データ]
表20-3 リソース数に関連する環境変数に設定する値(HiRDB/パラレルサーバの場合)
種別:共用メモリ使用数の「計算式」
[訂正前]
2×g+16×b
[訂正後]
(2+z
 n
+Σ各サーバに指定したpd_max_add_dbbuff_shm_noの値※3
 i=1
+(pd_max_resident_rdarea_shm_noの値×バックエンドサーバ数)※4)×(g+Ai+50)
z:↑(ユニット内のグローバルバッファが使用する共用メモリの総量(※)÷SHMMAXの値)↑
A:pd_aud_file_nameオペランドを指定している場合はhの値,pd_aud_file_nameオペランドを指定していない場合は0

注※
15.2.5 グローバルバッファが使用する共用メモリの計算式」を参照してください。
[追加]
(2) 共用メモリの計算式
メッセージキュー,セマフォ,及び共用メモリの機能を使うことによって使用される共用メモリの計算式を次の表に示します。
表 20-4 共用メモリの計算式
[図データ]
表A-1 HiRDBのシステム構成に関する最大値と最小値
[訂正前]
データディクショナリ用RDエリア数 │ 1 │ 41 │ 個 │
[訂正後]
データディクショナリ用RDエリア数 │ 1 │ 59 │ 個 │
解析情報表及び運用履歴表を格納する │ 1 │ 1 │ 個 │
データディクショナリ用RDエリア数

変更内容(3020-6-352-40) HiRDB Version 8 08-05

追加・変更内容
HiRDB.NETデータプロバイダでメソッドトレースを取得できるようにしました。これに伴い,単調増加ファイルにHiRDB.NETデータプロバイダのメソッドトレースを追加しました。
Windows Server 2008のクラスタソフトウェア(MSFC)の説明を追加しました。
システムログファイルの空き容量不足を検知した場合,HiRDBが自動的にシステムログファイルを拡張できるようにしました(システムログファイルの自動拡張機能)。
簡易セットアップツールを実行するマシン環境についての説明を追加しました。
HiRDB/シングルサーバの場合,HiRDBサーバに対する最大同時接続数を3,000まで拡大しました。これによって,より多くのユーザがデータベースに同時にアクセスできるようになりました。
pd_large_file_useオペランドの省略値をNからYに変更しました。
raw I/O機能で使用できるパーティションの形式について説明を追加しました。
ビュー定義,およびWITH句の導出問合せ中に,抽象データ型の指定,およびそれらのビューや問合せを指定できるようにしました(プラグインが提供する抽象データ型を含みます)。
データベース中でデータを呼び出すごとに一連の整数値を返す順序数生成子を追加しました(自動採番機能)。これに伴い,自動採番機能を使用したデータロードについての説明を追加しました。
XML型全文検索用インデクスの使用条件を追加しました。
HiRDBが使用する共用メモリをメモリ上に固定できるようにしました。これによって,共用メモリのページングが防止できるため,アクセス性能が向上します。
バイナリデータの分岐行のページのLRU管理を抑止できるようにしました。これによって,グローバルバッファにキャッシュされた内容がバイナリデータの読み込みによってメモリから追い出されるのを回避できます。
文字列データ型に文字集合UTF-16を指定できるようにしました。これによって,UTF-16で作成された文字列データを,そのままの形式でデータベースに格納できるようになりました。
表の空き領域の再利用機能を使用している場合に,監視不要なセグメント使用率通知メッセージの出力を抑止できるようにしました。
HiRDB/シングルサーバのメモリ所要量の見積もり式を変更しました。
HiRDB/パラレルサーバのメモリ所要量の見積もり式を変更しました。
ユーザ用RDエリアの容量見積もりを変更しました。
ディクショナリ表SQL_RDAREASの格納ページ数の見積もり式を変更しました。
ディクショナリ表SQL_SEQUENCESの格納ページ数の見積もり式を追加しました。
システムログファイルの容量の見積もり時の注意事項を追加しました。
システムログファイルの容量の見積もりを変更しました。
データベース状態解析ユティリティ(pddbst)実行時のファイルの容量を変更しました。
次に示すユティリティ実行時のメモリ所要量を変更しました。
  • データベース作成ユティリティ(pdload)
  • データベース再編成ユティリティ(pdrorg)
  • データベース複写ユティリティ(pdcopy)
  • データベース回復ユティリティ(pdrstr)

変更内容(3020-6-352-30) HiRDB Version 8 08-04

追加・変更内容
HiRDBの稼働プラットフォームにWindows Server 2008を追加しました。
HiRDBを使用すると単調増加するファイルについて,説明を追加しました。
pdfmkfsコマンドでHiRDBファイルシステム領域を作成する場合の,アクセス権の付与についての説明を追加しました。
簡易セットアップツールで,ウィザードによるセットアップができるようになりました。
RDエリアの自動増分によってHiRDBファイルシステム領域サイズの上限を超える場合,HiRDBファイルシステム領域の上限を自動的に拡張するようにしました。
簡易セットアップツールで設定できる系切り替え機能について,説明を追加しました。
XML型を使用する場合に,次の機能が使えるようになりました。
  • FLWOR式のLET句をサポートしました。また,XQuery関数のサポート範囲を拡張しました。これによって,XML型の値に対する問合せに記述できるXQuery言語の範囲が広がりました。
  • 全文検索用のhi-fn:contains関数をサポートしました。これによって,XML型の値に対して,異表記展開検索,および同義語検索などの全文検索機能が使用できるようになりました。
  • XML名前空間を使用したXMLデータが扱えるようになりました。
XML型の値を挿入または更新する場合,XML変換コマンドやXML変換ライブラリでXML文書をESIS-B形式に変換する必要がありましたが,XML文書を直接INSERT文やUPDATE文に指定して値を挿入できるようにしました。
マトリクス分割表の場合も,ALTER TABLEで分割格納条件を変更できるようにしました。
基本行を格納するセグメントと定義長256バイト以上のBINARY列のデータを格納するBINARY専用セグメントの情報を区別して表示するようにしました。これに伴い,説明を変更しました。
オンライン更新業務実行中に共用RDエリアのバックアップを取得できるようにしました。これによって,更新可能バックアップ閉塞時の制限を解除しました。
HiRDB/シングルサーバのメモリ所要量の見積もり式を変更しました。
HiRDB/パラレルサーバのメモリ所要量の見積もり式を変更しました。
次のディクショナリ表の格納ページ数の見積もり式を変更しました。
  • SQL_COLUMN_STATISTICS
  • SQL_VIEWS
  • SQL_VIEW_DEF
レジストリ用RDエリアの容量の見積もりを変更しました。
ステータスファイルの容量の見積もりを変更しました。
次に示すユティリティで使用するファイルの容量の計算式を変更しました。
  • データベース作成ユティリティ(pdload)
  • データベース再編成ユティリティ(pdrorg)
  • 統計解析ユティリティ(pdstedit)
  • ディクショナリ搬出入ユティリティ(pdexp)
  • リバランスユティリティ(pdrbal)
ディクショナリ搬出入ユティリティ(pdexp)実行時のメモリ所要量の計算式を変更しました。
JP1/NETM/Auditと連携して,HiRDBが出力する監査証跡をJP1/NETM/Auditで一元管理できるようにしました。これに伴い,サンプルファイルにsampleAUDITを追加しました。
データベースに関する最大値と最小値を変更しました。