JP4810113B2 - Database tuning apparatus, database tuning method, and program - Google Patents

Database tuning apparatus, database tuning method, and program Download PDF

Info

Publication number
JP4810113B2
JP4810113B2 JP2005093673A JP2005093673A JP4810113B2 JP 4810113 B2 JP4810113 B2 JP 4810113B2 JP 2005093673 A JP2005093673 A JP 2005093673A JP 2005093673 A JP2005093673 A JP 2005093673A JP 4810113 B2 JP4810113 B2 JP 4810113B2
Authority
JP
Japan
Prior art keywords
component
sql statement
name
storage unit
session
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.)
Expired - Fee Related
Application number
JP2005093673A
Other languages
Japanese (ja)
Other versions
JP2006277179A (en
Inventor
昇 横井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2005093673A priority Critical patent/JP4810113B2/en
Publication of JP2006277179A publication Critical patent/JP2006277179A/en
Application granted granted Critical
Publication of JP4810113B2 publication Critical patent/JP4810113B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、データベースアクセスのチューニング技術に関し、特に、サービス単位でデータベースアクセスをモニタリングし、モニタリング結果に基づいてデータベースアクセスをチューニングするチューニング技術に関する。   The present invention relates to a database access tuning technique, and more particularly to a tuning technique for monitoring database access in service units and tuning database access based on the monitoring result.

従来からデータベースシステムにおいては、データベースアクセスをモニタリングし、モニタリング結果に基づいてデータベースアクセスをチューニングするということが行われている。   Conventionally, in a database system, database access is monitored, and database access is tuned based on the monitoring result.

従来のこの種の技術としては、例えば、リレーショナルデータベースと、SQL(Structured Query Language)によるデータアクセスを可能にする実行部と、リレーショナルデータベースの動作状況を監視する監視部と、監視部による監視結果を統計情報として格納する統計情報部と、SQLを使用したプログラムのソースコードと、ソースコードを実行形式のプログラムに変換するコンパイラと、リレーショナルデータベースを定義するインデックスを含むスクリプトと、リレーショナルデータベースの動作を制御するパラメタと、上記統計情報部に格納された統計情報を評価データベースを用いて評価し、その評価結果に基づいて、上記ソースコード、スクリプト及びパラメタの内の少なくとも1つを改善のために書き換える評価部を備えたものが知られている(例えば、特許文献1参照)。   Conventional technologies of this type include, for example, a relational database, an execution unit that enables data access using SQL (Structured Query Language), a monitoring unit that monitors the operation status of the relational database, and a monitoring result by the monitoring unit. Controls the statistical information section to store as statistical information, the source code of the program using SQL, the compiler that converts the source code into an executable program, the script that includes the index that defines the relational database, and the operation of the relational database Evaluation to evaluate the statistical information stored in the statistical information section using the evaluation database, and rewrite at least one of the source code, script and parameters for improvement based on the evaluation result The one with the part Are (e.g., see Patent Document 1).

また、データベースアクセスに対するモニタリング技術として、SQL文単位でクライアントからデータベースサーバに問い合わせが届くまでの時間、データベースサーバにおける処理時間、ディスクI/O時間、データベースサーバからクライアントに結果が届くまでの時間をモニタリングする技術も従来から知られている(例えば、特許文献2参照)。   In addition, as a monitoring technology for database access, the time until an inquiry is received from the client to the database server, the processing time at the database server, the disk I / O time, and the time until the result arrives from the database server to the client is monitored for each SQL statement. The technique to do is also known conventionally (for example, refer patent document 2).

また、データベースに対するモニタリング,チューニング技術ではないが、サービス単位で処理時間を算出する技術も知られている(例えば、特許文献3参照)。
特開2002−366402号公報 特開2004−5085号公報 特開平6−243097号公報
In addition, a technique for calculating a processing time for each service is known, although it is not a monitoring and tuning technique for a database (see, for example, Patent Document 3).
JP 2002-366402 A JP 2004-5085 A JP-A-6-243097

上述したように、特許文献1,2に記載されている従来の技術は、SQL文単位(データベースアクセス単位)で、モニタリングやチューニングを行っているため、チューニング箇所の絞り込みに時間がかかるという問題点があると共に、チューニング作業が多くのサービスに悪影響を及ぼす可能性があるという問題があった。   As described above, since the conventional techniques described in Patent Documents 1 and 2 perform monitoring and tuning in SQL statement units (database access units), it takes time to narrow down tuning points. In addition, there is a problem that the tuning work may adversely affect many services.

例えば、高速処理が要求されないサービスでのみ用いられるSQL文があった場合、上記SQL文の処理に時間がかかったとしても、上記SQL文をチューニング(変更)する必要はない。しかし、SQL文単位でモニタリングを行っている場合は、管理者などが人手で、上記SQL文を用いているサービスとしてはどのようなサービスがあるのかを調べ、更に、そのサービスが高速処理を要求しているサービスなのか否かを調べなければ、上記SQL文に対してチューニングが必要であるか否かを判断できず、管理者などに多くの負担がかかってしまう。   For example, if there is an SQL statement that is used only in a service that does not require high-speed processing, it is not necessary to tune (change) the SQL statement even if processing of the SQL statement takes time. However, when monitoring is performed in units of SQL statements, the administrator or the like manually investigates what services are available as services that use the SQL statements, and those services require high-speed processing. If it is not checked whether the service is a service that is being performed, it is not possible to determine whether or not tuning is necessary for the above-mentioned SQL statement.

また、上記の例とは反対に、高速処理が要求されているサービスでのみ用いられるSQL文があった場合、もし、上記SQL文の処理に時間がかかるようであれば、直ちに上記SQL文をチューニングすることが必要になる。しかし、この場合も、管理者などが人手で、チューニングが必要であるか否かを判断しなければならないため、迅速なチューニング作業を行うことが困難である。   Contrary to the above example, if there is an SQL statement that is used only in a service that requires high-speed processing, if it takes time to process the SQL statement, immediately change the SQL statement. It becomes necessary to tune. However, in this case as well, it is difficult for a manager or the like to manually perform tuning work because it is necessary to determine whether tuning is necessary.

また、例えば、高速処理が要求されているサービスxと、高速処理が要求されていないサービスyとの両方から利用されるSQL文があった場合、もし、上記SQL文の処理に時間がかかるようであれば、上記SQL文をチューニングすることが必要になる。しかし、この場合も、管理者などが人手でチューニングが必要であるか否かを判断しなければならないため、迅速なチューニング作業を行うことが困難である。また、上記SQL文のチューニング作業時に、高速処理が要求されているサービスxに対して何らかの悪影響(例えば、サービスxが利用できなくなる)を及ぼすのは仕方がないとしても、高速処理が要求されていないサービスyに対しても悪影響を及ぼす可能性があるという問題もある。   Also, for example, if there is an SQL statement that is used by both the service x for which high-speed processing is requested and the service y for which high-speed processing is not requested, it will take time to process the SQL statement. If so, it is necessary to tune the SQL statement. However, in this case as well, it is difficult for a manager or the like to determine whether or not tuning is necessary manually, so that quick tuning work is difficult. Further, at the time of tuning the SQL statement, high speed processing is required even if it is unavoidable to have some adverse effect on the service x for which high speed processing is required (for example, the service x cannot be used). There is also a problem that there is a possibility of adversely affecting the service y that is not present.

〔発明の目的〕
そこで、本発明の目的は、データベースアクセスに対するモニタリング及びチューニングをサービス単位で行えるようにすることにある。
(Object of invention)
Accordingly, an object of the present invention is to enable monitoring and tuning for database access in units of services.

本発明にかかる第1のデータベースチューニング装置は、
コンポーネント制御情報格納部と、
統計情報格納部と、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部と、
利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントのコンポーネント名と前記サービス名とに対応付けて前記コンポーネント制御情報格納部に変更SQL文が格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に、前記利用者端末との間のセッションID及び前記サービス名によって特定される統計情報として前記変更SQL文、その処理時間および前記コンポーネント名を追加し、変更SQL文が格納されていない場合は、前記コンポーネント中のSQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に、前記セッションID及び前記サービス名によって特定される統計情報として前記SQL文、その処理時間および前記コンポーネント名を追加するデータベースアクセス手段とを備えたことを特徴とする。
The first database tuning apparatus according to the present invention is:
A component control information storage unit;
A statistical information storage unit;
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit A tuning control unit;
When a processing request including a service name is input from a user terminal, each component constituting the service specified by the service name is executed, and the component control is associated with the component name of the component and the service name. When a change SQL statement is stored in the information storage unit, database access is performed according to the change SQL statement, and the statistical information storage unit is specified by a session ID with the user terminal and the service name. The modified SQL statement, its processing time, and the component name are added as statistical information, and if the modified SQL statement is not stored, the database is accessed according to the SQL statement in the component and the statistical information storage unit , The session ID and the service Characterized by comprising the SQL statement as the statistical information specified and a database access unit for adding the processing time and the component name by.

本発明にかかる第2のデータベースチューニング装置は、
コンポーネント制御情報格納部と、
統計情報格納部と、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部と、
利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントに含まれるSQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力すると共に、前記セッションIDおよび前記サービス名からなるセッション情報を含んだ統計情報を前記統計情報格納部に格納するコンポーネント実行制御部と、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、前記データベースアクセス要求に含まれているSQL文に対する変更SQL文が前記コンポーネント制御情報格納部に格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記変更SQL文、その処理時間および前記データベースアクセス要求に含まれているコンポーネント名を追加し、前記データベースアクセス要求に含まれているSQL文に対応する変更SQL文が前記コンポーネント制御情報格納部に格納されていない場合は、前記SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記SQL文、その処理時間および前記データベースアクセス要求に含まれているコンポーネント名を追加するデータベースアクセス制御部とを備えたことを特徴とする。
The second database tuning apparatus according to the present invention is:
A component control information storage unit;
A statistical information storage unit;
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit A tuning control unit;
When a processing request including a service name is input from a user terminal, each component constituting the service specified by the service name is executed, and the SQL statement included in the component, the component name of the component, the user A database access request including a session ID for identifying a session with a terminal and a service name in the processing request is output, and statistical information including session information including the session ID and the service name is stored in the statistical information storage unit A component execution control unit to store;
When a database access request is output from the component execution control unit, if a change SQL statement for the SQL statement included in the database access request is stored in the component control information storage unit, according to the change SQL statement In addition to performing database access, the statistical information whose session information matches the session ID and service name in the database access request in the statistical information stored in the statistical information storage unit is changed to the changed SQL statement and its processing If the time and the component name included in the database access request are added, and the change SQL statement corresponding to the SQL statement included in the database access request is not stored in the component control information storage unit, Follow the SQL statement In addition to performing base access, the statistical information in which the session information matches the session ID and the service name in the database access request in the statistical information stored in the statistical information storage unit is included in the SQL statement and the processing time. And a database access control unit for adding a component name included in the database access request.

本発明にかかる第3のデータベースチューニング装置は、
サービス名を含むサービス情報に対応付けて、前記サービス名によって特定されるサービスを構成する複数のコンポーネントそれぞれのコンポーネント情報であって、コンポーネントを特定するコンポーネント名を含むコンポーネント情報が格納されたコンポーネント制御情報格納部と、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示に従って、前記コンポーネント制御情報格納部に格納されているコンポーネント情報の内の該当するコンポーネント情報に前記変更SQL文を追加するモニタリング/チューニング制御部と、
統計情報格納部と、
利用者端末からサービス名を含む処理要求が入力されたとき、前記コンポーネント制御情報格納部を参照して前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントに含まれるSQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力すると共に、前記セッションIDおよび前記サービス名からなるセッション情報を含んだ統計情報を前記統計情報格納部に格納するコンポーネント実行制御部と、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、前記コンポーネント制御情報格納部に格納されているコンポーネント情報の内の、前記データベースアクセス要求によって特定されるコンポーネント情報に変更SQL文が含まれている場合は、該変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記変更SQL文、その処理時間および前記データベースアクセス要求中のコンポーネント名を追加し、変更SQL文が含まれていない場合は、前記データベースアクセス要求に含まれているSQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に前記SQL文、その処理時間および前記データベースアクセス要求中のコンポーネント名を追加するデータベースアクセス制御部とを備えたことを特徴とする。
The third database tuning apparatus according to the present invention is:
Component control information in which component information including a component name for identifying a component is stored in association with service information including a service name, which is component information of each of a plurality of components constituting the service identified by the service name. A storage unit;
Monitoring / adding the changed SQL statement to the corresponding component information in the component information stored in the component control information storage unit according to the SQL statement change instruction including the service name, the component name, and the changed SQL statement after the change A tuning control unit;
A statistical information storage unit;
When a processing request including a service name is input from a user terminal, each component constituting the service specified by the service name is executed with reference to the component control information storage unit, and an SQL statement included in the component is executed. A database access request including a component name of the component, a session ID for specifying a session with the user terminal, and a service name in the processing request, and includes session information including the session ID and the service name. A component execution control unit for storing statistical information in the statistical information storage unit,
When a database access request is output from the component execution control unit, a change SQL statement is included in the component information specified by the database access request among the component information stored in the component control information storage unit If the database information is accessed according to the changed SQL statement, the statistical information in the statistical information stored in the statistical information storage unit matches the session ID and service name in the database access request. The change SQL statement, its processing time, and the name of the component in the database access request are added, and if the change SQL statement is not included, the database is accessed according to the SQL statement included in the database access request. When Among the statistical information stored in the statistical information storage unit, the SQL statement, its processing time, and the database access request are added to the statistical information whose session information matches the session ID and service name in the database access request. And a database access control unit for adding a component name therein.

本発明にかかる第4のデータベースチューニング装置は、
コンポーネント制御情報格納部と、
統計情報格納部と、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部と、
利用者端末からサービス名を含む処理要求が入力されたとき、前記利用者端末とのセッションを特定するセッションIDと前記サービス名とからなるセッション情報を含んだ統計情報を前記統計情報格納部に格納する処理を行うと共に、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、SQL文が変更されているコンポーネントについては、前記コンポーネント制御情報格納部に格納されている該当する変更SQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力し、SQL文が変更されていないコンポーネントについては、前記SQL文、前記コンポーネントのコンポーネント名、前記セッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力する処理を行うコンポーネント実行制御部と、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、該データベースアクセス要求に含まれているSQL文或いは変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に前記SQL文或いは変更SQL文、その処理時間および前記データベースアクセス要求中のコンポーネント名を追加するデータベースアクセス制御部とを備えたことを特徴とする。
The fourth database tuning apparatus according to the present invention is:
A component control information storage unit;
A statistical information storage unit;
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit A tuning control unit;
When a processing request including a service name is input from a user terminal, statistical information including session information including a session ID for identifying a session with the user terminal and the service name is stored in the statistical information storage unit For each component in which the SQL statement is changed for each component constituting the service specified by the service name, the corresponding changed SQL statement stored in the component control information storage unit is executed. A database access request that includes a component name of the component, a session ID that identifies a session with the user terminal, and a service name in the processing request, and for the SQL statement that has not been changed, the SQL statement , Component of the component Name, and component execution control unit that performs processing for outputting a database access request including the service name in the session ID and the processing request,
When a database access request is output from the component execution control unit, the database is accessed according to the SQL statement or the modified SQL statement included in the database access request, and the statistical information stored in the statistical information storage unit A database access control unit for adding the SQL statement or the change SQL statement, its processing time, and the component name in the database access request to statistical information whose session information matches the session ID and service name in the database access request It is characterized by comprising.

本発明にかかる第5のデータベースチューニング装置は、
サービス名を含むサービス情報に対応付けて、前記サービス名によって特定されるサービスを構成する複数のコンポーネントそれぞれのコンポーネント情報であって、コンポーネントを特定するコンポーネント名を含むコンポーネント情報が格納されたコンポーネント制御情報格納部と、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示に従って、前記コンポーネント制御情報格納部に格納されているコンポーネント情報の内の該当するコンポーネント情報に前記変更SQL文を追加するモニタリング/チューニング制御部と、
統計情報格納部と、
利用者端末からサービス名を含む処理要求が入力されたとき、前記利用者端末とのセッションを特定するセッションIDと前記サービス名とからなるセッション情報を含んだ統計情報を前記統計情報格納部に格納する処理を行うと共に、前記コンポーネント制御情報格納部を参照して前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントに対応するコンポーネント情報に変更SQL文が含まれている場合は、該変更SQL文、前記コンポーネントのコンポーネント名、前記セッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力し、前記コンポーネント情報に変更SQL文が含まれていない場合は、前記コンポーネントに含まれるSQL文、前記コンポーネントのコンポーネント名、前記セッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力するコンポーネント実行制御部と、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、該データベースアクセス要求に含まれているSQL文或いは変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に前記SQL文或いは変更SQL文と、その処理時間と、前記データベースアクセス要求中のコンポーネント名とを追加するデータベースアクセス制御部とを備えたことを特徴とする。
The fifth database tuning apparatus according to the present invention is:
Component control information in which component information including a component name for identifying a component is stored in association with service information including a service name, which is component information of each of a plurality of components constituting the service identified by the service name. A storage unit;
Monitoring / adding the changed SQL statement to the corresponding component information in the component information stored in the component control information storage unit according to the SQL statement change instruction including the service name, the component name, and the changed SQL statement after the change A tuning control unit;
A statistical information storage unit;
When a processing request including a service name is input from a user terminal, statistical information including session information including a session ID for identifying a session with the user terminal and the service name is stored in the statistical information storage unit When each component constituting the service specified by the service name is executed with reference to the component control information storage unit, and the component information corresponding to the component includes a change SQL statement Outputs a database access request including the change SQL statement, the component name of the component, the session ID, and the service name in the processing request, and if the change SQL statement is not included in the component information, the component SQL statement included in the above-mentioned component Cement component name, and component execution control unit for outputting a database access request including the service name in the session ID and the processing request,
When a database access request is output from the component execution control unit, the database is accessed according to the SQL statement or the modified SQL statement included in the database access request, and the statistical information stored in the statistical information storage unit A database in which the SQL statement or the change SQL statement, its processing time, and the component name in the database access request are added to statistical information whose session information matches the session ID and service name in the database access request And an access control unit.

本発明にかかる第6のデータベースチューニング装置は、
コンポーネント制御情報格納部と、
統計情報格納部と、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部と、
利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントに含まれるSQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力すると共に、前記セッションIDおよび前記サービス名からなるセッション情報を含んだ統計情報を前記統計情報格納部に格納するコンポーネント実行制御部と、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、前記データベースアクセス要求に含まれているSQL文に対する変更SQL文が前記コンポーネント制御情報格納部に格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行い、前記データベースアクセス要求に含まれているSQL文に対応する変更SQL文が前記コンポーネント制御情報格納部に格納されていない場合は、前記SQL文に従ってデータベースアクセスを行うデータベースアクセス制御部とを備え、且つ、
且つ前記コンポーネント実行制御部で実行されているコンポーネントが、自コンポーネントに含まれているSQL文に対する変更SQL文が前記コンポーネント制御情報格納部に格納されている場合は、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に前記変更SQL文、その処理時間および自コンポーネントのコンポーネント名を追加し、自コンポーネントに含まれているSQL文に対する変更SQL文が前記コンポーネント制御情報格納部に格納されていない場合は、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記SQL文、その処理時間および自コンポーネントのコンポーネント名を追加する構成を有することを特徴とする。
A sixth database tuning apparatus according to the present invention is:
A component control information storage unit;
A statistical information storage unit;
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit A tuning control unit;
When a processing request including a service name is input from a user terminal, each component constituting the service specified by the service name is executed, and the SQL statement included in the component, the component name of the component, the user A database access request including a session ID for identifying a session with a terminal and a service name in the processing request is output, and statistical information including session information including the session ID and the service name is stored in the statistical information storage unit A component execution control unit to store;
When a database access request is output from the component execution control unit, if a change SQL statement for the SQL statement included in the database access request is stored in the component control information storage unit, according to the change SQL statement A database access control unit that performs database access and performs a database access according to the SQL statement when a change SQL statement corresponding to the SQL statement included in the database access request is not stored in the component control information storage unit; And comprising
In addition, the component executed by the component execution control unit is stored in the statistical information storage unit when a change SQL statement for the SQL statement included in the component is stored in the component control information storage unit. Among the statistical information, the modified SQL statement, its processing time, and the component name of its own component are added to the statistical information whose session information matches the session ID and service name in the database access request, and included in the own component If a change SQL statement for the SQL statement being stored is not stored in the component control information storage unit, the session information in the statistical information stored in the statistical information storage unit is the session for which the database access request is being made Statistics that match the ID and service name The distribution is characterized by having a structure of adding the SQL statement, the component name of the processing time and the own components.

本発明にかかる第7のデータベースチューニング装置は、第3または第5のデータベースチューニング装置において、
前記コンポーネント制御情報格納部に格納されている各サービス情報が、そのサービス情報によって特定されるサービスの許容処理時間を示すサービス閾値を含み、
前記モニタリング/チューニング制御部が、前記統計情報格納部に格納されている統計情報と、前記コンポーネント制御情報格納部に格納されている各サービス毎のサービス閾値とに基づいて、処理時間が該当するサービス閾値を超えたサービスの発生を検出する構成を有することを特徴とする。
A seventh database tuning apparatus according to the present invention is the third or fifth database tuning apparatus,
Each service information stored in the component control information storage unit includes a service threshold value indicating an allowable processing time of a service specified by the service information,
Services in which the monitoring / tuning control unit corresponds to the processing time based on the statistical information stored in the statistical information storage unit and the service threshold value for each service stored in the component control information storage unit It has the structure which detects generation | occurrence | production of the service exceeding a threshold value.

本発明にかかる第8のデータベースチューニング装置は、第7のデータベースチューニング装置において、
前記モニタリング/チューニング制御部が、処理時間が該当するサービス閾値を超えたサービスの発生を検出したとき、外部装置にそのことを通知するイベント処理部を備えたことを特徴とする
An eighth database tuning apparatus according to the present invention is the seventh database tuning apparatus,
When the monitoring / tuning control unit detects the occurrence of a service whose processing time exceeds a corresponding service threshold, the monitoring / tuning control unit includes an event processing unit that notifies an external device of the occurrence of the service

本発明にかかる第1のデータベースチューニング方法は、
モニタリング/チューニング制御部が、サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納し、
データベースアクセス手段が、利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントのコンポーネント名と前記サービス名とに対応付けて前記コンポーネント制御情報格納部に変更SQL文が格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に、前記利用者端末との間のセッションID及び前記サービス名によって特定される統計情報として前記変更SQL文、その処理時間および前記コンポーネント名を追加し、変更SQL文が格納されていない場合は、前記コンポーネント中のSQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に、前記セッションID及び前記サービス名によって特定される統計情報として前記SQL文、その処理時間および前記コンポーネント名を追加することを特徴とする。
A first database tuning method according to the present invention includes:
When the SQL statement change instruction including the service name, the component name, and the changed SQL statement after the change is input, the monitoring / tuning control unit associates the change SQL with the service name and the component name in the component control information storage unit. Store statements,
When a processing request including a service name is input from the user terminal, the database access unit executes each component constituting the service specified by the service name, and corresponds to the component name of the component and the service name In addition, when a change SQL statement is stored in the component control information storage unit, database access is performed according to the change SQL statement, and a session ID with the user terminal and the user terminal are stored in the statistical information storage unit. The changed SQL statement, its processing time and the component name are added as statistical information specified by the service name. When the changed SQL statement is not stored, the database is accessed according to the SQL statement in the component, and The statistical information storage unit Deployment ID and the SQL statement as the statistical information specified by the service name, and wherein adding the processing time and the component name.

本発明にかかる第2のデータベースチューニング方法は、
モニタリング/チューニング制御部が、サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納し、
コンポーネント実行制御部が、利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントに含まれるSQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力すると共に、前記セッションIDおよび前記サービス名からなるセッション情報を含んだ統計情報を統計情報格納部に格納し、
データベースアクセス制御部が、前記コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、前記データベースアクセス要求に含まれているSQL文に対する変更SQL文が前記コンポーネント制御情報格納部に格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記変更SQL文、その処理時間および前記データベースアクセス要求に含まれているコンポーネント名を追加し、前記データベースアクセス要求に含まれているSQL文に対応する変更SQL文が前記コンポーネント制御情報格納部に格納されていない場合は、前記SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記SQL文、その処理時間および前記データベースアクセス要求に含まれているコンポーネント名を追加することを特徴とする。
The second database tuning method according to the present invention includes:
When the SQL statement change instruction including the service name, the component name, and the changed SQL statement after the change is input, the monitoring / tuning control unit associates the change SQL with the service name and the component name in the component control information storage unit. Store statements,
When a processing request including a service name is input from a user terminal, the component execution control unit executes each component constituting the service specified by the service name, and includes an SQL statement included in the component, Outputs a database access request including a component name, a session ID for specifying a session with the user terminal, and a service name in the processing request, and statistical information including session information including the session ID and the service name. Store in the statistical information storage,
When the database access control unit outputs a database access request from the component execution control unit, a change SQL statement for the SQL statement included in the database access request is stored in the component control information storage unit. The database is accessed according to the changed SQL statement, and the statistical information in the statistical information stored in the statistical information storage unit matches the session ID and service name in the database access request. A change SQL statement, its processing time, and a component name included in the database access request are added, and a change SQL statement corresponding to the SQL statement included in the database access request is stored in the component control information storage unit Not If the database information is accessed according to the SQL statement, and the statistical information stored in the statistical information storage unit, the session information matches the session ID and service name in the database access request, The SQL statement, its processing time, and the component name included in the database access request are added.

本発明にかかる第3のデータベースチューニング方法は、
モニタリング/チューニング制御部が、サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納し、
コンポーネント実行制御部が、利用者端末からサービス名を含む処理要求が入力されたとき、前記利用者端末とのセッションを特定するセッションIDと前記サービス名とからなるセッション情報を含んだ統計情報を統計情報格納部に格納する処理を行うと共に、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、SQL文が変更されているコンポーネントについては、前記コンポーネント制御情報格納部に格納されている該当する変更SQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力し、SQL文が変更されていないコンポーネントについては、前記SQL文、前記コンポーネントのコンポーネント名、前記セッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力する処理を行い、
データベースアクセス制御部が、前記コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、該データベースアクセス要求に含まれているSQL文或いは変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に前記SQL文或いは変更SQL文、その処理時間および前記データベースアクセス要求中のコンポーネント名を追加することを特徴とする。
A third database tuning method according to the present invention includes:
When the SQL statement change instruction including the service name, the component name, and the changed SQL statement after the change is input, the monitoring / tuning control unit associates the change SQL with the service name and the component name in the component control information storage unit. Store statements,
When the component execution control unit receives a processing request including a service name from a user terminal, statistical information including session information including a session ID for identifying a session with the user terminal and the service name In addition to performing processing to be stored in the information storage unit, each component constituting the service specified by the service name is executed, and components whose SQL statements have been changed are stored in the component control information storage unit For a component for which a database access request including a corresponding change SQL statement, a component name of the component, a session ID for specifying a session with the user terminal, and a service name in the processing request is output, and the SQL statement is not changed Is the SQL statement, Component name component, performs a process of outputting a database access request including the service name in the session ID and the processing request,
When the database access control unit outputs a database access request from the component execution control unit, the database access control unit accesses the database according to the SQL statement or the modified SQL statement included in the database access request and stores it in the statistical information storage unit Among the statistical information, the SQL statement or the modified SQL statement, the processing time and the component name in the database access request are added to the statistical information whose session information matches the session ID and service name in the database access request. It is characterized by adding.

本発明にかかる第1のプログラムは、
コンポーネント制御情報格納部と、統計情報格納部とを備えたコンピュータを、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部、
利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントのコンポーネント名と前記サービス名とに対応付けて前記コンポーネント制御情報格納部に変更SQL文が格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に、前記利用者端末との間のセッションID及び前記サービス名によって特定される統計情報として前記変更SQL文、その処理時間および前記コンポーネント名を追加し、変更SQL文が格納されていない場合は、前記コンポーネント中のSQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に、前記セッションID及び前記サービス名によって特定される統計情報として前記SQL文、その処理時間および前記コンポーネント名を追加するデータベースアクセス手段として機能させる。
The first program according to the present invention is:
A computer including a component control information storage unit and a statistical information storage unit
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit Tuning control unit,
When a processing request including a service name is input from a user terminal, each component constituting the service specified by the service name is executed, and the component control is associated with the component name of the component and the service name. When a change SQL statement is stored in the information storage unit, database access is performed according to the change SQL statement, and the statistical information storage unit is specified by a session ID with the user terminal and the service name. The modified SQL statement, its processing time, and the component name are added as statistical information, and if the modified SQL statement is not stored, the database is accessed according to the SQL statement in the component and the statistical information storage unit , The session ID and the service The SQL statement as statistical information specified by, to function as a database access unit for adding the processing time and the component name.

本発明にかかる第2のプログラムは、
コンポーネント制御情報格納部と、統計情報格納部とを備えたコンピュータを、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部、
利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントに含まれるSQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力すると共に、前記セッションIDおよび前記サービス名からなるセッション情報を含んだ統計情報を前記統計情報格納部に格納するコンポーネント実行制御部、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、前記データベースアクセス要求に含まれているSQL文に対する変更SQL文が前記コンポーネント制御情報格納部に格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記変更SQL文、その処理時間および前記データベースアクセス要求に含まれているコンポーネント名を追加し、前記データベースアクセス要求に含まれているSQL文に対応する変更SQL文が前記コンポーネント制御情報格納部に格納されていない場合は、前記SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記SQL文、その処理時間および前記データベースアクセス要求に含まれているコンポーネント名を追加するデータベースアクセス制御部として機能させる。
The second program according to the present invention is:
A computer including a component control information storage unit and a statistical information storage unit
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit Tuning control unit,
When a processing request including a service name is input from a user terminal, each component constituting the service specified by the service name is executed, and the SQL statement included in the component, the component name of the component, the user A database access request including a session ID for identifying a session with a terminal and a service name in the processing request is output, and statistical information including session information including the session ID and the service name is stored in the statistical information storage unit Component execution control unit to store,
When a database access request is output from the component execution control unit, if a change SQL statement for the SQL statement included in the database access request is stored in the component control information storage unit, according to the change SQL statement In addition to performing database access, the statistical information whose session information matches the session ID and service name in the database access request in the statistical information stored in the statistical information storage unit is changed to the changed SQL statement and its processing If the time and the component name included in the database access request are added, and the change SQL statement corresponding to the SQL statement included in the database access request is not stored in the component control information storage unit, Follow the SQL statement In addition to performing base access, the statistical information in which the session information matches the session ID and the service name in the database access request in the statistical information stored in the statistical information storage unit is included in the SQL statement and the processing time. And a database access control unit for adding a component name included in the database access request.

本発明にかかる第3のプログラムは、
コンポーネント制御情報格納部と、統計情報格納部とを備えたコンピュータを、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部、
利用者端末からサービス名を含む処理要求が入力されたとき、前記利用者端末とのセッションを特定するセッションIDと前記サービス名とからなるセッション情報を含んだ統計情報を前記統計情報格納部に格納する処理を行うと共に、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、SQL文が変更されているコンポーネントについては、前記コンポーネント制御情報格納部に格納されている該当する変更SQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力し、SQL文が変更されていないコンポーネントについては、前記SQL文、前記コンポーネントのコンポーネント名、前記セッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力する処理を行うコンポーネント実行制御部、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、該データベースアクセス要求に含まれているSQL文或いは変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に前記SQL文或いは変更SQL文、その処理時間および前記データベースアクセス要求中のコンポーネント名を追加するデータベースアクセス制御部として機能させる。
The third program according to the present invention is:
A computer including a component control information storage unit and a statistical information storage unit
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit Tuning control unit,
When a processing request including a service name is input from a user terminal, statistical information including session information including a session ID for identifying a session with the user terminal and the service name is stored in the statistical information storage unit For each component in which the SQL statement is changed for each component constituting the service specified by the service name, the corresponding changed SQL statement stored in the component control information storage unit is executed. A database access request that includes a component name of the component, a session ID that identifies a session with the user terminal, and a service name in the processing request, and for the SQL statement that has not been changed, the SQL statement , Component of the component Name, the component execution control unit that performs processing for outputting a database access request including the session ID and the service name in the processing request,
When a database access request is output from the component execution control unit, the database is accessed according to the SQL statement or the modified SQL statement included in the database access request, and the statistical information stored in the statistical information storage unit A database access control unit for adding the SQL statement or the change SQL statement, its processing time, and the component name in the database access request to statistical information whose session information matches the session ID and service name in the database access request To function as.

〔作用〕
図1に示すように、データベースアクセス手段1は、利用者端末からサービス名を含む処理要求が入力されると、上記サービス名によって特定されるサービスを構成する各コンポーネントA,B,Cを順次実行し、実行中のコンポーネント(例えば、コンポーネントA)のコンポーネント名と上記サービス名とに対応付けてコンポーネント制御情報格納部3に変更SQL文が格納されている場合は、変更SQL文に従ってデータベースアクセスを行うと共に、利用者端末とのセッションを特定するセッションID及び上記サービス名によって特定される統計情報として上記変更SQL文、その処理時間およびコンポーネントAのコンポーネント名を統計情報格納部4の統計情報に追加する。これに対して、変更SQL文が格納されていない場合は、コンポーネントA中のSQL文「SQL−1」に従ってデータベースアクセスを行うと共に、統計情報格納部4に、上記セッションID及び上記サービス名によって特定される統計情報としてSQL文「SQL−1」、その処理時間およびコンポーネントAのコンポーネント名を追加する。
[Action]
As shown in FIG. 1, when a processing request including a service name is input from a user terminal, the database access unit 1 sequentially executes the components A, B, and C constituting the service specified by the service name. If a changed SQL statement is stored in the component control information storage unit 3 in association with the component name of the component being executed (for example, component A) and the service name, the database is accessed according to the changed SQL statement. At the same time, as the statistical information specified by the session ID specifying the session with the user terminal and the service name, the modified SQL sentence, the processing time thereof, and the component name of the component A are added to the statistical information in the statistical information storage unit 4. . On the other hand, when the changed SQL statement is not stored, the database is accessed according to the SQL statement “SQL-1” in the component A, and specified in the statistical information storage unit 4 by the session ID and the service name. SQL statement “SQL-1”, its processing time, and the component name of component A are added as statistical information.

このように、統計情報格納部4には、サービス単位で、そのサービスを構成する各コンポーネント中のSQL文の処理時間を含む統計情報が格納されるので、チューニング箇所を容易に絞り込むことが可能になる。例えば、或るサービスの統計情報中に、処理時間がかかるSQL文が存在した場合、上記或るサービスが高速処理が要求されているサービスであるか否かを調べるだけで良いので、上記SQL文をチューニングすることが必要であるか否かを容易に判断することが可能になる。   As described above, the statistical information storage unit 4 stores statistical information including the processing time of the SQL statement in each component constituting the service in units of services, so that tuning points can be easily narrowed down. Become. For example, when there is an SQL statement that takes processing time in statistical information of a certain service, it is only necessary to check whether the certain service is a service for which high-speed processing is requested. It is possible to easily determine whether or not tuning is necessary.

管理者などは、統計情報格納部4に格納されている統計情報に基づいて、或るサービスαで用いられる或るコンポーネント(例えば、コンポーネントB)中のSQL文をチューニング(変更)することが必要であると判断した場合、上記サービスαのサービス名と、コンポーネントBのコンポーネント名と、変更後のSQL文(変更SQL文)を含んだSQL文変更指示を入力する。これにより、モニタリング/チューニング制御部2が、コンポーネント制御情報格納部3に、サービスαのサービス名およびコンポーネントBのコンポーネント名に関連付けて上記変更SQL文を格納する。これにより、サービスαにおいてコンポーネントBを用いる場合には、コンポーネントB中のSQL文「SQL−2」ではなく、コンポーネント制御情報格納部3中の該当する変更SQL文が使用される。即ち、サービス単位で、チューニングを行うことが可能になる。   An administrator or the like needs to tune (change) an SQL statement in a certain component (for example, component B) used in a certain service α based on the statistical information stored in the statistical information storage unit 4. If it is determined, the SQL statement change instruction including the service name of the service α, the component name of the component B, and the changed SQL statement (changed SQL statement) is input. As a result, the monitoring / tuning control unit 2 stores the changed SQL statement in the component control information storage unit 3 in association with the service name of the service α and the component name of the component B. Thus, when the component B is used in the service α, the corresponding change SQL statement in the component control information storage unit 3 is used instead of the SQL statement “SQL-2” in the component B. That is, tuning can be performed on a service basis.

本発明は、サービス単位でデータベースアクセスに対するモニタリングを行うことができるので、チューニング箇所の絞り込みを容易に行うことが可能になり、更に、サービス単位でチューニングを行うことができるので、チューニング作業が及ぼす影響を最小限に抑えることができる。   Since the present invention can monitor database access on a service basis, it is possible to easily narrow down tuning locations, and furthermore, tuning can be performed on a service basis, so that the influence of tuning work is increased. Can be minimized.

サービス単位でデータベースアクセスに対するモニタリングを行うことができる理由は、利用者端末からサービス名を含む処理要求が入力されたとき、利用者端末とのセッションを特定するセッションIDおよび上記サービス名からなるセッション情報を含んだ統計情報を統計情報格納部に格納する処理を行うと共に、上記サービス名のサービスを構成するコンポーネントを実行する毎に、上記コンポーネントのSQL文或いは変更SQL文と、処理時間と、コンポーネント名とを統計情報に追加するデータベースアクセス手段を備えているからである。   The reason why the database access can be monitored on a service basis is that when a processing request including a service name is input from the user terminal, a session ID that identifies a session with the user terminal and the session information including the service name Each time a component that constitutes a service with the service name is executed, an SQL statement or a changed SQL statement of the component, a processing time, and a component name are stored in the statistical information storage unit. This is because it has a database access means for adding to the statistical information.

また、サービス単位でチューニングを行うことができる理由は、サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部を備えると共に、コンポーネントの実行時に、そのコンポーネントのコンポーネント名と実行要求されたサービスのサービス名とに対応付けて変更SQL文が格納されている場合は、変更SQL文に従ってデータベースアクセスを行うデータベースアクセス手段を備えているからである。   The reason that tuning can be performed on a service-by-service basis is that when an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, the service name and component are stored in the component control information storage unit. A monitoring / tuning control unit that stores the changed SQL statement in association with a name, and stores the changed SQL statement in association with the component name of the component and the service name of the requested service when the component is executed This is because it includes database access means for performing database access according to the changed SQL statement.

次に本発明の実施の形態について図面を参照して詳細に説明する。   Next, embodiments of the present invention will be described in detail with reference to the drawings.

〔第1の実施の形態〕
図2を参照すると、本発明にかかるデータベースチューニング装置の第1の実施の形態は、コンポーネント実行制御部11と、データベース(DB)アクセス制御部12と、リレーショナルデータベース管理システム(RDBMS;Relational Database Management System)13と、モニタリング/チューニング制御部14と、イベント処理部15と、コンポーネント情報登録部16と、コンポーネント制御情報格納部17と、統計情報格納部18と、リレーショナルデータベース(RDB)19と、表示部20とから構成されている。
[First Embodiment]
Referring to FIG. 2, the first embodiment of the database tuning apparatus according to the present invention includes a component execution control unit 11, a database (DB) access control unit 12, a relational database management system (RDBMS; Relational Database Management System). ) 13, a monitoring / tuning control unit 14, an event processing unit 15, a component information registration unit 16, a component control information storage unit 17, a statistical information storage unit 18, a relational database (RDB) 19, and a display unit 20.

コンポーネント制御情報格納部17には、システムが提供している各サービス毎に、そのサービスを構成しているコンポーネントに関する情報が登録されている。図3にコンポーネント制御情報格納部17の内容例を示す。図3を参照すると、コンポーネント制御情報格納部17には、サービス情報31と、サービス情報31によって特定されるサービスを構成する3個のコンポーネントに関するコンポーネント情報32〜34とが登録されている。   In the component control information storage unit 17, for each service provided by the system, information related to the components constituting the service is registered. FIG. 3 shows an example of the contents of the component control information storage unit 17. Referring to FIG. 3, in the component control information storage unit 17, service information 31 and component information 32 to 34 relating to three components constituting the service specified by the service information 31 are registered.

サービス情報31は、サービス名αと、サービス閾値Thαと、変更フラグ“1”とを含んでいる。サービス閾値は、サービス名αで特定されるサービスが要求された場合の許容処理時間(サービスの処理要求を受けてからその処理が完了するまでの許容時間)を示す。変更フラグは、下位階層のコンポーネント情報に、変更SQL文を含むものが存在するか否かを表示する。なお、本実施の形態では、変更SQL文が存在する場合は、変更フラグを“1”とし、変更SQL文が存在しない場合は、変更フラグを“0”とする。   The service information 31 includes a service name α, a service threshold Thα, and a change flag “1”. The service threshold indicates an allowable processing time (allowable time from when a service processing request is received until the processing is completed) when a service specified by the service name α is requested. The change flag displays whether or not there is a component including a change SQL statement in the component information of the lower hierarchy. In the present embodiment, the change flag is set to “1” when there is a change SQL statement, and the change flag is set to “0” when there is no change SQL statement.

コンポーネント情報32,33,34は、それぞれコンポーネント名a,b,cと、コンポーネント閾値Tha,Thb,Thcとを含んでいる。更に、コンポーネント情報33は、変更SQL文「SQL−2'」を含んでいる。コンポーネント閾値は、そのコンポーネントに関連するSQL文の許容処理時間を示す。また、変更SQL文は、そのコンポーネント内のSQL文の代わりに使用するSQL文を示す。   The component information 32, 33, and 34 include component names a, b, and c, and component threshold values Tha, Thb, and Thc, respectively. Further, the component information 33 includes a change SQL sentence “SQL-2 ′”. The component threshold value indicates the allowable processing time of the SQL sentence related to the component. The change SQL statement indicates an SQL statement used instead of the SQL statement in the component.

コンポーネント情報登録部16は、管理者の指示に従って、コンポーネント制御情報格納部17に図3に示すような情報31〜34を格納する機能を有する。   The component information registration unit 16 has a function of storing information 31 to 34 as shown in FIG. 3 in the component control information storage unit 17 in accordance with an instruction from the administrator.

コンポーネント実行制御部11は、図示を省略した利用者端末からサービス名を含む処理要求が入力されたとき、コンポーネント制御情報格納部17を参照して上記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントに含まれるSQL文、そのコンポーネントのコンポーネント名、利用者端末とのセッションを特定するセッションIDおよび処理要求中のサービス名を含むデータベースアクセス要求をデータベースアクセス制御部12に対して出力する機能や、上記セッションIDおよび上記サービス名からなるセッション情報を含んだ統計情報を統計情報格納部18に格納するする機能を有する。   When a processing request including a service name is input from a user terminal (not shown), the component execution control unit 11 refers to the component control information storage unit 17 and configures each component constituting the service specified by the service name The database access request including the SQL statement included in the component, the component name of the component, the session ID identifying the session with the user terminal, and the service name in the processing request is sent to the database access control unit 12 And a function of storing statistical information including session information including the session ID and the service name in the statistical information storage unit 18.

データベースアクセス制御部12は、次のような機能を有する。   The database access control unit 12 has the following functions.

・コンポーネント実行制御部11からデータベースアクセス要求が出力されたとき、コンポーネント制御情報格納部17に格納されているコンポーネント情報の内の、上記データベースアクセス要求によって特定されるコンポーネント情報に変更SQL文が含まれているか否かを調べる機能。
・変更SQL文が含まれている場合には、変更SQL文に従ってデータベースアクセスを行うと共に、統計情報格納部18に格納されている統計情報の内の、セッション情報がデータベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、変更SQL文、その処理時間およびデータベースアクセス要求中のコンポーネント名を追加する機能。
・変更SQL文が含まれていない場合には、上記データベースアクセス要求に含まれているSQL文に従ってデータベースアクセスを行うと共に、統計情報格納部18に格納されている統計情報の内の、セッション情報が上記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に上記SQL文、その処理時間およびデータベースアクセス要求中のコンポーネント名を追加する機能。
When a database access request is output from the component execution control unit 11, the component information specified by the database access request in the component information stored in the component control information storage unit 17 includes a change SQL statement. A function to check whether or not.
When a change SQL statement is included, database access is performed according to the change SQL statement, and the session information in the statistical information stored in the statistical information storage unit 18 is the session ID requesting the database access and A function of adding a change SQL statement, its processing time, and the name of a component in a database access request to statistical information that matches the service name.
If the change SQL statement is not included, the database is accessed according to the SQL statement included in the database access request, and the session information in the statistical information stored in the statistical information storage unit 18 is A function of adding the SQL statement, its processing time, and the component name in the database access request to the statistical information matching the session ID and service name in the database access request.

統計情報格納部18には、利用者端末から入力された処理要求に従って実行した一連のサービス処理毎に、処理時間などを含む統計情報が登録される。図4に統計情報格納部18の内容例を示す。図4を参照すると、統計情報格納部18には、セッション情報41と、3個のコンポーネント情報42とが登録されている。   In the statistical information storage unit 18, statistical information including processing time and the like is registered for each series of service processing executed according to the processing request input from the user terminal. FIG. 4 shows an example of the contents of the statistical information storage unit 18. Referring to FIG. 4, session information 41 and three component information 42 are registered in the statistical information storage unit 18.

セッション情報41は、利用者端末から入力された処理要求に従って実行したサービス処理を識別するための情報であり、上記利用者端末とのセッションを特定するセッションIDと、要求されたサービス名と、サービス処理の要した処理時間とを含んでいる。なお、このセッション情報41は、コンポーネント実行制御部11によって登録されるものである。   The session information 41 is information for identifying a service process executed in accordance with a process request input from a user terminal. The session ID 41 identifies a session with the user terminal, a requested service name, a service The processing time required for processing is included. The session information 41 is registered by the component execution control unit 11.

コンポーネント情報42〜44は、その上位階層のセッション情報41によって示されるサービス処理を実行する際に使用されたコンポーネントに関する情報であり、コンポーネント名と、SQL文と、その処理時間とを含んでいる。これらの情報は、データベースアクセス制御部12によって登録される。   The component information 42 to 44 is information related to the component used when executing the service processing indicated by the session information 41 of the higher hierarchy, and includes the component name, the SQL statement, and the processing time. These pieces of information are registered by the database access control unit 12.

モニタリング/チューニング制御部14は、次のような機能を有する。   The monitoring / tuning control unit 14 has the following functions.

・管理者などによって、サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、データベースアクセス制御部12を利用して、コンポーネント制御情報格納部17に格納されているコンポーネント情報の内の、該当するコンポーネント情報に変更SQL文を追加する機能を有する。例えば、サービス名α、コンポーネント名b、変更SQL文SQL−2'を含むSQL文変更指示が入力された場合には、図3に示すようにコンポーネント情報33に変更SQL文SQL−2'を追加する。
・統計情報格納部18に格納されている統計情報と、コンポーネント制御情報格納部17に格納されている各サービス毎のサービス閾値とに基づいて、処理時間が該当するサービス閾値を超えたサービスが発生したと判断した場合、上記サービスに関連する統計情報を表示部20に表示する機能。
・管理者からの指示に従って、統計情報格納部18に蓄積された統計情報を基に、サービス単位にデータベースアクセスに要した処理時間や全体に対する割合などを求め、それらを表示部20に表示する機能。
・管理者が指定したサービスについて、SQL文変更前の統計情報(例えば、SQL文変更前の統計情報の内の最新のもの)とSQL文変更後の統計情報(例えば、SQL文変更後の統計情報の内の最新のもの)を統計情報格納部18から検索し、両者を表示部20に表示する機能。その際、両者の処理時間の差分を求め、この差分も合わせて表示する機能。
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input by an administrator or the like, it is stored in the component control information storage unit 17 using the database access control unit 12 A function to add a change SQL statement to the corresponding component information. For example, when an SQL statement change instruction including a service name α, a component name b, and a change SQL statement SQL-2 ′ is input, the change SQL statement SQL-2 ′ is added to the component information 33 as shown in FIG. To do.
-Based on the statistical information stored in the statistical information storage unit 18 and the service threshold value for each service stored in the component control information storage unit 17, a service whose processing time exceeds the corresponding service threshold value is generated. A function of displaying statistical information related to the service on the display unit 20 when it is determined that the service has been performed.
A function of obtaining the processing time required for database access for each service, the ratio to the whole, and the like on the display unit 20 based on the statistical information accumulated in the statistical information storage unit 18 in accordance with an instruction from the administrator .
-For the service specified by the administrator, the statistical information before the SQL statement change (for example, the latest of the statistical information before the SQL statement change) and the statistical information after the SQL statement change (for example, the statistics after the SQL statement change) A function of retrieving the latest information) from the statistical information storage unit 18 and displaying both on the display unit 20. At that time, a function for obtaining a difference between the processing times of the two and displaying the difference together.

イベント処理部15は、モニタリング/チューニング制御部14によって処理時間がサービス閾値を超えたサービスが発生したと判断された場合、外部装置(例えば、保守員や管理者が携帯している携帯電話機や、ポケットベルなど)に、そのことを通知する機能を有する。   When the monitoring / tuning control unit 14 determines that a service having a processing time exceeding the service threshold has occurred, the event processing unit 15 is connected to an external device (for example, a mobile phone carried by a maintenance staff or an administrator, A function of notifying a pager or the like).

なお、コンポーネント実行制御部11,データベースアクセス制御部12,リレーショナルデータベース管理システム13,モニタリング/チューニング制御部14,イベント処理部15,コンポーネント情報登録部16は、コンピュータによって実現可能なものであり、コンピュータによって実現する場合は、例えば、次のようにする。コンピュータを、コンポーネント実行制御部11,データベースアクセス制御部12,リレーショナルデータベース管理システム13,モニタリング/チューニング制御部14,イベント処理部15,コンポーネント情報登録部16として機能させるためのプログラムを記録したディスク,半導体メモリ,その他の記録媒体を用意し、コンピュータに上記プログラムを読み取らせる。コンピュータは、読み取ったプログラムに従って自身の動作を制御することにより、自コンピュータ上に、コンポーネント実行制御部11,データベースアクセス制御部12,リレーショナルデータベース管理システム13,モニタリング/チューニング制御部14,イベント処理部15,コンポーネント情報登録部16を実現する。   The component execution control unit 11, the database access control unit 12, the relational database management system 13, the monitoring / tuning control unit 14, the event processing unit 15, and the component information registration unit 16 can be realized by a computer. For example, the following is performed. A disk on which a program for causing a computer to function as a component execution control unit 11, a database access control unit 12, a relational database management system 13, a monitoring / tuning control unit 14, an event processing unit 15, and a component information registration unit 16 is recorded, a semiconductor A memory and other recording media are prepared, and the computer is caused to read the program. The computer controls its own operation according to the read program, so that the component execution control unit 11, the database access control unit 12, the relational database management system 13, the monitoring / tuning control unit 14, and the event processing unit 15 are executed on the computer. , The component information registration unit 16 is realized.

〔第1の実施の形態の動作の説明〕
次に、本実施の形態の動作について詳細に説明する。
[Description of Operation of First Embodiment]
Next, the operation of the present embodiment will be described in detail.

利用者は、サービスを利用する場合、利用したいサービスのサービス名を含む処理要求を、自身の利用者端末からコンポーネント実行制御部11へ送信する。   When using a service, the user transmits a processing request including the service name of the service to be used from the user terminal to the component execution control unit 11.

コンポーネント実行制御部11は、サービス名を含む処理要求を受け付けると、図5のフローチャートに示すように、上記サービス名と、要求元の利用者端末とのセッションを特定するセッションIDとを含むセッション情報を統計情報格納部18に登録する(ステップS51)。今、例えば、処理要求がサービス名αを含み、セッションIDが「ID1」であったとすると、図4に示すようなセッション情報41が統計情報格納部18に格納される。但し、この時点では、処理時間Tαは含まれていない。   When the component execution control unit 11 receives a processing request including a service name, as illustrated in the flowchart of FIG. 5, session information including the service name and a session ID that identifies a session with the requesting user terminal. Is registered in the statistical information storage unit 18 (step S51). Now, for example, if the processing request includes the service name α and the session ID is “ID1”, the session information 41 as shown in FIG. 4 is stored in the statistical information storage unit 18. However, at this time, the processing time Tα is not included.

次いで、コンポーネント実行制御部11は、処理要求中のサービス名αをキーにしてコンポーネント制御情報格納部17を検索し、該当するサービス情報を検索する(ステップS52)。今、コンポーネント制御情報格納部17の内容が図3に示すものであるとすると、コンポーネント実行制御部11は、サービス情報31を検索することになる。   Next, the component execution control unit 11 searches the component control information storage unit 17 using the service name α being requested as a key, and searches for corresponding service information (step S52). Now, assuming that the content of the component control information storage unit 17 is as shown in FIG. 3, the component execution control unit 11 searches for the service information 31.

その後、コンポーネント実行制御部11は、ステップS52で検索したサービス情報31の下位階層に存在するコンポーネント32〜34の内の、第1番目のコンポーネント情報に注目する(ステップS53,S54)。この例の場合、第1番目のコンポーネント情報としてコンポーネント情報32が存在するので(ステップS55がYES)、コンポーネント実行制御部11は、コンポーネント情報32に含まれているコンポーネント名aによって特定されるコンポーネントAを実行し、コンポーネントAに含まれているSQL文「SQL−1」と、コンポーネントaと、セッションID「ID1」と、サービス名αとを含むデータベースアクセス要求を、データベースアクセス制御部12に対して発行する(ステップS56,S57)。   Thereafter, the component execution control unit 11 pays attention to the first component information among the components 32 to 34 existing in the lower hierarchy of the service information 31 searched in step S52 (steps S53 and S54). In this example, since the component information 32 exists as the first component information (YES in step S55), the component execution control unit 11 determines the component A identified by the component name a included in the component information 32. And a database access request including the SQL statement “SQL-1” included in the component A, the component a, the session ID “ID1”, and the service name α is sent to the database access control unit 12. Issue (Steps S56, S57).

データベースアクセス制御部12は、コンポーネント実行制御部11からのデータベースアクセス要求を受け付けると、図6のフローチャートに示すように、それに含まれているサービス名αとコンポーネント名aとをキーにしてコンポーネント制御情報格納部17から該当するコンポーネント情報を検索する(ステップS61)。コンポーネント制御情報格納部17の内容が、図3に示すものである場合、サービス名αを含んでいるサービス情報31の下位階層に存在する、コンポーネント名aを有するコンポーネント情報32が検索される。   When receiving the database access request from the component execution control unit 11, the database access control unit 12 uses the service name α and the component name a included therein as a key, as shown in the flowchart of FIG. The corresponding component information is searched from the storage unit 17 (step S61). When the content of the component control information storage unit 17 is as shown in FIG. 3, the component information 32 having the component name a and existing in the lower hierarchy of the service information 31 including the service name α is searched.

その後、データベースアクセス制御部12は、検索したコンポーネント情報32に変更SQL文が含まれているか否かを判断する(ステップS62)。この例の場合、コンポーネント32には、変更SQL文が含まれていないので(ステップS62がNO)、データベースアクセス制御部12は、データベースアクセス要求に含まれているSQL文「SQL−1」に従って、リレーショナルデータベース管理システム13に対して実行要求を行い、実行結果を取得するとそれをコンポーネント実行制御部11に返す(ステップS63)。その後、データベースアクセス制御部12は、セッションID「ID1」およびサービス名「α」をキーにして統計情報格納部18からセッション情報41を検索し、その下位階層に、コンポーネント名aと、SQL文「SQL−1」と、その処理時間Taとを含むコンポーネント情報42を追加する(ステップS65)。   Thereafter, the database access control unit 12 determines whether or not a changed SQL sentence is included in the retrieved component information 32 (step S62). In this example, since the component 32 does not include the change SQL statement (NO in step S62), the database access control unit 12 follows the SQL statement “SQL-1” included in the database access request. When an execution request is made to the relational database management system 13 and an execution result is acquired, it is returned to the component execution control unit 11 (step S63). Thereafter, the database access control unit 12 retrieves the session information 41 from the statistical information storage unit 18 using the session ID “ID1” and the service name “α” as keys, and the component name “a” and the SQL sentence “ Component information 42 including “SQL-1” and its processing time Ta is added (step S65).

一方、コンポーネント実行制御部11は、データベースアクセス制御部12から実行結果が返されると、次のコンポーネント情報33に注目する(図5のステップS58,S54)。その後、コンポーネント情報33中のコンポーネント名bによって特定されるコンポーネントBを実行し、それに含まれているSQL文「SQL−2」と、コンポーネント名bと、セッションID「ID1」と、サービス名αとを含むデータベースアクセス要求をデータベースアクセス制御部12に対して発行する(ステップS57)。   On the other hand, when the execution result is returned from the database access control unit 12, the component execution control unit 11 pays attention to the next component information 33 (steps S58 and S54 in FIG. 5). Thereafter, the component B specified by the component name b in the component information 33 is executed, and the SQL sentence “SQL-2”, the component name b, the session ID “ID1”, and the service name α included in the component B are executed. Is issued to the database access control unit 12 (step S57).

データベースアクセス制御部12は、上記データベースアクセス要求を受け付けると、それに含まれているサービス名αとコンポーネント名bとをキーにしてコンポーネント制御情報格納部17から該当するコンポーネント情報を検索する(図6のステップS61)。この例の場合、サービス名αを含んでいるサービス情報31の下位階層に存在する、コンポーネント名bを含んだコンポーネント情報33が検索される。   When the database access control unit 12 accepts the database access request, the database access control unit 12 searches the component control information storage unit 17 for the corresponding component information using the service name α and the component name b included therein as keys (FIG. 6). Step S61). In the case of this example, the component information 33 including the component name b existing in the lower hierarchy of the service information 31 including the service name α is searched.

今回、検索したコンポーネント情報33には、変更SQL文「SQL−2'」が含まれているので(ステップS62がYES)、データベースアクセス制御部12は、変更SQL文「SQL−2'」に従って、リレーショナルデータベース管理システム13に対して実行要求を行い、実行結果を取得するとそれをコンポーネント実行制御部11に返す(ステップS64)。その後、データベースアクセス制御部12は、セッションID「ID1」およびサービス名「α」をキーにして統計情報格納部18からセッション情報41を検索し、その下位階層に、コンポーネント名bと、変更SQL文「SQL−2'」と、その処理時間Tbとを含むコンポーネント情報43を追加する(ステップS65)。   Since the retrieved component information 33 includes the changed SQL statement “SQL-2 ′” (step S62 is YES), the database access control unit 12 follows the changed SQL statement “SQL-2 ′”. When an execution request is made to the relational database management system 13 and an execution result is acquired, it is returned to the component execution control unit 11 (step S64). Thereafter, the database access control unit 12 retrieves the session information 41 from the statistical information storage unit 18 using the session ID “ID1” and the service name “α” as keys, and in the lower hierarchy, the component name b and the change SQL statement Component information 43 including “SQL-2 ′” and the processing time Tb is added (step S65).

一方、コンポーネント実行制御部11は、データベースアクセス制御部12から実行結果が返却されると、第3番目のコンポーネント情報34によって特定されるコンポーネントCを実行し(図5のステップS58,S54,S56)、それに含まれているSQL文「SQL−3」と、コンポーネント名cと、セッションID「ID1」と、サービス名αとを含むデータベースアクセス要求をデータベースアクセス制御部12に対して発行する(ステップS57)。   On the other hand, when the execution result is returned from the database access control unit 12, the component execution control unit 11 executes the component C specified by the third component information 34 (steps S58, S54, and S56 in FIG. 5). Then, a database access request including the SQL statement “SQL-3”, the component name c, the session ID “ID1”, and the service name α included therein is issued to the database access control unit 12 (step S57). ).

これにより、データベースアクセス制御部12は、第1番目のデータベースアクセス要求を受け付けた場合と同様の処理を行い、実行結果をコンポーネント実行制御部11に返却すると共に、セッション情報41の下位階層に、コンポーネント名cと、SQL文「SQL−3」と、その処理時間Tcとを含むコンポーネント情報44を追加する(図6のステップS61,S62がNO,S63,S65)。   Thereby, the database access control unit 12 performs the same processing as when the first database access request is received, returns the execution result to the component execution control unit 11, and displays the component information in the lower hierarchy of the session information 41. Component information 44 including the name c, the SQL sentence “SQL-3”, and the processing time Tc is added (NO in steps S61 and S62 in FIG. 6, S63 and S65).

一方、コンポーネント実行制御部11は、データベースアクセス制御部12から実行結果が返却されると、未注目のコンポーネント情報が存在しないので(図5ステップS55がNO)、ステップS59の処理を行う。ステップS59では、先ず、利用者端末からの処理要求の受信時刻と現在時刻との差分を求めることにより、サービス処理に要した処理時間(Tαであったとする)を求め、その後、求めた処理時間Tαと、処理要求に含まれていたサービス名αと、利用者端末とのセッションを特定するセッションID「ID1」とを含む処理時間通知をデータベースアクセス制御部12へ送る。   On the other hand, when the execution result is returned from the database access control unit 12, the component execution control unit 11 performs the process of step S59 because there is no unfocused component information (NO in step S55 in FIG. 5). In step S59, first, the difference between the reception time of the processing request from the user terminal and the current time is obtained to obtain the processing time (assuming that it is Tα) required for the service processing, and then the obtained processing time. A processing time notification including Tα, the service name α included in the processing request, and a session ID “ID1” for specifying a session with the user terminal is sent to the database access control unit 12.

データベースアクセス制御部12は、コンポーネント実行制御部11から上記処理時間通知が送られてくると、それに含まれているサービス名αおよびセッションID「ID1」をキーにして統計情報格納部18から該当するセッション情報41を検索し、そのセッション情報41に図4に示すように処理時間Tαを追加する(図7のステップS71,S72)。その後、データベースアクセス制御部12は、モニタリング/チューニング制御部14に対して、上記サービス名αおよびセッションID「ID1」を通知する(ステップS73)。   When the processing time notification is sent from the component execution control unit 11, the database access control unit 12 corresponds from the statistical information storage unit 18 using the service name α and session ID “ID1” included therein as keys. The session information 41 is searched, and the processing time Tα is added to the session information 41 as shown in FIG. 4 (steps S71 and S72 in FIG. 7). Thereafter, the database access control unit 12 notifies the monitoring / tuning control unit 14 of the service name α and the session ID “ID1” (step S73).

これにより、モニタリング/チューニング制御部14は、図8のフローチャートに示すように、上記サービス名αおよびセッションID「ID1」をキーにして統計情報格納部18を検索し、該当するセッション情報41を検索する(ステップS81)。その後、モニタリング/チューニング制御部14は、セッション情報41に含まれている処理時間Tαが、サービス名αのサービスに対するサービス閾値Thαを超えているか否かを判断する(ステップS82)。なお、上記サービス閾値Thαは、コンポーネント制御情報格納部17に格納されているサービス情報の内の、サービス名αによって特定されるサービス情報31に含まれているので、サービス名αをキーにしてコンポーネント制御情報格納部17を検索することにより求めることができる。また、サービス閾値Thαを求める際、サービス情報31の下位階層に存在する各コンポーネント32〜34に含まれているコンポーネント閾値Tha,Thb,Thcも求めておく。   As a result, the monitoring / tuning control unit 14 searches the statistical information storage unit 18 using the service name α and the session ID “ID1” as keys, and searches for the corresponding session information 41, as shown in the flowchart of FIG. (Step S81). Thereafter, the monitoring / tuning control unit 14 determines whether or not the processing time Tα included in the session information 41 exceeds the service threshold Thα for the service with the service name α (step S82). Note that the service threshold value Thα is included in the service information 31 specified by the service name α in the service information stored in the component control information storage unit 17, so the service name α is used as a key for the component It can be obtained by searching the control information storage unit 17. Further, when the service threshold value Thα is obtained, the component threshold values Tha, Thb, Thc included in the components 32 to 34 existing in the lower hierarchy of the service information 31 are also obtained.

そして、処理時間Tαがサービス閾値Thαを超えていない場合(ステップS82がNO)は、モニタリング/チューニング制御部14は、その処理を終了する。   When the processing time Tα does not exceed the service threshold Thα (step S82 is NO), the monitoring / tuning control unit 14 ends the processing.

これに対して、処理時間Tαがサービス閾値Thαを超えている場合(ステップS82がYES)は、セッション情報41の下位階層のコンポーネント情報42〜44の中から、それに含まれている処理時間Ta,Tb,Tcが、対応するコンポーネント閾値Tha,Thb,Thcを超えているものを探し出す(ステップS83)。次いで、モニタリング/チューニング制御部14は、ステップS81で検索したセッション情報41と、その下位階層に存在するコンポーネント情報42〜44とからなる統計情報を、表示部20に表示する(ステップS84)。その際、ステップS83で探し出したコンポーネント情報の表示形態を、他のコンポーネント情報の表示形態と異なる、特定の表示形態とする(例えば、探し出したコンポーネント情報の表示色を赤にし、他のコンポーネントの表示色を黒にする)。そして、最後に、イベント処理部15に対して、処理時間がサービス閾値を超えたサービスが発生したことを通知し(ステップS85)、その処理を終了する。イベント処理部15は、上記通知を受けると、保守員や管理者が携帯している携帯電話機や、ポケットベルなどに、そのことを通知する。   On the other hand, when the processing time Tα exceeds the service threshold Thα (YES in step S82), the processing time Ta included in the component information 42 to 44 in the lower hierarchy of the session information 41 is included. A case where Tb and Tc exceed the corresponding component threshold values Tha, Thb and Thc is searched (step S83). Next, the monitoring / tuning control unit 14 displays statistical information including the session information 41 searched in step S81 and the component information 42 to 44 existing in the lower hierarchy on the display unit 20 (step S84). At this time, the display form of the component information found in step S83 is set to a specific display form different from the display form of other component information (for example, the display color of the found component information is set to red, and the display of other components is displayed). Make the color black). Finally, the event processing unit 15 is notified that a service whose processing time has exceeded the service threshold has occurred (step S85), and the process ends. When the event processing unit 15 receives the notification, the event processing unit 15 notifies the mobile phone or pager carried by the maintenance staff or the administrator.

管理者は、処理時間がサービス閾値を超えたサービスの統計情報が表示部20に表示されると、表示形態が赤になっているコンポーネント情報中のSQL文をチューニングした変更SQL文を作成する。今、例えば、図9に示すように、表示部20に、セッション情報41と、コンポーネント情報42〜44とからなる、サービス名αのサービスについての統計情報が表示され、コンポーネント情報43の表示色が赤になっていたとすると、管理者は、コンポーネント情報43に含まれているSQL文「SQL−2'」をチューニングした変更SQL文「SQL−2''」を作成することになる。   When the statistical information of the service whose processing time has exceeded the service threshold is displayed on the display unit 20, the administrator creates a modified SQL statement that is a tuning of the SQL statement in the component information whose display form is red. Now, for example, as shown in FIG. 9, the display unit 20 displays statistical information about the service with the service name α, which includes session information 41 and component information 42 to 44, and the display color of the component information 43 is If it is red, the administrator creates a modified SQL statement “SQL-2 ″” obtained by tuning the SQL statement “SQL-2 ′” included in the component information 43.

その後、管理者は、作成した変更SQL文「SQL−2''」と、サービス名αと、コンポーネント名bとを含むSQL文変更指示をモニタリング/チューニング制御部14に出力する。これにより、モニタリング/チューニング制御部14は、データベースアクセス制御部12を利用して、上記SQL文変更指示中のサービス名α及びコンポーネント名bによって特定される、コンポーネント制御情報格納部17に格納されているコンポーネント情報33中の変更SQL文「SQL−2'」を「SQL−2''」に置き換える。なお、この例では、コンポーネント情報33に変更SQL文「SQL−2'」が含まれているので、それを変更SQL文「SQL−2''」に置き換える処理を行ったが、もし、コンポーネント情報33に変更SQL文「SQL−2'」が含まれていなかったら、コンポーネント情報33に変更SQL文「SQL−2''」を追加する処理を行う。   Thereafter, the administrator outputs an SQL statement change instruction including the created change SQL statement “SQL-2 ″”, the service name α, and the component name b to the monitoring / tuning control unit 14. Accordingly, the monitoring / tuning control unit 14 is stored in the component control information storage unit 17 specified by the service name α and the component name b in the SQL statement change instruction using the database access control unit 12. The changed SQL sentence “SQL-2 ′” in the existing component information 33 is replaced with “SQL-2 ″”. In this example, since the component information 33 includes the changed SQL sentence “SQL-2 ′”, a process for replacing it with the changed SQL sentence “SQL-2 ″” is performed. If the change SQL statement “SQL-2 ′” is not included in 33, a process of adding the change SQL statement “SQL-2 ″” to the component information 33 is performed.

また、上記したSQL文変更指示は、変更SQL文「SQL−2''」の他に、サービス名αとコンポーネント名bとを含んでいるが、変更SQL文「SQL−2''」とコンポーネント名bとを含み、サービス名αは含んでいないSQL文変更指示が入力された場合は、モニタリング/チューニング制御部14は、コンポーネント制御情報格納部17に登録されている、コンポーネント名bを含む全てのコンポーネント情報を対象にして、変更SQL文「SQL−2'」の追加あるいは置き換え処理を行う。   The SQL statement change instruction described above includes the service name α and the component name b in addition to the change SQL statement “SQL-2 ″”, but the change SQL statement “SQL-2 ″” and the component When the SQL statement change instruction including the name b and not the service name α is input, the monitoring / tuning control unit 14 includes all the component names b registered in the component control information storage unit 17. The change SQL sentence “SQL-2 ′” is added or replaced with the component information of

〔第1の実施の形態の効果〕
本実施の形態は、サービス単位でデータベースアクセスに対するモニタリングを行うことができるので、チューニング箇所の絞り込みを容易に行うことが可能になり、更に、サービス単位でチューニングを行うことができるので、チューニング作業が及ぼす影響を最小限に抑えることができる。
[Effect of the first embodiment]
Since this embodiment can monitor database access in units of services, it is possible to easily narrow down tuning locations, and further tuning can be performed in units of services, so that tuning work can be performed. The effect of this can be minimized.

サービス単位でデータベースアクセスに対するモニタリングを行うことができる理由は、利用者端末からサービス名を含む処理要求が入力されたとき、利用者端末とのセッションを特定するセッションIDおよび上記サービス名からなるセッション情報を含んだ統計情報を統計情報格納部18に格納する処理を行うと共に、上記サービス名のサービスを構成するコンポーネントを実行する毎に、上記コンポーネントのSQL文或いは変更SQL文と、処理時間と、コンポーネント名とを統計情報に追加するデータベースアクセス手段(コンポーネント実行制御部11及びデータベースアクセス制御部12から構成される)を備えているからである。   The reason why the database access can be monitored on a service basis is that when a processing request including a service name is input from the user terminal, a session ID that identifies a session with the user terminal and the session information including the service name Each time the component constituting the service with the service name is executed, the SQL statement or changed SQL statement of the component, the processing time, and the component This is because it includes database access means (comprising the component execution control unit 11 and the database access control unit 12) for adding the name to the statistical information.

また、本実施の形態によれば、処理時間が該当するサービス閾値を超えたサービスの発生を容易に検出することが可能になる。その理由は、統計情報格納部18に格納されている統計情報と、コンポーネント制御情報格納部17に格納されている各サービス毎のサービス閾値とに基づいて、処理時間が該当するサービス閾値を超えたサービスの発生を検出するモニタリング/チューニング制御部14を備えているからである。   Further, according to the present embodiment, it is possible to easily detect the occurrence of a service whose processing time has exceeded the corresponding service threshold. The reason is that the processing time exceeded the applicable service threshold based on the statistical information stored in the statistical information storage unit 18 and the service threshold for each service stored in the component control information storage unit 17. This is because a monitoring / tuning control unit 14 that detects the occurrence of a service is provided.

また、本実施の形態によれば、処理時間が該当するサービス閾値を超えたサービスが発生した場合、迅速に対応することが可能になる。その理由は、処理時間が該当するサービス閾値を超えたサービスが発生したとき、そのことを管理者の携帯電話機やポケットベルなどの外部装置に通知するイベント処理部15を備えているからである。   In addition, according to the present embodiment, when a service that exceeds the service threshold corresponding to the processing time occurs, it is possible to quickly respond. The reason is that it includes an event processing unit 15 that notifies an administrator of an external device such as a mobile phone or a pager when a service whose processing time exceeds a corresponding service threshold value occurs.

〔第2の実施の形態の構成〕
次に本発明の第2の実施の形態について説明する。本実施の形態は、コンポーネント実行制御部11に、図5のフローチャートに示す処理の代わりに、図10のフローチャートに示す処理を実行させ、データベースアクセス制御部12に、図6のフローチャートに示す処理の代わりに、図11のフローチャートに示す処理を実行させることにより実現される。なお、図10,図11において、図5,図6と同一処理を行うステップには、同一の番号を付してある。
[Configuration of Second Embodiment]
Next, a second embodiment of the present invention will be described. In this embodiment, the component execution control unit 11 executes the process shown in the flowchart of FIG. 10 instead of the process shown in the flowchart of FIG. 5, and the database access control unit 12 causes the process shown in the flowchart of FIG. Instead, it is realized by executing the processing shown in the flowchart of FIG. In FIGS. 10 and 11, steps that perform the same processing as in FIGS. 5 and 6 are assigned the same numbers.

〔第2の実施の形態の動作の説明〕
図10を参照すると、コンポーネント実行制御部11は、利用者端末からサービス名(例えば、サービス名α)を含む処理要求が送られてくると、第1の実施の形態で説明したステップS51〜S56の処理を行う。その後、ステップS57の代わりに、ステップS101〜S103の処理を行う。
[Description of Operation of Second Embodiment]
Referring to FIG. 10, when a processing request including a service name (for example, service name α) is sent from the user terminal, the component execution control unit 11 performs steps S51 to S56 described in the first embodiment. Perform the process. Thereafter, instead of step S57, the processes of steps S101 to S103 are performed.

ステップS101では、ステップS54で注目したコンポーネント情報に変更SQL文が含まれているか否かを判断する。   In step S101, it is determined whether the component SQL noticed in step S54 includes a change SQL sentence.

例えば、ステップS54において、図3に示したコンポーネント情報32に注目したとすると、ステップS101の判断結果がNOとなるので、コンポーネント実行制御部11は、処理要求に含まれているサービス名αと、要求元の利用者端末とのセッションを特定するセッションID(例えば、ID1)と、コンポーネント情報32に含まれているコンポーネント名aと、実行中のコンポーネントAに含まれているSQL文「SQL−1」とを含むデータベースアクセス要求をデータベースアクセス制御部12に対して発行する(ステップS102)。   For example, if attention is paid to the component information 32 shown in FIG. 3 in step S54, the determination result in step S101 is NO, so that the component execution control unit 11 includes the service name α included in the processing request, A session ID (for example, ID1) that identifies a session with the requesting user terminal, a component name a included in the component information 32, and an SQL statement “SQL-1” included in the component A being executed Is issued to the database access control unit 12 (step S102).

データベースアクセス制御部12は、コンポーネント実行制御部11からSQL文「SQL−1」を含んだデータベースアクセス要求が送られてくると、図11のフローチャートに示すように、データベースアクセス要求に含まれているSQL文「SQL−1」に従って、リレーショナルデータベース管理システム13に対して実行要求を行い、実行結果を取得するとそれをコンポーネント実行制御部11に返す(ステップS111)。その後、データベースアクセス制御部12は、第1の実施の形態で説明したステップS65の処理を行う。   When the database access control unit 12 receives a database access request including the SQL sentence “SQL-1” from the component execution control unit 11, it is included in the database access request as shown in the flowchart of FIG. In accordance with the SQL statement “SQL-1”, an execution request is made to the relational database management system 13, and when an execution result is acquired, it is returned to the component execution control unit 11 (step S111). Thereafter, the database access control unit 12 performs the process of step S65 described in the first embodiment.

一方、コンポーネント実行制御部11は、データベースアクセス制御部12から実行結果が返却されると、次のコンポーネント情報33に注目し、該当するコンポーネントBを実行する(図10のステップS58,S54,S56)。その後、コンポーネント実行制御部11は、注目しているコンポーネント情報33に変更SQL文「SQL−2'」が含まれているので(ステップS101がYES)、サービス名αと、セッションID「ID1」と、コンポーネント情報33に含まれているコンポーネント名bと、変更SQL文「SQL−2'」とを含むデータベースアクセス要求をデータベースアクセス制御部12に対して発行する(ステップS103)。   On the other hand, when the execution result is returned from the database access control unit 12, the component execution control unit 11 pays attention to the next component information 33 and executes the corresponding component B (steps S58, S54, and S56 in FIG. 10). . Thereafter, the component execution control unit 11 includes the service name α and the session ID “ID1” because the changed SQL sentence “SQL-2 ′” is included in the component information 33 of interest (YES in step S101). Then, a database access request including the component name b included in the component information 33 and the changed SQL sentence “SQL-2 ′” is issued to the database access control unit 12 (step S103).

データベースアクセス制御部12は、コンポーネント実行制御部11から変更SQL文「SQL−2'」を含んだデータベースアクセス要求が送られてくると、図11のフローチャートに示すように、データベースアクセス要求に含まれている変更SQL文「SQL−2'」に従って、リレーショナルデータベース管理システム13に対して実行要求を行い、実行結果を取得するとそれをコンポーネント実行制御部11に返す(ステップS111)。その後、データベースアクセス制御部12は、第1の実施の形態で説明したステップS65の処理を行う。   When a database access request including the changed SQL statement “SQL-2 ′” is sent from the component execution control unit 11, the database access control unit 12 is included in the database access request as shown in the flowchart of FIG. 11. The execution request is made to the relational database management system 13 according to the changed SQL statement “SQL-2 ′”, and when the execution result is acquired, it is returned to the component execution control unit 11 (step S111). Thereafter, the database access control unit 12 performs the process of step S65 described in the first embodiment.

〔第2の実施の形態の効果〕
本実施の形態によれば、第1の実施の形態の効果に加え、データベースアクセス制御部12が行う検索処理の回数を少なくすることができるという効果を得ることができる。その理由は、第1の実施の形態では、データベースアクセス制御部12がコンポーネント制御情報格納部17を検索して変更SQL文があるか否かを判断し、判断結果に基づいて、SQL文に従った実行要求を行うのか、変更SQL文に従った実行要求を行うのかを切り分けているが(ステップS61〜S64)、本実施の形態では、コンポーネント実行制御部11が、変更SQL文が存在する場合には、変更SQL文を含んだデータベースアクセス要求をデータベースアクセス制御部12に発行し、存在しない場合は、実行しているコンポーネント中のSQL文を含んだデータベースアクセス要求をデータベースアクセス制御部12に対して発行するようにしているからである(ステップS101〜S103)。
[Effects of Second Embodiment]
According to the present embodiment, in addition to the effects of the first embodiment, it is possible to obtain an effect that the number of search processes performed by the database access control unit 12 can be reduced. The reason for this is that in the first embodiment, the database access control unit 12 searches the component control information storage unit 17 to determine whether there is a change SQL statement, and follows the SQL statement based on the determination result. In the present embodiment, the component execution control unit 11 determines that there is a change SQL statement, although it is determined whether the execution request is made or whether the execution request according to the change SQL statement is executed (steps S61 to S64). In this case, a database access request including a change SQL statement is issued to the database access control unit 12, and if there is no database access request, the database access request including the SQL statement in the component being executed is sent to the database access control unit 12. This is because it is issued (steps S101 to S103).

〔第3の実施の形態の構成〕
次に、本発明にかかるデータベースチューニング装置の第3の実施の形態について説明する。図12は本実施の形態にかかるデータベースチューニング装置の構成例を示すブロック図であり、本実施の形態のデータベースチューニング装置と、図2に示した第1の実施の形態のデータベースチューニング装置との相違点は、コンポーネントA〜Cが統計情報の登録処理を行う統計情報登録部111A〜111Cを備えている点と、コンポーネント実行制御部11の代わりにコンポーネント実行制御部11aを備えている点と、データベースアクセス制御部12の代わりにデータベースアクセス制御部12aを備えている点である。
[Configuration of Third Embodiment]
Next, a third embodiment of the database tuning apparatus according to the present invention will be described. FIG. 12 is a block diagram showing a configuration example of the database tuning apparatus according to the present embodiment. Differences between the database tuning apparatus of the present embodiment and the database tuning apparatus of the first embodiment shown in FIG. The points are that the components A to C include statistical information registration units 111A to 111C for performing statistical information registration processing, the component execution control unit 11a instead of the component execution control unit 11, and the database A database access control unit 12 a is provided instead of the access control unit 12.

〔第3の実施の形態の動作〕
図13のフローチャートを参照すると、コンポーネント実行制御部11aは、利用者端末からサービス名(例えば、サービス名α)を含んだ処理要求が入力されると、第1の実施の形態で説明したステップS51〜S56の処理を行い、上記サービス名αのサービスを構成するコンポーネントの内の第1番目のコンポーネントを実行する。今、例えば、図12に示すコンポーネントA(コンポーネント名はaとする)を実行したとすると、コンポーネント実行制御部11aは、サービス名αと、利用者端末とのセッションを特定するセッションID(ID1とする)、コンポーネントA中のSQL文「SQL−1」と、コンポーネント名aとを含んだデータベースアクセス要求をデータベースアクセス制御部12に対して発行する(ステップS57)。
[Operation of Third Embodiment]
Referring to the flowchart of FIG. 13, when a processing request including a service name (for example, service name α) is input from the user terminal, the component execution control unit 11a performs step S51 described in the first embodiment. The process of -S56 is performed and the 1st component of the components which comprise the service of the said service name (alpha) is performed. Now, for example, if the component A shown in FIG. 12 (component name is a) is executed, the component execution control unit 11a determines the session name (ID1 and ID1) that identifies the service name α and the session with the user terminal. A database access request including the SQL statement “SQL-1” in component A and the component name a is issued to the database access control unit 12 (step S57).

これにより、データベースアクセス制御部12aは、図14のフローチャートに示す処理を行い、実行結果をコンポーネント実行制御部11aに返却する。図14のフローチャートと、データベースアクセス制御部12の処理例を示した図6のフローチャートとの相違点は、ステップS65が削除されている点である。   Thereby, the database access control part 12a performs the process shown in the flowchart of FIG. 14, and returns an execution result to the component execution control part 11a. The difference between the flowchart of FIG. 14 and the flowchart of FIG. 6 showing the processing example of the database access control unit 12 is that step S65 is deleted.

コンポーネント実行制御部11a上で実行されているコンポーネントAの統計情報登録部111Aは、データベースアクセス制御部12aから実行結果が返却されると、図13のフローチャートに示すステップS131の処理を行う。ステップS131において、統計情報登録部111Aは、先ず、コンポーネント制御情報格納部17に登録されている自コンポーネント名aに関するコンポーネント情報32に変更SQL文が含まれているか否かを調べる。そして、変更SQL文が含まれていない場合は、自コンポーネントA中のSQL文「SQL−1」と、自コンポーネントAのコンポーネント名aと、その処理時間Taとを含むコンポーネント情報42を、セッション情報41の下位階層に追加する。これに対して、コンポーネント情報32に変更SQL文が含まれている場合は、上記変更SQL文と、自コンポーネントAのコンポーネント名aと、処理時間Taとを含むコンポーネント情報42を、セッション情報41の下位階層に追加する。以上が、ステップS131で行う処理である。   When the execution result is returned from the database access control unit 12a, the statistical information registration unit 111A of the component A being executed on the component execution control unit 11a performs the process of step S131 shown in the flowchart of FIG. In step S131, the statistical information registration unit 111A first checks whether or not a change SQL sentence is included in the component information 32 related to the self component name a registered in the component control information storage unit 17. If the changed SQL statement is not included, the component information 42 including the SQL statement “SQL-1” in the own component A, the component name a of the own component A, and the processing time Ta thereof is displayed as the session information. 41 is added to the lower hierarchy. On the other hand, when the change SQL sentence is included in the component information 32, the component information 42 including the change SQL sentence, the component name a of the self component A, and the processing time Ta is set in the session information 41. Add to the lower hierarchy. The above is the process performed in step S131.

その後、コンポーネント実行制御部11aは、次のコンポーネント情報に注目し(ステップS58,S54)、前述した処理と同様の処理を行う。そして、未注目のコンポーネント情報がなくなると(ステップS55がNO)、その処理を終了する。   Thereafter, the component execution control unit 11a pays attention to the next component information (steps S58 and S54), and performs the same process as described above. When there is no unfocused component information (NO in step S55), the process is terminated.

本実施の形態によれば、第1の実施の形態の効果に加え、データベースアクセス制御部12aの負荷を低減できるという効果を得ることができる。その理由は、各コンポーネントA〜Cに統計情報登録部111A〜111Cを設けたからである。   According to the present embodiment, in addition to the effect of the first embodiment, an effect that the load on the database access control unit 12a can be reduced can be obtained. This is because the statistical information registration units 111A to 111C are provided in the components A to C, respectively.

本発明は、データベースを利用したアプリケーション開発やシステム運用を行う分野で利用が可能である。   The present invention can be used in the field of application development and system operation using a database.

本発明の作用を説明するための図である。It is a figure for demonstrating the effect | action of this invention. 本発明にかかるデータベースチューニング装置の第1の実施の形態の構成例を示すブロック図である。It is a block diagram which shows the structural example of 1st Embodiment of the database tuning apparatus concerning this invention. コンポーネント制御情報格納部17の内容例を示す図である。It is a figure which shows the example of the content of the component control information storage part. 統計情報格納部18の内容例を示す図である。It is a figure which shows the example of the content of the statistical information storage part. コンポーネント実行制御部11の処理例を示すフローチャートである。4 is a flowchart illustrating a processing example of a component execution control unit 11. データベースアクセス要求が入力されたときの、データベースアクセス制御部12の処理例を示すフローチャートである。It is a flowchart which shows the process example of the database access control part 12 when a database access request | requirement is input. 処理時間通知が入力されたときのデータベースアクセス制御部12の処理例を示すフローチャートである。It is a flowchart which shows the process example of the database access control part 12 when a process time notification is input. モニタリング/チューニング制御部14の処理例を示すフローチャートである。4 is a flowchart showing a processing example of a monitoring / tuning control unit 14. 表示部20に表示された統計情報の一例を示す図である。It is a figure which shows an example of the statistical information displayed on the display part. 本発明の第2の実施の形態において、コンポーネント実行制御部11が行う処理例を示すフローチャートである。It is a flowchart which shows the process example which the component execution control part 11 performs in the 2nd Embodiment of this invention. 本発明の第2の実施の形態において、データベースアクセス制御部12が行う処理例を示すフローチャートである。It is a flowchart which shows the process example which the database access control part 12 performs in the 2nd Embodiment of this invention. 本発明にかかるデータベースチューニング装置の第3の実施の形態の構成例を示すブロック図である。It is a block diagram which shows the structural example of 3rd Embodiment of the database tuning apparatus concerning this invention. コンポーネント実行制御部11aの処理例を示すフローチャートである。It is a flowchart which shows the process example of the component execution control part 11a. データベースアクセス制御部12aの処理例を示すフローチャートである。It is a flowchart which shows the process example of the database access control part 12a.

符号の説明Explanation of symbols

1…データベースアクセス手段
2…モニタリング/チューニング制御部
3…コンポーネント制御情報格納部
4…統計情報格納部
11,11a…コンポーネント実行制御部
12,12a…データベースアクセス制御部
13…リレーショナルデータベース管理システム(RDBMS)
14…モニタリング/チューニング制御部
15…イベント処理部
16…コンポーネント情報登録部
17…コンポーネント制御情報格納部
18…統計情報格納部
19…リレーショナルデータベース(RDB)
20…表示部
A〜C…コンポーネント
DESCRIPTION OF SYMBOLS 1 ... Database access means 2 ... Monitoring / tuning control part 3 ... Component control information storage part 4 ... Statistical information storage part 11, 11a ... Component execution control part 12, 12a ... Database access control part 13 ... Relational database management system (RDBMS)
14 ... Monitoring / tuning control unit 15 ... Event processing unit 16 ... Component information registration unit 17 ... Component control information storage unit 18 ... Statistical information storage unit 19 ... Relational database (RDB)
20: Display units A to C: Component

Claims (14)

コンポーネント制御情報格納部と、
統計情報格納部と、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部と、
利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントのコンポーネント名と前記サービス名とに対応付けて前記コンポーネント制御情報格納部に変更SQL文が格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に、前記利用者端末との間のセッションID及び前記サービス名によって特定される統計情報として前記変更SQL文、その処理時間および前記コンポーネント名を追加し、変更SQL文が格納されていない場合は、前記コンポーネント中のSQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に、前記セッションID及び前記サービス名によって特定される統計情報として前記SQL文、その処理時間および前記コンポーネント名を追加するデータベースアクセス手段とを備えたことを特徴とするデータベースチューニング装置。
A component control information storage unit;
A statistical information storage unit;
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit A tuning control unit;
When a processing request including a service name is input from a user terminal, each component constituting the service specified by the service name is executed, and the component control is associated with the component name of the component and the service name. When a change SQL statement is stored in the information storage unit, database access is performed according to the change SQL statement, and the statistical information storage unit is specified by a session ID with the user terminal and the service name. The modified SQL statement, its processing time, and the component name are added as statistical information, and if the modified SQL statement is not stored, the database is accessed according to the SQL statement in the component and the statistical information storage unit , The session ID and the service Database tuning apparatus characterized by comprising the SQL statement as the statistical information specified and a database access unit for adding the processing time and the component name by.
コンポーネント制御情報格納部と、
統計情報格納部と、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部と、
利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントに含まれるSQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力すると共に、前記セッションIDおよび前記サービス名からなるセッション情報を含んだ統計情報を前記統計情報格納部に格納するコンポーネント実行制御部と、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、前記データベースアクセス要求に含まれているSQL文に対する変更SQL文が前記コンポーネント制御情報格納部に格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記変更SQL文、その処理時間および前記データベースアクセス要求に含まれているコンポーネント名を追加し、前記データベースアクセス要求に含まれているSQL文に対応する変更SQL文が前記コンポーネント制御情報格納部に格納されていない場合は、前記SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記SQL文、その処理時間および前記データベースアクセス要求に含まれているコンポーネント名を追加するデータベースアクセス制御部とを備えたことを特徴とするデータベースチューニング装置。
A component control information storage unit;
A statistical information storage unit;
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit A tuning control unit;
When a processing request including a service name is input from a user terminal, each component constituting the service specified by the service name is executed, and the SQL statement included in the component, the component name of the component, the user A database access request including a session ID for identifying a session with a terminal and a service name in the processing request is output, and statistical information including session information including the session ID and the service name is stored in the statistical information storage unit A component execution control unit to store;
When a database access request is output from the component execution control unit, if a change SQL statement for the SQL statement included in the database access request is stored in the component control information storage unit, according to the change SQL statement In addition to performing database access, the statistical information whose session information matches the session ID and service name in the database access request in the statistical information stored in the statistical information storage unit is changed to the changed SQL statement and its processing If the time and the component name included in the database access request are added, and the change SQL statement corresponding to the SQL statement included in the database access request is not stored in the component control information storage unit, Follow the SQL statement In addition to performing base access, the statistical information in which the session information matches the session ID and the service name in the database access request in the statistical information stored in the statistical information storage unit is included in the SQL statement and the processing time. And a database access control unit for adding a component name included in the database access request.
サービス名を含むサービス情報に対応付けて、前記サービス名によって特定されるサービスを構成する複数のコンポーネントそれぞれのコンポーネント情報であって、コンポーネントを特定するコンポーネント名を含むコンポーネント情報が格納されたコンポーネント制御情報格納部と、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示に従って、前記コンポーネント制御情報格納部に格納されているコンポーネント情報の内の該当するコンポーネント情報に前記変更SQL文を追加するモニタリング/チューニング制御部と、
統計情報格納部と、
利用者端末からサービス名を含む処理要求が入力されたとき、前記コンポーネント制御情報格納部を参照して前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントに含まれるSQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力すると共に、前記セッションIDおよび前記サービス名からなるセッション情報を含んだ統計情報を前記統計情報格納部に格納するコンポーネント実行制御部と、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、前記コンポーネント制御情報格納部に格納されているコンポーネント情報の内の、前記データベースアクセス要求によって特定されるコンポーネント情報に変更SQL文が含まれている場合は、該変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記変更SQL文、その処理時間および前記データベースアクセス要求中のコンポーネント名を追加し、変更SQL文が含まれていない場合は、前記データベースアクセス要求に含まれているSQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に前記SQL文、その処理時間および前記データベースアクセス要求中のコンポーネント名を追加するデータベースアクセス制御部とを備えたことを特徴とするデータベースチューニング装置。
Component control information in which component information including a component name for identifying a component is stored in association with service information including a service name, which is component information of each of a plurality of components constituting the service identified by the service name. A storage unit;
Monitoring / adding the changed SQL statement to the corresponding component information in the component information stored in the component control information storage unit according to the SQL statement change instruction including the service name, the component name, and the changed SQL statement after the change A tuning control unit;
A statistical information storage unit;
When a processing request including a service name is input from a user terminal, each component constituting the service specified by the service name is executed with reference to the component control information storage unit, and an SQL statement included in the component is executed. A database access request including a component name of the component, a session ID for specifying a session with the user terminal, and a service name in the processing request, and includes session information including the session ID and the service name. A component execution control unit for storing statistical information in the statistical information storage unit,
When a database access request is output from the component execution control unit, a change SQL statement is included in the component information specified by the database access request among the component information stored in the component control information storage unit If the database information is accessed according to the changed SQL statement, the statistical information in the statistical information stored in the statistical information storage unit matches the session ID and service name in the database access request. The change SQL statement, its processing time, and the name of the component in the database access request are added, and if the change SQL statement is not included, the database is accessed according to the SQL statement included in the database access request. When Among the statistical information stored in the statistical information storage unit, the SQL statement, its processing time, and the database access request are added to the statistical information whose session information matches the session ID and service name in the database access request. And a database access control unit for adding a component name therein.
コンポーネント制御情報格納部と、
統計情報格納部と、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部と、
利用者端末からサービス名を含む処理要求が入力されたとき、前記利用者端末とのセッションを特定するセッションIDと前記サービス名とからなるセッション情報を含んだ統計情報を前記統計情報格納部に格納する処理を行うと共に、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、SQL文が変更されているコンポーネントについては、前記コンポーネント制御情報格納部に格納されている該当する変更SQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力し、SQL文が変更されていないコンポーネントについては、前記SQL文、前記コンポーネントのコンポーネント名、前記セッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力する処理を行うコンポーネント実行制御部と、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、該データベースアクセス要求に含まれているSQL文或いは変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に前記SQL文或いは変更SQL文、その処理時間および前記データベースアクセス要求中のコンポーネント名を追加するデータベースアクセス制御部とを備えたことを特徴とするデータベースチューニング装置。
A component control information storage unit;
A statistical information storage unit;
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit A tuning control unit;
When a processing request including a service name is input from a user terminal, statistical information including session information including a session ID for identifying a session with the user terminal and the service name is stored in the statistical information storage unit For each component in which the SQL statement is changed for each component constituting the service specified by the service name, the corresponding changed SQL statement stored in the component control information storage unit is executed. A database access request that includes a component name of the component, a session ID that identifies a session with the user terminal, and a service name in the processing request, and for the SQL statement that has not been changed, the SQL statement , Component of the component Name, and component execution control unit that performs processing for outputting a database access request including the service name in the session ID and the processing request,
When a database access request is output from the component execution control unit, the database is accessed according to the SQL statement or the modified SQL statement included in the database access request, and the statistical information stored in the statistical information storage unit A database access control unit for adding the SQL statement or the change SQL statement, its processing time, and the component name in the database access request to statistical information whose session information matches the session ID and service name in the database access request And a database tuning apparatus.
サービス名を含むサービス情報に対応付けて、前記サービス名によって特定されるサービスを構成する複数のコンポーネントそれぞれのコンポーネント情報であって、コンポーネントを特定するコンポーネント名を含むコンポーネント情報が格納されたコンポーネント制御情報格納部と、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示に従って、前記コンポーネント制御情報格納部に格納されているコンポーネント情報の内の該当するコンポーネント情報に前記変更SQL文を追加するモニタリング/チューニング制御部と、
統計情報格納部と、
利用者端末からサービス名を含む処理要求が入力されたとき、前記利用者端末とのセッションを特定するセッションIDと前記サービス名とからなるセッション情報を含んだ統計情報を前記統計情報格納部に格納する処理を行うと共に、前記コンポーネント制御情報格納部を参照して前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントに対応するコンポーネント情報に変更SQL文が含まれている場合は、該変更SQL文、前記コンポーネントのコンポーネント名、前記セッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力し、前記コンポーネント情報に変更SQL文が含まれていない場合は、前記コンポーネントに含まれるSQL文、前記コンポーネントのコンポーネント名、前記セッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力するコンポーネント実行制御部と、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、該データベースアクセス要求に含まれているSQL文或いは変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に前記SQL文或いは変更SQL文と、その処理時間と、前記データベースアクセス要求中のコンポーネント名とを追加するデータベースアクセス制御部とを備えたことを特徴とするデータベースチューニング装置。
Component control information in which component information including a component name for identifying a component is stored in association with service information including a service name, which is component information of each of a plurality of components constituting the service identified by the service name. A storage unit;
Monitoring / adding the changed SQL statement to the corresponding component information in the component information stored in the component control information storage unit according to the SQL statement change instruction including the service name, the component name, and the changed SQL statement after the change A tuning control unit;
A statistical information storage unit;
When a processing request including a service name is input from a user terminal, statistical information including session information including a session ID for identifying a session with the user terminal and the service name is stored in the statistical information storage unit When each component constituting the service specified by the service name is executed with reference to the component control information storage unit, and the component information corresponding to the component includes a change SQL statement Outputs a database access request including the change SQL statement, the component name of the component, the session ID, and the service name in the processing request, and if the change SQL statement is not included in the component information, the component SQL statement included in the above-mentioned component Cement component name, and component execution control unit for outputting a database access request including the service name in the session ID and the processing request,
When a database access request is output from the component execution control unit, the database is accessed according to the SQL statement or the modified SQL statement included in the database access request, and the statistical information stored in the statistical information storage unit A database in which the SQL statement or the change SQL statement, its processing time, and the component name in the database access request are added to statistical information whose session information matches the session ID and service name in the database access request A database tuning apparatus comprising an access control unit.
コンポーネント制御情報格納部と、
統計情報格納部と、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部と、
利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントに含まれるSQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力すると共に、前記セッションIDおよび前記サービス名からなるセッション情報を含んだ統計情報を前記統計情報格納部に格納するコンポーネント実行制御部と、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、前記データベースアクセス要求に含まれているSQL文に対する変更SQL文が前記コンポーネント制御情報格納部に格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行い、前記データベースアクセス要求に含まれているSQL文に対応する変更SQL文が前記コンポーネント制御情報格納部に格納されていない場合は、前記SQL文に従ってデータベースアクセスを行うデータベースアクセス制御部とを備え、且つ、
前記コンポーネント実行制御部で実行されるコンポーネントが、自コンポーネントに含まれているSQL文に対する変更SQL文が前記コンポーネント制御情報格納部に格納されている場合は、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に前記変更SQL文、その処理時間および自コンポーネントのコンポーネント名を追加し、自コンポーネントに含まれているSQL文に対する変更SQL文が前記コンポーネント制御情報格納部に格納されていない場合は、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記SQL文、その処理時間および自コンポーネントのコンポーネント名を追加する構成を有することを特徴とするデータベースチューニング装置。
A component control information storage unit;
A statistical information storage unit;
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit A tuning control unit;
When a processing request including a service name is input from a user terminal, each component constituting the service specified by the service name is executed, and the SQL statement included in the component, the component name of the component, the user A database access request including a session ID for identifying a session with a terminal and a service name in the processing request is output, and statistical information including session information including the session ID and the service name is stored in the statistical information storage unit A component execution control unit to store;
When a database access request is output from the component execution control unit, if a change SQL statement for the SQL statement included in the database access request is stored in the component control information storage unit, according to the change SQL statement A database access control unit that performs database access and performs a database access according to the SQL statement when a change SQL statement corresponding to the SQL statement included in the database access request is not stored in the component control information storage unit; And comprising
The component executed by the component execution control unit is stored in the statistical information storage unit when the change SQL statement for the SQL statement included in the component is stored in the component control information storage unit Among the statistical information, the session information is added to the statistical information that matches the session ID and service name in the database access request, and the modified SQL statement, its processing time, and the component name of the own component are added. When a change SQL statement for the existing SQL statement is not stored in the component control information storage unit, the session information in the statistical information stored in the statistical information storage unit is the session ID in the database access request and In the statistics that match the service name, Serial SQL statements, the database tuning apparatus characterized by having a structure of adding the component names of the processing time and the own components.
請求項3または5記載のデータベースチューニング装置において、
前記コンポーネント制御情報格納部に格納されている各サービス情報が、そのサービス情報によって特定されるサービスの許容処理時間を示すサービス閾値を含み、
前記モニタリング/チューニング制御部が、前記統計情報格納部に格納されている統計情報と、前記コンポーネント制御情報格納部に格納されている各サービス毎のサービス閾値とに基づいて、処理時間が該当するサービス閾値を超えたサービスの発生を検出する構成を有することを特徴とするデータベースチューニング装置。
In the database tuning device according to claim 3 or 5,
Each service information stored in the component control information storage unit includes a service threshold value indicating an allowable processing time of a service specified by the service information,
Services in which the monitoring / tuning control unit corresponds to the processing time based on the statistical information stored in the statistical information storage unit and the service threshold value for each service stored in the component control information storage unit A database tuning apparatus having a configuration for detecting occurrence of a service exceeding a threshold.
請求項7記載のデータベースチューニング装置において、
前記モニタリング/チューニング制御部が、処理時間が該当するサービス閾値を超えたサービスの発生を検出したとき、外部装置にそのことを通知するイベント処理部を備えたことを特徴とするデータベースチューニング装置。
The database tuning device according to claim 7, wherein
When the monitoring / tuning control unit detects the occurrence of a service whose processing time exceeds a corresponding service threshold, the database tuning device includes an event processing unit that notifies an external device of the occurrence.
モニタリング/チューニング制御部が、サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納し、
データベースアクセス手段が、利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントのコンポーネント名と前記サービス名とに対応付けて前記コンポーネント制御情報格納部に変更SQL文が格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に、前記利用者端末との間のセッションID及び前記サービス名によって特定される統計情報として前記変更SQL文、その処理時間および前記コンポーネント名を追加し、変更SQL文が格納されていない場合は、前記コンポーネント中のSQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に、前記セッションID及び前記サービス名によって特定される統計情報として前記SQL文、その処理時間および前記コンポーネント名を追加することを特徴とするデータベースチューニング方法。
When the SQL statement change instruction including the service name, the component name, and the changed SQL statement after the change is input, the monitoring / tuning control unit associates the change SQL with the service name and the component name in the component control information storage unit. Store statements,
When a processing request including a service name is input from the user terminal, the database access unit executes each component constituting the service specified by the service name, and corresponds to the component name of the component and the service name In addition, when a change SQL statement is stored in the component control information storage unit, database access is performed according to the change SQL statement, and a session ID with the user terminal and the user terminal are stored in the statistical information storage unit. The changed SQL statement, its processing time and the component name are added as statistical information specified by the service name. When the changed SQL statement is not stored, the database is accessed according to the SQL statement in the component, and The statistical information storage unit Deployment ID and the SQL statement as the statistical information specified by the service name, the database tuning method characterized by adding the processing time and the component name.
モニタリング/チューニング制御部が、サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納し、
コンポーネント実行制御部が、利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントに含まれるSQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力すると共に、前記セッションIDおよび前記サービス名からなるセッション情報を含んだ統計情報を統計情報格納部に格納し、
データベースアクセス制御部が、前記コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、前記データベースアクセス要求に含まれているSQL文に対する変更SQL文が前記コンポーネント制御情報格納部に格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記変更SQL文、その処理時間および前記データベースアクセス要求に含まれているコンポーネント名を追加し、前記データベースアクセス要求に含まれているSQL文に対応する変更SQL文が前記コンポーネント制御情報格納部に格納されていない場合は、前記SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記SQL文、その処理時間および前記データベースアクセス要求に含まれているコンポーネント名を追加することを特徴とするデータベースチューニング方法。
When the SQL statement change instruction including the service name, the component name, and the changed SQL statement after the change is input, the monitoring / tuning control unit associates the change SQL with the service name and the component name in the component control information storage unit. Store statements,
When a processing request including a service name is input from a user terminal, the component execution control unit executes each component constituting the service specified by the service name, and includes an SQL statement included in the component, Outputs a database access request including a component name, a session ID for specifying a session with the user terminal, and a service name in the processing request, and statistical information including session information including the session ID and the service name. Store in the statistical information storage,
When the database access control unit outputs a database access request from the component execution control unit, a change SQL statement for the SQL statement included in the database access request is stored in the component control information storage unit. The database is accessed according to the changed SQL statement, and the statistical information in the statistical information stored in the statistical information storage unit matches the session ID and service name in the database access request. A change SQL statement, its processing time, and a component name included in the database access request are added, and a change SQL statement corresponding to the SQL statement included in the database access request is stored in the component control information storage unit Not If the database information is accessed according to the SQL statement, and the statistical information stored in the statistical information storage unit, the session information matches the session ID and service name in the database access request, A database tuning method comprising: adding the SQL statement, its processing time, and a component name included in the database access request.
モニタリング/チューニング制御部が、サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納し、
コンポーネント実行制御部が、利用者端末からサービス名を含む処理要求が入力されたとき、前記利用者端末とのセッションを特定するセッションIDと前記サービス名とからなるセッション情報を含んだ統計情報を統計情報格納部に格納する処理を行うと共に、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、SQL文が変更されているコンポーネントについては、前記コンポーネント制御情報格納部に格納されている該当する変更SQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力し、SQL文が変更されていないコンポーネントについては、前記SQL文、前記コンポーネントのコンポーネント名、前記セッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力する処理を行い、
データベースアクセス制御部が、前記コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、該データベースアクセス要求に含まれているSQL文或いは変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に前記SQL文或いは変更SQL文、その処理時間および前記データベースアクセス要求中のコンポーネント名を追加することを特徴とするデータベースチューニング方法。
When the SQL statement change instruction including the service name, the component name, and the changed SQL statement after the change is input, the monitoring / tuning control unit associates the change SQL with the service name and the component name in the component control information storage unit. Store statements,
When the component execution control unit receives a processing request including a service name from a user terminal, statistical information including session information including a session ID for identifying a session with the user terminal and the service name In addition to performing processing to be stored in the information storage unit, each component constituting the service specified by the service name is executed, and components whose SQL statements have been changed are stored in the component control information storage unit For a component for which a database access request including a corresponding change SQL statement, a component name of the component, a session ID for specifying a session with the user terminal, and a service name in the processing request is output, and the SQL statement is not changed Is the SQL statement, Component name component, performs a process of outputting a database access request including the service name in the session ID and the processing request,
When the database access control unit outputs a database access request from the component execution control unit, the database access control unit accesses the database according to the SQL statement or the modified SQL statement included in the database access request and stores it in the statistical information storage unit Among the statistical information, the SQL statement or the modified SQL statement, the processing time and the component name in the database access request are added to the statistical information whose session information matches the session ID and service name in the database access request. A database tuning method characterized by adding.
コンポーネント制御情報格納部と、統計情報格納部とを備えたコンピュータを、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部、
利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントのコンポーネント名と前記サービス名とに対応付けて前記コンポーネント制御情報格納部に変更SQL文が格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に、前記利用者端末との間のセッションID及び前記サービス名によって特定される統計情報として前記変更SQL文、その処理時間および前記コンポーネント名を追加し、変更SQL文が格納されていない場合は、前記コンポーネント中のSQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に、前記セッションID及び前記サービス名によって特定される統計情報として前記SQL文、その処理時間および前記コンポーネント名を追加するデータベースアクセス手段として機能させるためのプログラム。
A computer including a component control information storage unit and a statistical information storage unit
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit Tuning control unit,
When a processing request including a service name is input from a user terminal, each component constituting the service specified by the service name is executed, and the component control is associated with the component name of the component and the service name. When a change SQL statement is stored in the information storage unit, database access is performed according to the change SQL statement, and the statistical information storage unit is specified by a session ID with the user terminal and the service name. The modified SQL statement, its processing time, and the component name are added as statistical information, and if the modified SQL statement is not stored, the database is accessed according to the SQL statement in the component and the statistical information storage unit , The session ID and the service The SQL statement, program for functioning as a database access unit for adding the processing time and the component name as the statistical information specified by.
コンポーネント制御情報格納部と、統計情報格納部とを備えたコンピュータを、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部、
利用者端末からサービス名を含む処理要求が入力されたとき、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、そのコンポーネントに含まれるSQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力すると共に、前記セッションIDおよび前記サービス名からなるセッション情報を含んだ統計情報を前記統計情報格納部に格納するコンポーネント実行制御部、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、前記データベースアクセス要求に含まれているSQL文に対する変更SQL文が前記コンポーネント制御情報格納部に格納されている場合は、前記変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記変更SQL文、その処理時間および前記データベースアクセス要求に含まれているコンポーネント名を追加し、前記データベースアクセス要求に含まれているSQL文に対応する変更SQL文が前記コンポーネント制御情報格納部に格納されていない場合は、前記SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に、前記SQL文、その処理時間および前記データベースアクセス要求に含まれているコンポーネント名を追加するデータベースアクセス制御部として機能させるためのプログラム。
A computer including a component control information storage unit and a statistical information storage unit
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit Tuning control unit,
When a processing request including a service name is input from a user terminal, each component constituting the service specified by the service name is executed, and the SQL statement included in the component, the component name of the component, the user A database access request including a session ID for identifying a session with a terminal and a service name in the processing request is output, and statistical information including session information including the session ID and the service name is stored in the statistical information storage unit Component execution control unit to store,
When a database access request is output from the component execution control unit, if a change SQL statement for the SQL statement included in the database access request is stored in the component control information storage unit, according to the change SQL statement In addition to performing database access, the statistical information whose session information matches the session ID and service name in the database access request in the statistical information stored in the statistical information storage unit is changed to the changed SQL statement and its processing If the time and the component name included in the database access request are added, and the change SQL statement corresponding to the SQL statement included in the database access request is not stored in the component control information storage unit, Follow the SQL statement In addition to performing base access, the statistical information in which the session information matches the session ID and the service name in the database access request in the statistical information stored in the statistical information storage unit is included in the SQL statement and the processing time. And a program for causing a database access control unit to add a component name included in the database access request.
コンポーネント制御情報格納部と、統計情報格納部とを備えたコンピュータを、
サービス名、コンポーネント名および変更後の変更SQL文を含むSQL文変更指示が入力されたとき、前記コンポーネント制御情報格納部に、前記サービス名およびコンポーネント名に関連付けて前記変更SQL文を格納するモニタリング/チューニング制御部、
利用者端末からサービス名を含む処理要求が入力されたとき、前記利用者端末とのセッションを特定するセッションIDと前記サービス名とからなるセッション情報を含んだ統計情報を前記統計情報格納部に格納する処理を行うと共に、前記サービス名によって特定されるサービスを構成する各コンポーネントを実行し、SQL文が変更されているコンポーネントについては、前記コンポーネント制御情報格納部に格納されている該当する変更SQL文、前記コンポーネントのコンポーネント名、前記利用者端末とのセッションを特定するセッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力し、SQL文が変更されていないコンポーネントについては、前記SQL文、前記コンポーネントのコンポーネント名、前記セッションIDおよび前記処理要求中のサービス名を含むデータベースアクセス要求を出力する処理を行うコンポーネント実行制御部、
該コンポーネント実行制御部からデータベースアクセス要求が出力されたとき、該データベースアクセス要求に含まれているSQL文或いは変更SQL文に従ってデータベースアクセスを行うと共に、前記統計情報格納部に格納されている統計情報の内の、セッション情報が前記データベースアクセス要求中のセッションID及びサービス名と一致する統計情報に前記SQL文或いは変更SQL文、その処理時間および前記データベースアクセス要求中のコンポーネント名を追加するデータベースアクセス制御部として機能させるためのプログラム。
A computer including a component control information storage unit and a statistical information storage unit
When an SQL statement change instruction including a service name, a component name, and a changed SQL statement after change is input, monitoring / stores the changed SQL statement in association with the service name and the component name in the component control information storage unit Tuning control unit,
When a processing request including a service name is input from a user terminal, statistical information including session information including a session ID for identifying a session with the user terminal and the service name is stored in the statistical information storage unit For each component in which the SQL statement is changed for each component constituting the service specified by the service name, the corresponding changed SQL statement stored in the component control information storage unit is executed. A database access request that includes a component name of the component, a session ID that identifies a session with the user terminal, and a service name in the processing request, and for the SQL statement that has not been changed, the SQL statement , Component of the component Name, the component execution control unit that performs processing for outputting a database access request including the session ID and the service name in the processing request,
When a database access request is output from the component execution control unit, the database is accessed according to the SQL statement or the modified SQL statement included in the database access request, and the statistical information stored in the statistical information storage unit A database access control unit for adding the SQL statement or the change SQL statement, its processing time, and the component name in the database access request to statistical information whose session information matches the session ID and service name in the database access request Program to function as.
JP2005093673A 2005-03-29 2005-03-29 Database tuning apparatus, database tuning method, and program Expired - Fee Related JP4810113B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005093673A JP4810113B2 (en) 2005-03-29 2005-03-29 Database tuning apparatus, database tuning method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005093673A JP4810113B2 (en) 2005-03-29 2005-03-29 Database tuning apparatus, database tuning method, and program

Publications (2)

Publication Number Publication Date
JP2006277179A JP2006277179A (en) 2006-10-12
JP4810113B2 true JP4810113B2 (en) 2011-11-09

Family

ID=37211900

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005093673A Expired - Fee Related JP4810113B2 (en) 2005-03-29 2005-03-29 Database tuning apparatus, database tuning method, and program

Country Status (1)

Country Link
JP (1) JP4810113B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101006935B1 (en) * 2009-03-11 2011-01-12 사단법인 보험개발원 Statistics utilizing system
JP4722195B2 (en) 2009-04-13 2011-07-13 富士通株式会社 Database message analysis support program, method and apparatus
JP6376734B2 (en) 2013-08-12 2018-08-22 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation Database management apparatus, database control method and program

Also Published As

Publication number Publication date
JP2006277179A (en) 2006-10-12

Similar Documents

Publication Publication Date Title
US11853303B1 (en) Data stream generation based on sourcetypes associated with messages
JP6538980B2 (en) Automated anomaly detection service in heterogeneous mixed log streams
US20190250965A1 (en) Automatic registration of empty pointers
US7251584B1 (en) Incremental detection and visualization of problem patterns and symptoms based monitored events
US8065315B2 (en) Solution search for software support
US20180365309A1 (en) Automatic triage model execution in machine data driven monitoring automation apparatus
US7886028B2 (en) Method and system for system migration
US7434208B2 (en) Graphical interface system monitor providing error notification message with modifiable indication of severity
US11194794B2 (en) Search input recommendations
US9116899B2 (en) Managing changes to one or more files via linked mapping records
US20130318496A1 (en) Detection of central-registry events influencing dynamic pointers and app feature dependencies
US11768776B1 (en) Evicting data associated with a data intake and query system from a local storage
US10911447B2 (en) Application error fingerprinting
JP6823265B2 (en) Analytical instruments, analytical systems, analytical methods and analytical programs
US8954376B2 (en) Detecting transcoding tables in extract-transform-load processes
JP6885784B2 (en) Incident management equipment, incident management methods and computer programs
US6795832B2 (en) Rule based compatibility module
WO2021072742A1 (en) Assessing an impact of an upgrade to computer software
US8606762B2 (en) Data quality administration framework
US10261998B2 (en) Search apparatus and search method
JP4810113B2 (en) Database tuning apparatus, database tuning method, and program
US7051230B2 (en) Method and system for allowing customization of remote data collection in the event of a system error
JP2009134535A (en) Device for supporting software development, method of supporting software development, and program for supporting software development
CN112182025A (en) Log analysis method, device, equipment and computer readable storage medium
JPWO2009008129A1 (en) Development document data management apparatus, development document data management system, development document data management method, program thereof, and storage medium

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090203

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20090525

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20090525

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090602

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110822

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140826

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees