Hitachi

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


6.3.26 TIMEZONE関数用ライブラリ使用時のメモリ所要量の求め方

スカラ関数TIMEZONEを指定したSQL文を実行する場合,HADBサーバが使用するメモリの最大サイズとは別に,TIMEZONE関数用ライブラリが使用するメモリ(プロセスメモリ)の最大サイズが必要です。

TIMEZONE関数用ライブラリが使用するメモリの最大サイズは,次に示す計算式から求めてください。

計算式(単位:キロバイト)

TIMEZONE関数用ライブラリが使用するメモリの最大サイズmax_connect_users×max_sql_concurrent_exec_num
         ×max_sql_timezone_num×(sql_rthd_num+1)×32

変数の説明

max_connect_users

SQL文を実行するコネクションの同時実行数

コネクションの同時実行数がわからない場合は,サーバ定義のadb_sys_max_usersオペランドの指定値を代入してください。

max_sql_concurrent_exec_num

1トランザクション内で同時に実行するSQL文の最大数

max_sql_timezone_num

1SQL文中に指定されるスカラ関数TIMEZONEの最大数

sql_rthd_num

最大SQL処理リアルスレッド数(サーバ定義のadb_sql_exe_max_rthd_numオペランドの指定値)

重要

スカラ関数TIMEZONEを指定したSQL文を実行する場合,上記で求めたTIMEZONE関数用ライブラリが使用するメモリの最大サイズ(これをAとする)と,「6.3 HADBサーバのメモリ所要量の見積もり」で求めたHADBサーバが使用するメモリの最大サイズ(これをBとする)の合計値以上(A+B以上)のメモリを確保する必要があります。A+Bが,サーバマシンで使用できるメモリサイズより大きい場合,サーバ定義の次のオペランドの指定値を小さくすると,A+Bを削減できます。

  • adb_sys_rthd_numオペランド

  • adb_sql_exe_max_rthd_numオペランド

  • adb_sys_max_usersオペランド

  • adb_sys_uthd_numオペランド

また,スカラ関数TIMEZONEを指定したSQL文の実行時のメモリ所要量が大き過ぎる場合,スカラ関数TIMEZONEの指定個所を減らすと,メモリ所要量を削減できます。スカラ関数TIMEZONEの指定個所を減らすことを検討してください。