JP2001175678A - データベース・チューニング装置、データベース・チューニング方法、および記録媒体 - Google Patents
データベース・チューニング装置、データベース・チューニング方法、および記録媒体Info
- Publication number
- JP2001175678A JP2001175678A JP36134599A JP36134599A JP2001175678A JP 2001175678 A JP2001175678 A JP 2001175678A JP 36134599 A JP36134599 A JP 36134599A JP 36134599 A JP36134599 A JP 36134599A JP 2001175678 A JP2001175678 A JP 2001175678A
- Authority
- JP
- Japan
- Prior art keywords
- database
- transaction
- execution
- statistical information
- sql
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【課題】 トランザクション単位でSQLの統計情報を
解析することができるデータベース・チューニング装置
を提供する。 【解決手段】 本発明のデータベース・チューニング装
置は、トランザクションとSQLとの対応関係を記述し
た設計情報を作成するシステム設計ツール1と、設計情
報を格納する設計情報格納部2と、設計情報に基づいて
トランザクションごとのSQLの実行順序を抽出する実
行順序抽出部3と、抽出されたトランザクションごとの
SQLの実行順序を格納する実行順序格納部4と、デー
タベースに対するSQLの実行履歴を格納する実行履歴
格納部6と、実行順序格納部4および実行履歴格納部6
に格納されている情報に基づいてトランザクションの統
計情報を計算する統計情報計算部7と、計算された統計
情報を格納する統計情報格納部8とを備えている。
解析することができるデータベース・チューニング装置
を提供する。 【解決手段】 本発明のデータベース・チューニング装
置は、トランザクションとSQLとの対応関係を記述し
た設計情報を作成するシステム設計ツール1と、設計情
報を格納する設計情報格納部2と、設計情報に基づいて
トランザクションごとのSQLの実行順序を抽出する実
行順序抽出部3と、抽出されたトランザクションごとの
SQLの実行順序を格納する実行順序格納部4と、デー
タベースに対するSQLの実行履歴を格納する実行履歴
格納部6と、実行順序格納部4および実行履歴格納部6
に格納されている情報に基づいてトランザクションの統
計情報を計算する統計情報計算部7と、計算された統計
情報を格納する統計情報格納部8とを備えている。
Description
【0001】
【発明の属する技術分野】本発明は、データベースの検
索処理を高速化するデータベース・チューニング装置、
データベース・チューニング方法、および記録媒体に関
し、特に、関数型言語により検索条件を指定する場合を
対象とする。
索処理を高速化するデータベース・チューニング装置、
データベース・チューニング方法、および記録媒体に関
し、特に、関数型言語により検索条件を指定する場合を
対象とする。
【0002】
【従来の技術】データベースの検索処理を高速化するチ
ューニング手法の一つにSQL(Structured Query Lang
uage:関数型言語)モニタニングと呼ばれる手法があ
る。このSQLモニタリングでは、DBMS(DataBase Mana
gement System)が実行する全SQLの利用状況を解析
し、問題のあるSQLが存在すると、そのSQLを改善
することにより、DBMSの性能向上を図るものである。従
来のSQLモニタリングには、以下の2つの利点があ
る。
ューニング手法の一つにSQL(Structured Query Lang
uage:関数型言語)モニタニングと呼ばれる手法があ
る。このSQLモニタリングでは、DBMS(DataBase Mana
gement System)が実行する全SQLの利用状況を解析
し、問題のあるSQLが存在すると、そのSQLを改善
することにより、DBMSの性能向上を図るものである。従
来のSQLモニタリングには、以下の2つの利点があ
る。
【0003】SQL実行時の処理時間、データキャッ
シュヒット率、および実行計画等を把握できる。
シュヒット率、および実行計画等を把握できる。
【0004】各ユーザ(セッション)ごとにSQLが
まとめられているため、特定のSQLに問題があって
も、他のユーザに与える影響が少ない。
まとめられているため、特定のSQLに問題があって
も、他のユーザに与える影響が少ない。
【0005】
【発明が解決しようとする課題】データベースは、複雑
な検索条件を指定できるように、SQLを階層化したト
ランザクションごとに検索を行うことが多い。
な検索条件を指定できるように、SQLを階層化したト
ランザクションごとに検索を行うことが多い。
【0006】しかしながら、従来のSQLモニタリング
手法は、各ユーザがデータベース検索に利用した各SQ
Lの利用状況等をSQL単位で解析することはできて
も、トランザクション単位で解析することはできなかっ
た。このため、トランザクションごとにはSQLの利用
状況等がわからず、各トランザクションを効率よく実行
できないという問題があった。
手法は、各ユーザがデータベース検索に利用した各SQ
Lの利用状況等をSQL単位で解析することはできて
も、トランザクション単位で解析することはできなかっ
た。このため、トランザクションごとにはSQLの利用
状況等がわからず、各トランザクションを効率よく実行
できないという問題があった。
【0007】本発明は、このような点に鑑みてなされた
ものであり、その目的は、トランザクション単位でSQ
Lの統計情報を解析することができるデータベース・チ
ューニング装置、データベース・チューニング方法およ
び記録媒体を提供することにある。
ものであり、その目的は、トランザクション単位でSQ
Lの統計情報を解析することができるデータベース・チ
ューニング装置、データベース・チューニング方法およ
び記録媒体を提供することにある。
【0008】
【課題を解決するための手段】上述した課題を解決する
ために、請求項1の発明は、検索の条件を記述した関数
型言語(SQL:Structured Query Language)を少なくとも
一つ含むトランザクションを単位としてデータベースの
検索が可能であり、前記データベースの検索を高速化す
るためにチューニングを行うデータベース・チューニン
グ装置において、前記トランザクションのそれぞれごと
に、前記関数型言語の実行順序を抽出する実行順序抽出
手段と、前記データベースに対する前記関数型言語の実
行履歴を抽出する実行履歴抽出手段と、前記実行順序抽
出手段により抽出された実行順序と、前記実行履歴抽出
手段により抽出された実行履歴とに基づいて、前記トラ
ンザクション単位で前記関数型言語の統計情報を算出す
る統計情報算出手段と、を備える。
ために、請求項1の発明は、検索の条件を記述した関数
型言語(SQL:Structured Query Language)を少なくとも
一つ含むトランザクションを単位としてデータベースの
検索が可能であり、前記データベースの検索を高速化す
るためにチューニングを行うデータベース・チューニン
グ装置において、前記トランザクションのそれぞれごと
に、前記関数型言語の実行順序を抽出する実行順序抽出
手段と、前記データベースに対する前記関数型言語の実
行履歴を抽出する実行履歴抽出手段と、前記実行順序抽
出手段により抽出された実行順序と、前記実行履歴抽出
手段により抽出された実行履歴とに基づいて、前記トラ
ンザクション単位で前記関数型言語の統計情報を算出す
る統計情報算出手段と、を備える。
【0009】請求項1の発明では、データベースに対し
て実行された関数型言語の統計情報を、トランザクショ
ン単位でまとめて表示するようにしたため、それぞれの
関数型言語の利用状況をトランザクションごとに解析す
ることができる。
て実行された関数型言語の統計情報を、トランザクショ
ン単位でまとめて表示するようにしたため、それぞれの
関数型言語の利用状況をトランザクションごとに解析す
ることができる。
【0010】請求項2の発明では、実行順序抽出手段に
よる抽出結果と実行履歴抽出手段による抽出結果とに基
づいて関数型言語のパターンマッチングを行うため、実
際に実行された関数型言語がどのトランザクションに対
応するかを簡易かつ正確に検出できる。
よる抽出結果と実行履歴抽出手段による抽出結果とに基
づいて関数型言語のパターンマッチングを行うため、実
際に実行された関数型言語がどのトランザクションに対
応するかを簡易かつ正確に検出できる。
【0011】請求項3の発明では、統計情報算出手段が
算出した統計情報をトランザクション単位で出力するよ
うにしたため、関数型言語の利用状況等をトランザクシ
ョン単位で把握することができる。
算出した統計情報をトランザクション単位で出力するよ
うにしたため、関数型言語の利用状況等をトランザクシ
ョン単位で把握することができる。
【0012】なお、統計情報算出手段が算出する統計情
報は、関数型言語の実行時間、前記データベースへのア
クセス時間、および前記データベースに付属して設けら
れるデータキャッシュへのキャッシュヒット率の少なく
とも一つを含む。
報は、関数型言語の実行時間、前記データベースへのア
クセス時間、および前記データベースに付属して設けら
れるデータキャッシュへのキャッシュヒット率の少なく
とも一つを含む。
【0013】請求項5の発明は、検索の条件を記述した
関数型言語(SQL:Structured QueryLanguage)を少なくと
も一つ含むトランザクションを単位としてデータベース
の検索が可能であり、前記データベースの検索を高速化
するためにチューニングを行うデータベース・チューニ
ング方法において、前記トランザクションのそれぞれご
とに、前記関数型言語の実行順序を抽出する第1ステッ
プと、前記データベースに対する前記関数型言語の実行
履歴を抽出する第2ステップと、前記第1ステップによ
り抽出された実行順序と、前記第2ステップにより抽出
された実行履歴とに基づいて、前記トランザクション単
位で前記関数型言語の統計情報を算出する第3ステップ
と、を備える。
関数型言語(SQL:Structured QueryLanguage)を少なくと
も一つ含むトランザクションを単位としてデータベース
の検索が可能であり、前記データベースの検索を高速化
するためにチューニングを行うデータベース・チューニ
ング方法において、前記トランザクションのそれぞれご
とに、前記関数型言語の実行順序を抽出する第1ステッ
プと、前記データベースに対する前記関数型言語の実行
履歴を抽出する第2ステップと、前記第1ステップによ
り抽出された実行順序と、前記第2ステップにより抽出
された実行履歴とに基づいて、前記トランザクション単
位で前記関数型言語の統計情報を算出する第3ステップ
と、を備える。
【0014】請求項6の発明は、検索の条件を記述した
関数型言語(SQL:Structured QueryLanguage)を少なくと
も一つ含むトランザクションを単位としてデータベース
の検索が可能であり、前記データベースの検索を高速化
するためにチューニングを行うプログラムを記録したコ
ンピュータ読み取り可能な記録媒体において、前記トラ
ンザクションのそれぞれごとに、前記関数型言語の実行
順序を抽出する第1ステップと、前記データベースに対
する前記関数型言語の実行履歴を抽出する第2ステップ
と、前記第1ステップにより抽出された実行順序と、前
記第2ステップにより抽出された実行履歴とに基づい
て、前記トランザクション単位で前記関数型言語の統計
情報を算出する第3ステップと、を備える。
関数型言語(SQL:Structured QueryLanguage)を少なくと
も一つ含むトランザクションを単位としてデータベース
の検索が可能であり、前記データベースの検索を高速化
するためにチューニングを行うプログラムを記録したコ
ンピュータ読み取り可能な記録媒体において、前記トラ
ンザクションのそれぞれごとに、前記関数型言語の実行
順序を抽出する第1ステップと、前記データベースに対
する前記関数型言語の実行履歴を抽出する第2ステップ
と、前記第1ステップにより抽出された実行順序と、前
記第2ステップにより抽出された実行履歴とに基づい
て、前記トランザクション単位で前記関数型言語の統計
情報を算出する第3ステップと、を備える。
【0015】
【発明の実施の形態】以下、本発明に係るデータベース
・チューニング装置、データベース・チューニング方法
および記録媒体について、図面を参照しながら具体的に
説明する。
・チューニング装置、データベース・チューニング方法
および記録媒体について、図面を参照しながら具体的に
説明する。
【0016】従来は、DBMSのSQL実行履歴(実行ロ
グ)に基づいて、実行したSQLの統計情報を計算して
いたが、本実施形態は、システム設計ツールが作成した
設計情報に基づいてトランザクションごとのSQLの実
行順序を抽出し、その抽出結果とDBMSのSQL実行ログ
とを組み合わせることにより、トランザクションごとに
SQLの実行に関する統計情報を抽出するものである。
グ)に基づいて、実行したSQLの統計情報を計算して
いたが、本実施形態は、システム設計ツールが作成した
設計情報に基づいてトランザクションごとのSQLの実
行順序を抽出し、その抽出結果とDBMSのSQL実行ログ
とを組み合わせることにより、トランザクションごとに
SQLの実行に関する統計情報を抽出するものである。
【0017】図1は本発明に係るデータベース・チュー
ニング装置の一実施形態のブロック図である。図1のデ
ータベース・チューニング装置は、トランザクションと
SQLとの対応関係を記述した設計情報を作成するシス
テム設計ツール1と、設計情報を格納する設計情報格納
部2と、設計情報に基づいてトランザクションごとのS
QLの実行順序を抽出する実行順序抽出部(実行順序抽
出手段)3と、抽出されたトランザクションごとのSQ
Lの実行順序を格納する実行順序格納部4と、DBMS(実
行履歴抽出手段)5によるSQLの実行履歴を格納する
実行履歴格納部6と、実行順序格納部4および実行履歴
格納部6に格納されている情報に基づいてトランザクシ
ョンの統計情報を計算する統計情報計算部(統計情報算
出手段)7と、計算された統計情報を格納する統計情報
格納部8と、統計情報計算部7による計算結果を表示す
る表示装置(出力手段)9とを備えている。
ニング装置の一実施形態のブロック図である。図1のデ
ータベース・チューニング装置は、トランザクションと
SQLとの対応関係を記述した設計情報を作成するシス
テム設計ツール1と、設計情報を格納する設計情報格納
部2と、設計情報に基づいてトランザクションごとのS
QLの実行順序を抽出する実行順序抽出部(実行順序抽
出手段)3と、抽出されたトランザクションごとのSQ
Lの実行順序を格納する実行順序格納部4と、DBMS(実
行履歴抽出手段)5によるSQLの実行履歴を格納する
実行履歴格納部6と、実行順序格納部4および実行履歴
格納部6に格納されている情報に基づいてトランザクシ
ョンの統計情報を計算する統計情報計算部(統計情報算
出手段)7と、計算された統計情報を格納する統計情報
格納部8と、統計情報計算部7による計算結果を表示す
る表示装置(出力手段)9とを備えている。
【0018】図2はシステム設計ツール1が作成する設
計情報の一例を示す図であり、「本の貸出」というトラ
ンザクションを示している。図1のトランザクションは
階層構造になっており、「本の貸出」の下位の階層に
は、「ログイン」、「検索」、「詳細表示」および「貸
出」の4つのトランザクションがある。また、「検索」
の下位の階層には、「中分類の検索」と「小分類の検
索」の2つのトランザクションがある。
計情報の一例を示す図であり、「本の貸出」というトラ
ンザクションを示している。図1のトランザクションは
階層構造になっており、「本の貸出」の下位の階層に
は、「ログイン」、「検索」、「詳細表示」および「貸
出」の4つのトランザクションがある。また、「検索」
の下位の階層には、「中分類の検索」と「小分類の検
索」の2つのトランザクションがある。
【0019】最下位の階層に属する「ログイン」、「中
分類の検索」、「小分類の検索」、「詳細表示」および
「貸出」にはそれぞれ、実行されるSQL1,SQL2-
1,SQL2-2,SQL3,SQL4が対応づけられてい
る。
分類の検索」、「小分類の検索」、「詳細表示」および
「貸出」にはそれぞれ、実行されるSQL1,SQL2-
1,SQL2-2,SQL3,SQL4が対応づけられてい
る。
【0020】図1の実行順序抽出部3は、システム設計
ツール1が作成した設計情報に基づいて、トランザクシ
ョンとSQLとの対応関係を示す木構造を作成する。
ツール1が作成した設計情報に基づいて、トランザクシ
ョンとSQLとの対応関係を示す木構造を作成する。
【0021】図3は実行順序抽出部3が作成する木構造
の一例を示す図である。図3の木構造は、トランザクシ
ョンがm階層に分かれている例を示しており、最下位の
階層はリーフレベル、その上層はノードレベルと呼ばれ
る。リーフレベルのトランザクションには、各トランザ
クションが実行するSQL1〜SQLxが対応づけられている。
の一例を示す図である。図3の木構造は、トランザクシ
ョンがm階層に分かれている例を示しており、最下位の
階層はリーフレベル、その上層はノードレベルと呼ばれ
る。リーフレベルのトランザクションには、各トランザ
クションが実行するSQL1〜SQLxが対応づけられている。
【0022】図1の統計情報計算部7は、実行順序抽出
部3が作成した木構造とデータベースに対するSQLの
実行履歴とをパターンマッチングし、トランザクション
の履歴情報を作成する。統計情報計算部7は、作成した
履歴情報に基づいて、各トランザクションの統計情報を
計算した後、トランザクションとSQLとの統計情報を
表示装置9に表示する。
部3が作成した木構造とデータベースに対するSQLの
実行履歴とをパターンマッチングし、トランザクション
の履歴情報を作成する。統計情報計算部7は、作成した
履歴情報に基づいて、各トランザクションの統計情報を
計算した後、トランザクションとSQLとの統計情報を
表示装置9に表示する。
【0023】図4は統計情報計算部7の処理動作を説明
する図である。図4のモニタリング履歴部11と設計情
報作成部12は従来とほぼ同様に構成されている。本実
施形態の統計情報計算部7は、設計情報作成部12内の
実行順序格納部4に格納された各トランザクションごと
のSQLの実行順序と、モニタリング履歴部11内の実
行履歴格納部6に格納された各ユーザごとのSQLの実
行履歴とを組み合わせてパターンマッチングを行い、各
トランザクションごとのSQL実行履歴を作成し、この
SQL実行履歴に基づいて各トランザクションの統計情
報を計算する。そして、統計情報の計算結果を表示装置
9に表示する。
する図である。図4のモニタリング履歴部11と設計情
報作成部12は従来とほぼ同様に構成されている。本実
施形態の統計情報計算部7は、設計情報作成部12内の
実行順序格納部4に格納された各トランザクションごと
のSQLの実行順序と、モニタリング履歴部11内の実
行履歴格納部6に格納された各ユーザごとのSQLの実
行履歴とを組み合わせてパターンマッチングを行い、各
トランザクションごとのSQL実行履歴を作成し、この
SQL実行履歴に基づいて各トランザクションの統計情
報を計算する。そして、統計情報の計算結果を表示装置
9に表示する。
【0024】図5は本実施形態のデータベース・チュー
ニング装置の処理動作を示すフローチャートである。ま
た、図6は、ユーザaがアプリケーションA(アプリ
A)を介して、「本の貸出」というトランザクションを
実行する例を示す図である。以下、図5および図6を用
いて、本実施形態のデータベース・チューニング装置の
動作を説明する。
ニング装置の処理動作を示すフローチャートである。ま
た、図6は、ユーザaがアプリケーションA(アプリ
A)を介して、「本の貸出」というトランザクションを
実行する例を示す図である。以下、図5および図6を用
いて、本実施形態のデータベース・チューニング装置の
動作を説明する。
【0025】まず、図6のシステム設計ツール1は、図
書管理システムのトランザクションと、そのトランザク
ションに対応するSQL処理との定義を記述した設計情
報を作成する(ステップS1)。
書管理システムのトランザクションと、そのトランザク
ションに対応するSQL処理との定義を記述した設計情
報を作成する(ステップS1)。
【0026】図6の設計情報は、ノードレベルに「本の
貸出」というトランザクションがあり、リーフレベル
に、「ログイン」、「本の検索」、および「本の貸出」
というトランザクションがある。また、リーフレベルに
は、各トランザクションが実行するSQLが記述されて
いる。
貸出」というトランザクションがあり、リーフレベル
に、「ログイン」、「本の検索」、および「本の貸出」
というトランザクションがある。また、リーフレベルに
は、各トランザクションが実行するSQLが記述されて
いる。
【0027】次に、図1の実行順序抽出部3は、システ
ム設計ツール1が作成した設計情報からトランザクショ
ンとSQLとの対応関係を抽出し、各トランザクション
が実行する子トランザクションとSQLとの関係を階層
的に表した木構造(図3を参照)を作成する(ステップ
S2)。この木構造は、実行順序格納部4に格納される
(ステップS3)。
ム設計ツール1が作成した設計情報からトランザクショ
ンとSQLとの対応関係を抽出し、各トランザクション
が実行する子トランザクションとSQLとの関係を階層
的に表した木構造(図3を参照)を作成する(ステップ
S2)。この木構造は、実行順序格納部4に格納される
(ステップS3)。
【0028】一方、DBMS5が実行したSQLの実行履歴
(実行ログ)は、DBMS5のモニタリングツールにより実
行履歴格納部6に格納される。その際、図6に示すよう
に、SQLが実行時間順にソートされて格納される。図
6では、SQL1〜SQL4等が実行時間順にソートさ
れている様子を示している。
(実行ログ)は、DBMS5のモニタリングツールにより実
行履歴格納部6に格納される。その際、図6に示すよう
に、SQLが実行時間順にソートされて格納される。図
6では、SQL1〜SQL4等が実行時間順にソートさ
れている様子を示している。
【0029】統計情報計算部7は、実行順序格納部4に
格納されている木構造と実行履歴格納部6に格納されて
いるSQLの実行履歴とをパターンマッチングする(ス
テップS4)。
格納されている木構造と実行履歴格納部6に格納されて
いるSQLの実行履歴とをパターンマッチングする(ス
テップS4)。
【0030】SQLの実行履歴に対応するトランザクシ
ョンがあれば、そのSQLを確定済みとし、そのトラン
ザクションをトランザクションの履歴情報に追加する。
この操作を繰り返して行い、未確定のSQLの実行履歴
とそれに対応するトランザクションを見つけて、トラン
ザクションの履歴情報に追加していく。なお、実行され
たSQLに該当するトランザクションがなければ、該当
トランザクションがなしとして取り扱う。
ョンがあれば、そのSQLを確定済みとし、そのトラン
ザクションをトランザクションの履歴情報に追加する。
この操作を繰り返して行い、未確定のSQLの実行履歴
とそれに対応するトランザクションを見つけて、トラン
ザクションの履歴情報に追加していく。なお、実行され
たSQLに該当するトランザクションがなければ、該当
トランザクションがなしとして取り扱う。
【0031】リーフレベルの処理が終了すると、次に、
ノードレベルについても、DBMS5のトランザクションの
実行順序と、ノードレベルのトランザクションの実行順
序とをパターンマッチングし、両者が一致すれば、その
トランザクションをトランザクションの履歴情報に追加
する。
ノードレベルについても、DBMS5のトランザクションの
実行順序と、ノードレベルのトランザクションの実行順
序とをパターンマッチングし、両者が一致すれば、その
トランザクションをトランザクションの履歴情報に追加
する。
【0032】例えば、図6の場合、リーフレベルのSQ
Lのパターンニングが終了した時点で、トランザクショ
ンの履歴情報には、ログイン処理、本の検索、本の貸出
の順にトランザクションが追加されている。このトラン
ザクション履歴とノードレベルのトランザクション情報
とのパターンマッチングを行うと、本の貸出処理と一致
するため、トランザクションの履歴情報に本の貸出処理
が追加される。
Lのパターンニングが終了した時点で、トランザクショ
ンの履歴情報には、ログイン処理、本の検索、本の貸出
の順にトランザクションが追加されている。このトラン
ザクション履歴とノードレベルのトランザクション情報
とのパターンマッチングを行うと、本の貸出処理と一致
するため、トランザクションの履歴情報に本の貸出処理
が追加される。
【0033】以上の処理をノードレベル内のすべてのト
ランザクションについて行う。これにより、実行された
トランザクションとSQLとの関係を階層的に表した木
構造が作成される(ステップS5)。この木構造を用い
て、統計情報計算部7は、トランザクション単位で各S
QLの統計情報を計算する(ステップS6)。
ランザクションについて行う。これにより、実行された
トランザクションとSQLとの関係を階層的に表した木
構造が作成される(ステップS5)。この木構造を用い
て、統計情報計算部7は、トランザクション単位で各S
QLの統計情報を計算する(ステップS6)。
【0034】より詳細に説明すると、統計情報計算部7
は、DBMS5の実行ログに基づいて、各SQLごとに、実
行時間、データ読み込み量、データ書き込み量、および
キャッシュヒット率等の統計情報をそれぞれ個別に加算
する。加算処理が終了すると、各SQLごとにキャッシ
ュヒット率をSQL数で割ってキャッシュヒット率の平
均値を演算する。これにより、トランザクション単位で
各SQLの統計情報が計算される(ステップS6)。ノ
ードレベルついても同様に、各トランザクションの統計
情報を計算する。
は、DBMS5の実行ログに基づいて、各SQLごとに、実
行時間、データ読み込み量、データ書き込み量、および
キャッシュヒット率等の統計情報をそれぞれ個別に加算
する。加算処理が終了すると、各SQLごとにキャッシ
ュヒット率をSQL数で割ってキャッシュヒット率の平
均値を演算する。これにより、トランザクション単位で
各SQLの統計情報が計算される(ステップS6)。ノ
ードレベルついても同様に、各トランザクションの統計
情報を計算する。
【0035】すべてのSQLおよびトランザクションの
統計情報が得られると、これら統計情報を表示装置9に
表示した後(ステップS7)、再度、ステップS4以降
の処理を行う。
統計情報が得られると、これら統計情報を表示装置9に
表示した後(ステップS7)、再度、ステップS4以降
の処理を行う。
【0036】図6は最適化手法の従来例を示す図であ
り、DBMS5の実行履歴から各ユーザのSQLの実行結果
の情報を取り出す例を示している。従来は、問題のある
SQL文を見つけて、性能改善を行っていた。この手法
だと、問題のあるSQLがどの処理のものかが分から
ず、その前後関係が分からないので、SQLごとにばら
ばらに性能改善を行うことになり、効率的ではない。
り、DBMS5の実行履歴から各ユーザのSQLの実行結果
の情報を取り出す例を示している。従来は、問題のある
SQL文を見つけて、性能改善を行っていた。この手法
だと、問題のあるSQLがどの処理のものかが分から
ず、その前後関係が分からないので、SQLごとにばら
ばらに性能改善を行うことになり、効率的ではない。
【0037】これに対して、本実施形態は、SQLより
上の階層の処理レベルでまとめたものから実行履歴を調
べることにより、性能改善作業の効率化を図っている。
上の階層の処理レベルでまとめたものから実行履歴を調
べることにより、性能改善作業の効率化を図っている。
【0038】図8は表示装置9に表示される統計情報の
一例を示す図である。図8において、各SQLは処理ご
とに階層的な構成となっており、SQL実行IDのSQL1
〜SQL4は、図6の本の貸し出し処理の各処理に属する。
一例を示す図である。図8において、各SQLは処理ご
とに階層的な構成となっており、SQL実行IDのSQL1
〜SQL4は、図6の本の貸し出し処理の各処理に属する。
【0039】図8の画面左側には、トランザクションの
階層関係がツリー状に表示され、画面右側には、各トラ
ンザクションごとに処理時間が棒グラフで表示される。
画面左側に表示されたトランザクションの中から、任意
のトランザクションをマウス等で選択すれば、選択した
トランザクションの統計情報、例えば、各SQLの処理
時間等が画面右側に表示される。
階層関係がツリー状に表示され、画面右側には、各トラ
ンザクションごとに処理時間が棒グラフで表示される。
画面左側に表示されたトランザクションの中から、任意
のトランザクションをマウス等で選択すれば、選択した
トランザクションの統計情報、例えば、各SQLの処理
時間等が画面右側に表示される。
【0040】表示装置9の表示は、図5の処理を繰り返
すたびに更新される。また、トランザクションとSQL
との対応関係を示す木構造に変更が生じると、トランザ
クションの統計情報が更新されるとともに、表示装置9
の左半分に表示されるツリー構造も変更される。
すたびに更新される。また、トランザクションとSQL
との対応関係を示す木構造に変更が生じると、トランザ
クションの統計情報が更新されるとともに、表示装置9
の左半分に表示されるツリー構造も変更される。
【0041】このように、本実施形態は、システム設計
ツール1が作成した設計情報に基づいて各トランザクシ
ョンごとのSQLの実行順序を抽出し、この抽出結果と
DBMS5のSQLの実行履歴とをマッチングさせて、トラ
ンザクション単位でのSQLの統計情報(例えば、SQ
L処理時間など)を算出して表示するようにしたため、
各SQLの利用状況をトランザクション単位で解析する
ことができる。
ツール1が作成した設計情報に基づいて各トランザクシ
ョンごとのSQLの実行順序を抽出し、この抽出結果と
DBMS5のSQLの実行履歴とをマッチングさせて、トラ
ンザクション単位でのSQLの統計情報(例えば、SQ
L処理時間など)を算出して表示するようにしたため、
各SQLの利用状況をトランザクション単位で解析する
ことができる。
【0042】また、本実施形態では、図5の処理を定期
的に繰り返し行うため、各トランザクションのSQLの
実行履歴を定期的にチェックすることができる。特に、
本実施形態の場合、チェック結果を棒グラフのようにわ
かりやすい形態で表示するため、各SQLの利用情報を
一目で把握することができる。これにより、利用頻度が
極端に高いSQLを他のSQLに振り分けたり、全く使
用されないSQLを除去する等のデータベースのチュー
ニングが行いやすくなる。
的に繰り返し行うため、各トランザクションのSQLの
実行履歴を定期的にチェックすることができる。特に、
本実施形態の場合、チェック結果を棒グラフのようにわ
かりやすい形態で表示するため、各SQLの利用情報を
一目で把握することができる。これにより、利用頻度が
極端に高いSQLを他のSQLに振り分けたり、全く使
用されないSQLを除去する等のデータベースのチュー
ニングが行いやすくなる。
【0043】上述した実施形態では、SQLの処理時間
やキャッシュヒット率をトランザクションの統計情報の
一例として挙げているが、統計情報はこれらに限定され
ない。
やキャッシュヒット率をトランザクションの統計情報の
一例として挙げているが、統計情報はこれらに限定され
ない。
【0044】上述した実施形態では、トランザクション
単位でSQLの統計情報を表示装置9に表示する例を示
しているが、表示装置9に表示する代わりに、あるいは
表示装置9に表示するとともに、プリンタ等に統計情報
を出力してもよい。
単位でSQLの統計情報を表示装置9に表示する例を示
しているが、表示装置9に表示する代わりに、あるいは
表示装置9に表示するとともに、プリンタ等に統計情報
を出力してもよい。
【0045】なお、図1に示すデータベース・チューニ
ング装置は、ハードウェアで構成してもソフトウェアで
構成してもよい。ソフトウェアで構成する場合には、デ
ータベース・チューニング装置の機能を実行するプログ
ラムをフロッピーディスクやCD−ROM等の記録媒体
に収納し、コンピュータに読み込ませて実行させればよ
い。記録媒体は、磁気ディスクや光ディスク等の携帯可
能なものに限定されず、ハードディスク装置やメモリな
どの固定型の記録媒体でもよい。また、この種のプログ
ラムを、インターネット等の通信回線(無線通信も含
む)を介して頒布してもよい。その際、プログラムを暗
号化したり、変調をかけたり、圧縮した状態で、インタ
ーネット等の有線回線や無線回線を介して、あるいは記
録媒体に収納して頒布してもよい。
ング装置は、ハードウェアで構成してもソフトウェアで
構成してもよい。ソフトウェアで構成する場合には、デ
ータベース・チューニング装置の機能を実行するプログ
ラムをフロッピーディスクやCD−ROM等の記録媒体
に収納し、コンピュータに読み込ませて実行させればよ
い。記録媒体は、磁気ディスクや光ディスク等の携帯可
能なものに限定されず、ハードディスク装置やメモリな
どの固定型の記録媒体でもよい。また、この種のプログ
ラムを、インターネット等の通信回線(無線通信も含
む)を介して頒布してもよい。その際、プログラムを暗
号化したり、変調をかけたり、圧縮した状態で、インタ
ーネット等の有線回線や無線回線を介して、あるいは記
録媒体に収納して頒布してもよい。
【0046】
【発明の効果】以上詳細に説明したように、本発明によ
れば、データベースに対して実行された関数型言語の統
計情報を、トランザクション単位でまとめて表示するよ
うにしたため、それぞれの関数型言語の利用状況をトラ
ンザクションごとに解析することができる。これによ
り、関数型言語の重複部分を除去したり、利用頻度が極
端に高い関数型言語を他の関数型言語に振り分けたり、
関数型言語の順番の入れ替え等が可能になる。
れば、データベースに対して実行された関数型言語の統
計情報を、トランザクション単位でまとめて表示するよ
うにしたため、それぞれの関数型言語の利用状況をトラ
ンザクションごとに解析することができる。これによ
り、関数型言語の重複部分を除去したり、利用頻度が極
端に高い関数型言語を他の関数型言語に振り分けたり、
関数型言語の順番の入れ替え等が可能になる。
【図1】本発明に係るデータベース・チューニング装置
の一実施形態のブロック図。
の一実施形態のブロック図。
【図2】システム設計ツールが作成する設計情報の一例
を示す図。
を示す図。
【図3】実行順序抽出部が作成する木構造の一例を示す
図。
図。
【図4】統計情報計算部の処理動作を説明する図。
【図5】本実施形態のデータベース・チューニング装置
の処理動作を示すフローチャート。
の処理動作を示すフローチャート。
【図6】「本の貸出」というトランザクションを実行す
る例を示す図。
る例を示す図。
【図7】最適化手法の従来例を示す図。
【図8】表示装置に表示される統計情報の一例を示す
図。
図。
1 システム設計ツール 2 設計情報格納部 3 実行順序抽出部 4 実行順序格納部 5 DBMS 6 実行履歴格納部 7 統計情報格納部 8 統計情報格納部 9 表示装置
Claims (6)
- 【請求項1】検索の条件を記述した関数型言語(SQL:Str
uctured Query Language)を少なくとも一つ含むトラン
ザクションを単位としてデータベースの検索が可能であ
り、前記データベースの検索を高速化するためにチュー
ニングを行うデータベース・チューニング装置におい
て、 前記トランザクションのそれぞれごとに、前記関数型言
語の実行順序を抽出する実行順序抽出手段と、 前記データベースに対する前記関数型言語の実行履歴を
抽出する実行履歴抽出手段と、 前記実行順序抽出手段により抽出された実行順序と、前
記実行履歴抽出手段により抽出された実行履歴とに基づ
いて、前記トランザクション単位で前記関数型言語の統
計情報を算出する統計情報算出手段と、を備えることを
特徴とするデータベース・チューニング装置。 - 【請求項2】前記統計情報算出手段は、前記実行順序抽
出手段による抽出結果と前記実行履歴抽出手段による抽
出結果とに基づいて、前記関数型言語のパターンマッチ
ングを行い、このパターンマッチング結果に基づいて、
実行された前記関数型言語に対応する前記トランザクシ
ョンを特定することを特徴とする請求項1に記載のデー
タベース・チューニング装置。 - 【請求項3】前記統計情報算出手段により算出された統
計情報を、前記トランザクション単位で出力する出力手
段を備えることを特徴とする請求項1または2に記載の
データベース・チューニング装置。 - 【請求項4】前記統計情報算出手段により算出される前
記統計情報は、前記関数型言語の実行時間、前記データ
ベースへのアクセス時間、および前記データベースに付
属して設けられるデータキャッシュへのキャッシュヒッ
ト率の少なくとも一つを含むことを特徴とする請求項1
〜3のいずれかに記載のデータベース・チューニング装
置。 - 【請求項5】検索の条件を記述した関数型言語(SQL:Str
uctured Query Language)を少なくとも一つ含むトラン
ザクションを単位としてデータベースの検索が可能であ
り、前記データベースの検索を高速化するためにチュー
ニングを行うデータベース・チューニング方法におい
て、 前記トランザクションのそれぞれごとに、前記関数型言
語の実行順序を抽出する第1ステップと、 前記データベースに対する前記関数型言語の実行履歴を
抽出する第2ステップと、 前記第1ステップにより抽出された実行順序と、前記第
2ステップにより抽出された実行履歴とに基づいて、前
記トランザクション単位で前記関数型言語の統計情報を
算出する第3ステップと、を備えることを特徴とするデ
ータベース・チューニング方法。 - 【請求項6】検索の条件を記述した関数型言語(SQL:Str
uctured Query Language)を少なくとも一つ含むトラン
ザクションを単位としてデータベースの検索が可能であ
り、前記データベースの検索を高速化するためにチュー
ニングを行うプログラムを記録したコンピュータ読み取
り可能な記録媒体において、 前記トランザクションのそれぞれごとに、前記関数型言
語の実行順序を抽出する第1ステップと、 前記データベースに対する前記関数型言語の実行履歴を
抽出する第2ステップと、 前記第1ステップにより抽出された実行順序と、前記第
2ステップにより抽出された実行履歴とに基づいて、前
記トランザクション単位で前記関数型言語の統計情報を
算出する第3ステップと、を備えるプログラムを記録し
たコンピュータ読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP36134599A JP2001175678A (ja) | 1999-12-20 | 1999-12-20 | データベース・チューニング装置、データベース・チューニング方法、および記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP36134599A JP2001175678A (ja) | 1999-12-20 | 1999-12-20 | データベース・チューニング装置、データベース・チューニング方法、および記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001175678A true JP2001175678A (ja) | 2001-06-29 |
Family
ID=18473205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP36134599A Pending JP2001175678A (ja) | 1999-12-20 | 1999-12-20 | データベース・チューニング装置、データベース・チューニング方法、および記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001175678A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007132547A1 (ja) * | 2006-05-16 | 2007-11-22 | Fujitsu Limited | 業務モデル生成プログラム、業務モデル生成方法および業務モデル生成装置 |
JP2009529735A (ja) * | 2006-03-14 | 2009-08-20 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データベース・システムにおける統計ビューの管理 |
JP2010250450A (ja) * | 2009-04-13 | 2010-11-04 | Fujitsu Ltd | データベース・メッセージ分析支援プログラム、方法及び装置 |
WO2017183065A1 (ja) | 2016-04-19 | 2017-10-26 | 株式会社シスバンク | リレーショナルデータベースのチューニング装置及び方法 |
KR20190022434A (ko) * | 2017-02-20 | 2019-03-06 | 핑안 테크놀로지 (션젼) 컴퍼니 리미티드 | 데이터베이스 시스템의 최적화 방법, 시스템, 전자장치 및 저장매체 |
JP2019169087A (ja) * | 2018-03-26 | 2019-10-03 | 日本電気株式会社 | 情報集約装置、情報集約方法、及び、プログラム |
-
1999
- 1999-12-20 JP JP36134599A patent/JP2001175678A/ja active Pending
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009529735A (ja) * | 2006-03-14 | 2009-08-20 | インターナショナル・ビジネス・マシーンズ・コーポレーション | データベース・システムにおける統計ビューの管理 |
WO2007132547A1 (ja) * | 2006-05-16 | 2007-11-22 | Fujitsu Limited | 業務モデル生成プログラム、業務モデル生成方法および業務モデル生成装置 |
JPWO2007132547A1 (ja) * | 2006-05-16 | 2009-09-17 | 富士通株式会社 | 業務モデル生成プログラムおよび業務モデル生成方法 |
JP4704461B2 (ja) * | 2006-05-16 | 2011-06-15 | 富士通株式会社 | 業務モデル生成プログラム、業務モデル生成方法および業務モデル生成装置 |
JP2010250450A (ja) * | 2009-04-13 | 2010-11-04 | Fujitsu Ltd | データベース・メッセージ分析支援プログラム、方法及び装置 |
US8224834B2 (en) | 2009-04-13 | 2012-07-17 | Fujitsu Limited | Database message analysis support technique |
WO2017183065A1 (ja) | 2016-04-19 | 2017-10-26 | 株式会社シスバンク | リレーショナルデータベースのチューニング装置及び方法 |
US10216773B2 (en) | 2016-04-19 | 2019-02-26 | Sysbank Co., Ltd. | Apparatus and method for tuning relational database |
KR20190022434A (ko) * | 2017-02-20 | 2019-03-06 | 핑안 테크놀로지 (션젼) 컴퍼니 리미티드 | 데이터베이스 시스템의 최적화 방법, 시스템, 전자장치 및 저장매체 |
JP2019508774A (ja) * | 2017-02-20 | 2019-03-28 | 平安科技(深▲せん▼)有限公司 | データベースシステム最適化の方法、システム、電子装置及び記憶媒体 |
KR102141083B1 (ko) | 2017-02-20 | 2020-08-05 | 핑안 테크놀로지 (션젼) 컴퍼니 리미티드 | 데이터베이스 시스템의 최적화 방법, 시스템, 전자장치 및 저장매체 |
JP2019169087A (ja) * | 2018-03-26 | 2019-10-03 | 日本電気株式会社 | 情報集約装置、情報集約方法、及び、プログラム |
JP7119484B2 (ja) | 2018-03-26 | 2022-08-17 | 日本電気株式会社 | 情報集約装置、情報集約方法、及び、プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11119834B2 (en) | Artificial creation of dominant sequences that are representative of logged events | |
Goethals et al. | FIMI’03: Workshop on frequent itemset mining implementations | |
US7739297B2 (en) | Computerized method, system and program product for generating a data mining model | |
US7493304B2 (en) | Adjusting an amount of data logged for a query based on a change to an access plan | |
JP4688111B2 (ja) | 情報処理装置、データベース・システム、情報処理方法、およびプログラム | |
WO2017183065A1 (ja) | リレーショナルデータベースのチューニング装置及び方法 | |
JP4997856B2 (ja) | データベース分析プログラム、データベース分析装置、データベース分析方法 | |
US7743052B2 (en) | Method and apparatus for projecting the effect of maintaining an auxiliary database structure for use in executing database queries | |
US20110060753A1 (en) | Methods for effective processing of time series | |
CN104769586A (zh) | 采用位置信息剖析数据 | |
CN107423202A (zh) | 事件解析装置、事件解析系统、事件解析方法及事件解析程序 | |
US11803865B2 (en) | Graph based processing of multidimensional hierarchical data | |
JP5535062B2 (ja) | ウェブログの時系列分析のためのデータ格納および照会方法及びその方法を実行するシステム | |
Khalil et al. | A framework of combining Markov model with association rules for predicting web page accesses | |
CN112634004B (zh) | 征信数据的血缘图谱分析方法与系统 | |
JP2001175678A (ja) | データベース・チューニング装置、データベース・チューニング方法、および記録媒体 | |
CN111984625B (zh) | 数据库负载特征处理方法、装置、介质和电子设备 | |
US20150134660A1 (en) | Data clustering system and method | |
Umarani et al. | A study on effective mining of association rules from huge databases | |
CN115712684B (zh) | 一种物联网中物品动态信息的存储方法及系统 | |
Ameri et al. | On a new approach to the index selection problem using mining algorithms | |
Man et al. | Frequent itemset mining: Technique to improve ECLAT based algorithm | |
JP2012212304A (ja) | 検索結果出力装置および検索結果出力制御プログラムと検索結果出力方法 | |
US20040220901A1 (en) | System and method for association itemset mining | |
Dubey et al. | Comparative Study of Frequent Item Set in Data Mining |