Hitachi

Hitachi Advanced Data Binder システム構築・運用ガイド


5.9.2 作業表を格納するために必要な基本行用ページ数の求め方

作業表を格納するために必要な基本行用ページ数(変数WP(i))は,次に示す計算式から求めてください。

計算式

[図データ]

変数の説明

row_num

表に格納する行数(単位:個)

page_size

作業表用DBエリアのページサイズ(単位:バイト)

5.7 作業表用DBエリアの設計」を基に決めた,初期設定オプションadb_init_wrk_page_sizeの指定値を代入してください。

ただし,adb_init_wrk_page_sizeの指定値の単位はキロバイトですが,変数page_sizeの単位はバイトです。単位が異なるため,注意してください。

初期設定オプションadb_init_wrk_page_sizeについては,マニュアルHADB コマンドリファレンスadbinit(データベースの初期設定)を参照してください。

変数ROWSZについては,次に示す計算式から求めてください。

なお,計算式で求めた値が「ROWSZ>32,704」となる場合は,計算式で求めた値に,「2×(col_num+1)」で求めた値を加算してください。

計算式

[図データ]

変数の説明

col_num作業表を構成する列の総数(単位:個)

col_size(i)各列のデータ長(単位:バイト)

変数col_size(i)については,次に示す表を基に各列のデータ長を求めてください。そのあと,すべての列の合計値を求めてください。

表5‒20 各データ型のデータ長の一覧

項番

分類

データ型

データ長(単位:バイト)

1

数データ

INTEGER

8

2

BIGINT

3

SMALLINT

4

4

DECIMAL(m,n)

NUMERIC(m,n)

1≦m≦4

2

5

5≦m≦8

4

6

9≦m≦16

8

7

17≦m≦38

16

8

DOUBLE PRECISION

8

9

FLOAT

10

文字データ

CHARACTER(n)

n

11

VARCHAR(n)

wrk_var_col_size

12

日時データ

DATE

4

13

TIME(p)

3+↑p÷2↑

14

TIMESTAMP(p)

7+↑p÷2↑

15

バイナリデータ

BINARY(n)

n

16

VARBINARY(n)

d+2

17

配列データ

ARRAY

14

(凡例)

mn:正の整数

d:実際のデータ長

p:0,3,6,9または12

注※

全体の桁数がm桁で,小数点以下の桁数がn桁の固定小数点数を示します。mを省略した場合は38が仮定されます。

wrk_var_col_size:作業表に関するVARCHAR型の列のデータ長

次に示す表を基にデータ長を求めてください。

表5‒21 作業表に関するVARCHAR型の列のデータ長の一覧

項番

定義長n(単位:バイト)

データ長(単位:バイト)

1

1≦n≦32,000

d+2

2

32,001≦n≦64,000

d+8

(凡例)

n:正の整数

d:実際のデータ長

変数WORK_ARRAY_ROWSZについては,次に示す計算式から求めてください。

計算式

[図データ]

変数の説明

col_num

作業表を構成する列の総数

col_size(i)

各列のデータ長(単位:バイト)

表5‒20 各データ型のデータ長の一覧」を基に各列のデータ長を求めてください。そのあと,すべての列の合計値を求めてください。

elm_num(i)

列の最大要素数

配列型以外の列の場合は,0としてください。