見積り式
32ビット用Data Effector場合(コマンド、C API共通)
15 × 1,024 × 1,024 + 2 × 1,024 × 1,024 × P + min(10 × 1,024 × 1,024 × P , 160 × 1,024 × 1,024) + L × P + MK × (α × 2 × N × max((A - logN) , 1) × 72 ) + MO × (N × (B × β + 28 + P / 4)) + JK × (C × β) + (V × 100 + VC) × 1,024 |
64ビット用Data Effectorの場合(コマンド、C API共通)
15 × 1,024 × 1,024 + 2 × 1,024 × 1,024 × P + min(10 × 1,024 × 1,024 × P , 160 × 1,024 × 1,024) + L × P + MK × (α × 2 × N × max((A - logN) , 1) × 144 ) + MO × (N × (B × β + 48 + P / 4)) + JK × (C × β) + (V × 100 + VC × 2) × 1,024 |
記号の説明
変数 | 意味 | 単位 |
---|---|---|
N | 全入力マスタファイルのレコード数 | 件数 |
L | 1レコードの最大長 (注1) | バイト |
A | 連結条件に指定した入力マスタファイル側の項目の平均データサイズ(注2) | バイト |
B | 出力項目に指定した入力マスタファイル側のK略称および仮想項目のデータ長の合計(注3) | バイト |
C | 出力項目に指定した入力ジャーナルファイル側のK略称の示すデータの平均長 | バイト |
α | 連結キーの係数 (注4) | 0 < α < 1 |
β | データの繰返し数(平均) (注5) | β ≧ 1 |
MK | 連結条件に指定した入力マスタファイル側のK略称数 | 個 |
MO | 出力項目に指定した入力マスタファイル側のK略称数 | 個 |
JK | 出力項目に指定した入力ジャーナルファイル側のK略称数 | 個 |
P | 並列数(注6) | 個 |
V | 仮想項目定義数 | 個 |
VC | 仮想項目の関係式に指定するリテラルのバイト数(注7)の合計 | バイト |
1レコードの最大長を指定してください。ただしエラーデータ出力機能を使用しない場合、0を指定してください。
連結条件に指定した項目の平均データサイズを指定します。
K略称、文字列型の仮想項目、substr関数、rtrim関数を指定した場合、および+演算子により左記を組み合わせた場合: +演算子によって結合された全体の文字列分のバイト長(平均)
val関数、数値関数、および数値型の仮想項目の場合: 16
date型指定、日付値関数、および日付型の仮想項目の場合: 6
time型指定、時刻関数、および時刻型の仮想項目の場合: 3
datetime型指定、日時値関数、および日時型の仮想項目の場合: 9
出力項目に指定した入力マスタファイル側のK略称、および仮想項目のデータ長の合計を指定します。
1つずつのデータ長は以下のように求めます。
K略称のデータ長: K略称が示すデータの文字数分のバイト長
文字列型の仮想項目のデータ長: 仮想項目が示すデータの文字数分のバイト長
数値型の仮想項目のデータ長: 16
日付型の仮想項目のデータ長: 6
時刻型の仮想項目のデータ長: 3
日時型の仮想項目のデータ長: 9
入力マスタファイルの連結条件に指定したK略称の示すデータの内容に依存します。
キーの後半に値の変化が多い場合:0.4
例:(000001、000002、000012、000125など)
キーの前半に値の変化が多い場合:0.6
例:(100-001、210-001、321-001など)
キーの全体に値の変化が多い場合:0.8
例:(123456、234512、912384など)
以下の場合、データの繰返し数の平均を指定します。
入力ジャーナルファイル側で指定したデータと照合するデータが入力マスタファイル側に複数存在する場合
出力単位ノードを指定した場合
C APIの場合は、1を指定します。
コマンドの場合は、replace用動作環境ファイルのJnlFileパラメタおよび、ParallelNumパラメタの指定によって決定します。詳細は“B.2.1 replace用動作環境ファイル”のParallelNumパラメタを参照してください。
リテラルのバイト数は、以下のように計算します。
文字列リテラルの場合のデータ長:指定したリテラルのバイト数
数値リテラルの場合のデータ長:16
日付リテラルの場合のデータ長:6
時刻リテラルの場合のデータ長:3
日時リテラルの場合のデータ長:9
EMPTYの場合のデータ長:0
見積り例
連結機能のメモリ見積り例を以下に示します。
変動要因が以下の条件の場合
変数 | 意味 | 数値例 |
---|---|---|
N | 全入力マスタファイルのレコード数 | 100,000件 |
L | 1レコードの最大長 | 2,048バイト |
A | 連結条件に指定した入力マスタファイル側の項目の平均サイズ | 16バイト |
B | 出力項目に指定した入力マスタファイル側のK略称および仮想項目のデータ長の合計 | 32バイト |
C | 出力項目に指定した入力ジャーナルファイル側のK略称の示すデータの平均長 | 32バイト |
α | 連結キーの係数 | 0.6 |
β | データの繰返し数(平均) | 1 |
MK | 連結条件に指定した入力マスタファイル側のK略称数 | 2個 |
MO | 出力項目に指定した入力マスタファイル側のK略称数 | 8個 |
JK | 出力項目に指定した入力ジャーナルファイル側のK略称数 | 16個 |
P | 並列数 | 1 |
V | 仮想項目定義数 | 1個 |
VC | 仮想項目の関係式に指定するリテラルの文字数の合計 | 16 |
32ビット用Data Effectorの場合
15 × 1,024 × 1,024 + 2 × 1,024 × 1,024 × 1 + min(10 × 1,024 × 1,024 × 1 , 160 × 1,024 × 1,024) + 2,048 × 1 + 2 × (0.6 × 2 × 100,000 × max((16 - log(100,000)) , 1) × 72) + 8 × (100,000 × (32 × 1 + 28 + 1 / 4)) + 16 × (32 × 1) + (1 × 100 + 16) × 1,024 = 266,712,896 (約254メガバイト) |
64ビット用Data Effectorの場合
15 × 1,024 × 1,024 + 2 × 1,024 × 1,024 × 1 + min(10 × 1,024 × 1,024 × 1 , 160 × 1,024 × 1,024) + 2,048 × 1 + 2 × (0.6 × 2 × 100,000 × max((16 - log(100,000)) , 1) × 144 ) + 8 × (100,000 × ( 32 × 1 + 48 + 1 / 4 )) + 16 × (32 × 1) + (1 × 100 + 16 × 2) × 1,024 = 472,809,280バイト (約451メガバイト) |