JP4476655B2 - データベース診断システム - Google Patents

データベース診断システム Download PDF

Info

Publication number
JP4476655B2
JP4476655B2 JP2004078075A JP2004078075A JP4476655B2 JP 4476655 B2 JP4476655 B2 JP 4476655B2 JP 2004078075 A JP2004078075 A JP 2004078075A JP 2004078075 A JP2004078075 A JP 2004078075A JP 4476655 B2 JP4476655 B2 JP 4476655B2
Authority
JP
Japan
Prior art keywords
diagnosis
database
information
diagnostic
database server
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
JP2004078075A
Other languages
English (en)
Other versions
JP2005267193A (ja
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.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
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 Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2004078075A priority Critical patent/JP4476655B2/ja
Publication of JP2005267193A publication Critical patent/JP2005267193A/ja
Application granted granted Critical
Publication of JP4476655B2 publication Critical patent/JP4476655B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、データベース診断システムに関し、特に、ネットワークを介してオンラインで診断を行うことが可能なデータベース診断システムに関する。
コンピュータを利用して様々なビジネスデータを処理する装置として、データベースシステムが広く普及している。データベースシステムは、通常、ネットワーク上にデータベースサーバを設置し、多数のクライアントコンピュータから、このデータベースサーバをアクセスする形態によって構築される。したがって、データベースとして取り扱うべきデータ量が増えれば増えるほど、また、ネットワークを介して接続するクライアントコンピュータの台数が増えれば増えるほど、データベースサーバの負担も大きくなる。
近年では、インターネットが、社会的な基幹システムとして機能するようになってきており、インターネット経由で多数のクライアントコンピュータからのアクセスを同時に受け付ける必要があるデータベースサーバも少なくない。このようなサーバが、万一、高負荷によってダウンするような事態が生じると、社会的な影響も無視できなくなる。このような背景事情から、データベースサーバの性能を客観的に計測することは重要であり、データベース診断システムを用いて、定期的にデータベースサーバの性能を計測して診断することが行われている。
サーバ性能を計測する一般的な手法は、サーバに対して種々の処理要求を与え、その処理に対するサーバの応答速度やスループットを計測する方法によって行われる。たとえば、下記特許文献1には、サーバに処理要求を送信した時刻と、この処理要求に対する応答データの受信時刻との差から、応答時間を算出し、サーバの性能を計測する手法が開示されている。また、下記特許文献2には、待ち時間を発生させない状況下での同時処理数とスループットと応答時間との関係をエミュレーション評価することにより、サーバの性能を計測する手法が開示されている。
一般的なデータベースサーバの場合、通常、SQL(Structured Query Language)文として記述された所定の診断用スクリプトを与え、それに対する処理結果を受け取る作業によって診断が行われる。SQLは、ISOにより標準規格となっているデータベース照会言語であり、現在市販されている多くのデータベースサーバが対応している。
特開平10−143401号公報 特許第2923874号公報
上述したように、データベースサーバに対する診断は、通常、SQLで記述された診断用スクリプトを与えることにより実行されるが、SQLには各社独自の拡張規格による方言が存在する。このため、個々のデータベースサーバが採用しているDBMS(DataBase Management System:データベース管理システム)の種類や、サーバの基幹となるOSの種類によって、それぞれ異なるSQL文を用意しなければならない。
このため、従来は、診断を請け負う診断業者が、データベースサーバの管理者と事前に打ち合わせをして、DBMSの種類など、診断に必要な種々の情報を聞き出し、これらの情報に基づいて、当該データベースサーバに対する診断用スクリプトを作成する必要があった。こうして、診断用スクリプトが準備できたら、これをデータベースサーバに与えて実行し、実行結果を採取し、これを所定の診断結果の形式に加工して、データベースサーバの管理者に提示する、という手順を踏むことになる。このような従来の手順により診断を行うと、最終的に診断結果が得られるまで、数日〜数週間の長い期間が必要になり、また、診断業者の作業負担も大きなものになる。
そこで本発明は、より短期間に、かつ、より簡便な作業により、データベースサーバに対する診断を行うことが可能なデータベース診断システムを提供することを目的とする。
(1) 本発明の第1の態様は、診断対象となるデータベースサーバに対して、診断用スクリプトを与え、これを実行させることにより、当該データベースサーバについての性能の診断を行うデータベース診断システムを、ネットワークを介して診断対象となるデータベースサーバに接続可能なシステム本体と、ネットワークを介してシステム本体に接続可能な端末装置と、によって構成し、
端末装置を、Webブラウザプログラムが組み込まれたコンピュータから構成し、このWebブラウザプログラムを利用して、診断に必要な情報の入力作業と診断結果の表示処理とが行われるようにし、
システム本体には、
端末装置に対して、診断に必要な情報入力を行うための入力用Webページを提示する入力用Webページ提示手段と、
入力用Webページ上での端末装置のオペレータによる操作に基づいて、診断対象となるデータベースサーバに用いられているDBMSの種類、診断対象となるデータベースサーバに用いられているOSの種類、診断対象となるデータベースサーバについての管理ユーザ名およびパスワード、診断対象となるデータベースサーバを特定するためのDB識別情報、を診断対象指定情報として入力する診断対象指定情報入力手段と、
特定の種類のDBMSおよび特定の種類のOSが用いられている特定のデータベースサーバに対する診断を行うのに適した診断用スクリプトを、複数種類のDBMSおよび複数種類のOSの組み合わせごとに、それぞれ記憶させたスクリプト記憶手段と、
診断対象指定情報に含まれているDBMSの種類およびOSの種類に基づいて、当該DBMSおよびOSの組み合わせに対応した特定の診断用スクリプトを選択するスクリプト選択手段と、
選択された診断用スクリプトを、診断対象指定情報に含まれている管理ユーザ名およびパスワードとともに、診断対象指定情報に含まれているDB識別情報によって特定される診断対象となるデータベースサーバに与え、これを実行させる診断実行手段と、
診断対象となるデータベースサーバから、診断用スクリプトの実行結果を示す診断結果情報を受け取る診断結果受信手段と、
受け取った診断結果情報を、端末装置に対して、結果表示Webページとして提示する結果表示用Webページ提示手段と、
を設けるようにしたものである。
(2) 本発明の第2の態様は、上述の第1の態様に係るデータベース診断システムにおいて、
受け取った診断結果情報を、予め定められた所定のフォーマットで記述されたデータに変換するフォーマット変換手段と、
変換されたデータを格納する診断結果格納手段と、
を更に設けるようにしたものである。
(3) 本発明の第3の態様は、上述の第2の態様に係るデータベース診断システムにおいて、
フォーマット変換手段が、テキストデータ形式で受け取った診断結果情報を、XML形式で記述されたデータに変換する機能を有するようにしたものである。
(4) 本発明の第4の態様は、上述の第2または第3の態様に係るデータベース診断システムにおいて、
フォーマット変換手段が、受け取った診断結果情報に、診断対象となったデータベースサーバについてのDBMSの種類を示す情報、OSの種類を示す情報およびDB識別情報を書誌情報として付加する機能を有し、
診断結果格納手段が、この書誌情報を付加した状態の診断結果情報を格納する機能を有すようにしたものである。
(5) 本発明の第5の態様は、上述の第1〜第4の態様に係るデータベース診断システムにおいて、
「DBMSの種類」として「DBMS名およびそのバージョン」を用いるようにしたものである。
(6) 本発明の第6の態様は、上述の第1〜第5の態様に係るデータベース診断システムにおいて、
「DB識別情報」として「診断対象となるデータベースサーバのIPアドレスおよび診断対象となるデータベースの名称」を用いるようにしたものである。
(7) 本発明の第7の態様は、上述の第1〜第6の態様に係るデータベース診断システムにおいて、
結果表示用Webページ提示手段が、Webページ上での表示書式を示すスタイルシートに基づいて、診断結果情報をHTML形式に変換する機能を有するようにしたものである。
(8) 本発明の第8の態様は、上述の第1〜第7の態様に係るデータベース診断システムを構成するシステム本体を独立して提供できるようにしたものである。
(9) 本発明の第9の態様は、上述の第1〜第7の態様に係るデータベース診断システムを構成するシステム本体として、コンピュータを機能させるためのプログラムを用意し、このプログラムをコンピュータ読み取り可能な記録媒体に記録して配付できるようにしたものである。
以上のとおり、本発明に係るデータベース診断システムによれば、診断を実行するオペレータが、端末装置上に表示されたWebページに対して必要な情報を入力する作業を行うだけで、データベースサーバに対する診断が自動的に実行され、その結果が直ちにWebページ上で表示されることになるので、短期間に、かつ、簡便な作業により、データベースサーバに対する診断を行うことが可能になる。
以下、本発明を図示する実施形態に基づいて説明する。図1は、本発明の一実施形態に係るデータベース診断システムの基本構成を示すブロック図である。このデータベース診断システムは、データベースサーバ10,20に対する診断を行う機能をもったシステムであり、端末装置100とシステム本体200とによって構成されている。図示のとおり、データベースサーバ10,20、端末装置100、システム本体200は、いずれもネットワーク300に接続されており、必要があれば、相互にネットワーク300経由でアクセスすることができる。ネットワーク300としては、社内LANなどのローカルなネットワークを用いることも可能であるが、この実施形態では、インターネットをネットワーク300として用いている。
なお、ここでは、図示の便宜上、1台の端末装置100と、2台のデータベースサーバ10,20がネットワーク300に接続されている状態が示されているが、実用上は、より多数の端末装置やデータベースサーバをネットワーク300に接続した環境で本発明を実施するのが一般的である。特に、ネットワーク300としてインターネットを用いた場合、インターネットに接続された任意のデータベースサーバを、診断対象サーバとすることができ、また、インターネットに接続された任意の端末装置を、本発明に係るデータベース診断システム用の端末装置として用いることができる。
本発明に係るデータベース診断システムは、端末装置100とシステム本体200との組み合わせによって構成され、診断対象となるデータベースサーバ10,20に対して、診断用スクリプトを与え、これを実行させることにより、当該データベースサーバについての性能の診断を行う機能を有している。ここで、システム本体200は、ネットワーク300を介して診断対象となるデータベースサーバ10,20に接続可能な状態になっており、端末装置100は、ネットワーク300を介してシステム本体200に接続可能な状態になっている。
本発明に用いる端末装置100は、Webブラウザプログラムが組み込まれたコンピュータからなり、このWebブラウザプログラムを利用して、診断に必要な情報の入力作業と診断結果の表示処理とが行われる。現在市販されている多くの汎用パソコンには、インターネットに接続するための環境として、Webブラウザプログラムが組み込まれている。したがって、実用上は、端末装置100としては、Webブラウザプログラムが組み込まれたパソコンを用いれば十分である。もっとも、端末装置100は、必ずしもパソコンによって構成する必要はなく、Webブラウザプログラムが組み込まれたコンピュータとして機能する装置であれば、携帯電話やPDA機器などであってもかまわない。ただ、後述するように、オペレータは、この端末装置100から、診断に必要な情報の入力作業を行う必要があるため、実用上は、入力作業が容易なパソコンを用いるのが好ましい。
一方、システム本体200は、本発明に係るデータベース診断システムの主要部をなす構成要素であり、図示のとおり、入力用Webページ提示手段210、診断実行手段220、診断結果受信手段230、結果表示用Webページ提示手段240、診断対象指定情報入力手段250、スクリプト選択手段260、フォーマット変換手段270、スクリプト記憶手段280、診断結果格納手段290なる各手段から構成されている。以下、これら各手段の機能を順に説明する。
まず、入力用Webページ提示手段210は、ネットワーク300を介して、端末装置100に対し、診断に必要な情報入力を行うための入力用Webページを提示する機能を有している。実際には、入力用Webページは、HTMLデータとして端末装置100へと送信されることになるので、入力用Webページ提示手段210は、入力用Webページを表示させるためのHTMLデータを配信するWebサーバによって構成されることになる。
一方、診断対象指定情報入力手段250は、端末装置100のオペレータによる、入力用Webページ上での操作に基づいて、診断対象となるデータベースサーバに対する診断を行うのに必要な診断対象指定情報を入力する機能をもった構成要素である。診断対象指定情報の具体的な内容については後述する。結局、診断対象指定情報入力手段250は、Webサーバとして機能する入力用Webページ提示手段210と連携して、端末装置100から入力された診断対象指定情報を取り込む処理を行うことになる。このように、Webページ上で入力された情報をデータとして取り込み、Webページ上に表示させる仕組みは、CGI(Common Gateway Interface)などの公知の技術を利用して実現することが可能であるため、ここでは詳しい説明は省略する。
スクリプト記憶手段280は、特定の種類のDBMSおよび特定の種類のOSが用いられている特定のデータベースサーバに対する診断を行うのに適した診断用スクリプトを、複数種類のDBMSおよび複数種類のOSの組み合わせごとに、それぞれ記憶させた構成要素である。既に述べたとおり、データベースサーバに対する診断は、通常、SQLで記述された診断用スクリプトを与えることにより実行されるが、SQLには各社独自の拡張規格による方言が存在するため、個々のデータベースサーバが採用しているDBMS(DataBase Management System:データベース管理システム)の種類や、サーバの基幹となるOSの種類によって、それぞれ異なるSQL文を用意しなければならない。本発明の主眼は、複数種類のDBMSおよび複数種類のOSの組み合わせごとに、それぞれ診断用スクリプトを予め用意しておき、実際に診断を行う際には、診断対象となるデータベースサーバが採用しているDBMSおよびOSの組み合わせに対応する診断用スクリプトを選択して利用する点にある。
図2は、複数種類のDBMSおよび複数種類のOSの組み合わせの一覧表である。ここでは、便宜上、ある特定種類のDBMSと、ある特定種類のOSとの組み合わせを、「カテゴリ」と呼ぶことにする。図2には、合計10個のカテゴリが定義されており、個々のカテゴリには、C111〜C120までのカテゴリID(個々のカテゴリを相互に区別するためのユニークな識別子)が付されている。現在、主なDBMSとしては、日本オラクル社のOracle(登録商標)、マイクロソフト社のSQL Server(登録商標)、サイベース社のAdaptive Server(登録商標)などが利用されており、これらDBMSを動作させるサーバ用OSとしては、UNIX(登録商標)、Windows(登録商標)NT/2000、NetWare(登録商標)などが利用されている。ただ、ここでは、説明の便宜上、図示のとおり、「XXX」,「YYY」,「ZZZ」なる3通りのDBMSと、「OS−A」,「OS−B」,「OS−C」なる3通りのOSと、が主に利用されているケースについて、以下の説明を行うことにする。
たとえば、図2において、カテゴリID「C111」で特定されるカテゴリは、「XXXなる名称のDBMSのバージョン1.0」という特定種類のDBMSと、「OS−A」という特定種類のOSと、の組み合わせを示している。この実施形態では、図示のとおり、DBMSの種類は、DBMS名およびそのバージョンによって特定されることになるので、たとえば、カテゴリC111とC112とは、いずれも「XXX」なる同一名称のDBMSについてのものであるが、バージョンが異なるため、DBMSの種類としては相互に異なる分類になる。
また、DBMS名およびそのバージョンが同一でも、OSの種類が異なれば、異なるカテゴリに分類されることになる。たとえば、カテゴリC119とC120とは、いずれも「ZZZ」なる同一名称、「6.5」なる同一バージョンのDBMSについてのものであるが(別言すれば、DBMSの種類が完全同一であるが)、OSの種類が、一方は「OS−B」であるのに他方は「OS−C」と異なっているため、異なるカテゴリに分類されている。
もちろん、このカテゴリの定義は、数学的に可能な全通りの組み合わせについて行う必要はなく、現実には存在しない組み合わせについて定義する必要はない。たとえば、「ZZZ」なるDBMSは、必ず「OS−B」または「OS−C」の環境下で利用され、「OS−A」の環境下で利用されることは決してない、という場合には、「ZZZ」なるDBMSと「OS−A」なるOSとの組み合わせに関するカテゴリは定義する必要はない。逆に、新たなDBMSが発表されたり、新たなバージョンのDBMSがリリースされたりした場合には、逐次、新たなカテゴリの定義を追加してゆくことになる。
なお、図示の実施形態の場合、OSの種類については、バージョンによる区別を行っていないが、これは、現在一般的に利用されているデータベースサーバの場合、DBMS名およびそのバージョンと、OS名とが同一であれば、OSのバージョンが変っても、同じ診断用スクリプトを利用することができるためである。もちろん、必要があれば、OSの種類を、OS名およびそのバージョンによって特定するようにしてもかまわない。
本発明に係るデータベース診断システムを構築するためには、図2の表により定義された各カテゴリごとに、それぞれ診断用スクリプトをデータファイルとして用意しておく必要がある。図2の表の右端欄に示した診断用スクリプトファイル名は、このようにして用意された診断用スクリプトのファイル名を示すものである。データベースサーバに対する診断を行うための診断用スクリプトファイルは、通常、SQL(Structured Query Language)文を羅列したデータにより構成される。
図3は、図2に示すカテゴリC111に対応して用意された診断用スクリプトファイルS111の内容を示す模式図である。図示のとおり、このファイルS111は、第1のSQL文〜第NのSQL文まで、合計N個のSQL文を羅列したファイルになっている。これらのSQL文は、カテゴリC111に対応するデータベースサーバの診断に適した診断用スクリプトを構成している。別言すれば、図2の表のカテゴリC111の欄に表示されているとおり、「XXXなる名称のDBMSのバージョン1.0」という特定種類のDBMSが、「OS−A」という特定種類のOSの環境下で動作する特定のデータベースサーバの診断を行うのに適した合計N個のSQL文を羅列したファイルが、診断用スクリプトファイルS111である。
ここに示す実施形態では、図2に示すように、合計10個のカテゴリC111〜C120が定義されているので、これら各カテゴリに対応して、合計10個の診断用スクリプトファイルS111〜S120を用意しておく必要がある。こうして用意された10個の診断用スクリプトファイルS111〜S120は、図1に示すスクリプト記憶手段280内に格納されることになる。10個の診断用スクリプトファイルS111〜S120は、特定のカテゴリに属する特定のデータベースサーバに対する診断を行うのに適したSQL文を羅列したファイルであるため、最初に各診断用スクリプトファイルS111〜S120を作成する作業には、大きな労力が必要になるが、一旦、作成作業が完了してしまえば、スクリプト記憶手段280に格納することにより、必要に応じて繰り返し利用することが可能になる。
以上、図1に示すデータベース診断システムにおけるスクリプト記憶手段280に格納される複数通り(ここで述べる実施形態では、10通り)の診断用スクリプトの内容について説明を行った。前述したとおり、診断対象指定情報入力手段250は、端末装置100のオペレータによる操作に基づいて、診断対象指定情報を入力する機能を有しているが、ここで入力される診断対象指定情報の役割のひとつは、スクリプト記憶手段280内に格納されている複数通りの診断用スクリプトから、診断対象に適したスクリプトを選択する基準を提供することにある。
本発明において、診断対象指定情報入力手段250によって入力される診断対象指定情報は、図4に示すとおり、大別して4つの情報から構成される。第1の情報は、診断対象となるデータベースサーバに用いられているDBMSの種類を示す情報であり、ここに示す実施形態の場合、「XXX」、「YYY」または「ZZZ」というDBMS名およびそのバージョンを示す情報ということになる。第2の情報は、診断対象となるデータベースサーバに用いられているOSの種類を示す情報であり、ここに示す実施形態の場合、「OS−A」、「OS−B」または「OS−C」のいずれかを示す情報ということになる。そして、第3の情報は、診断対象となるデータベースサーバについての管理ユーザ名およびパスワードであり、診断対象となるデータベースサーバに対して、診断用スクリプトを実行させる際に必要になる。また、第4の情報は、診断対象となるデータベースサーバを特定するためのDB識別情報である。ここに示す実施形態の場合、第4の情報となるDB識別情報としては、診断対象となるデータベースサーバのIPアドレスおよび診断対象となるデータベースの名称(より具体的には、インスタンス名とデータベース名)を用いるようにしている。
このように、診断対象指定情報入力手段250は、図4に示す4つの情報を、診断対象指定情報として入力する機能を有しているが、既に述べたとおり、これら各情報の実際の入力作業は、端末装置100に表示されたWebページ上で行われることになる。したがって、入力用Webページ提示手段210によって提示される入力用Webページには、図4に示す4つの情報を入力するのに適した入力欄を設けておくようにする。端末装置100のオペレータは、この入力欄に、キーボードやマウスを操作して、所定の情報を入力する作業を行うことができる。
図4に示す4つの情報は、いずれも、特定のデータベースサーバに対する診断を行う際に不可欠の情報であり、従来は、診断対象となるデータベースサーバの管理者から、診断を請け負う業者に対して、口頭や書面によって伝達されていた情報である。本発明に係る診断システムでは、これらの情報は、診断対象となるデータベースサーバの管理者自身が、端末装置100に表示されているWebページ上で直接入力することになる。
たとえば、管理ユーザ名「admin」、パスワード「banana」によって、データベースサーバ10に対するアクセス権を有する管理者甲が、このサーバ10に対する診断を実行する場合を考えてみよう。この場合、管理者甲は、まず、端末装置100から、ネットワーク300を介して入力用Webページ提示手段210に対するアクセスを行えばよい。具体的には、入力用Webページ提示手段210は、入力用Webページを提示するためのWebサーバによって構成されているので、管理者甲は、端末装置100のWebブラウザを起動して、入力用Webページ提示手段210のURLアドレスへアクセスすればよい。その結果、端末装置100の画面上には、図4に示す4つの情報からなる診断対象指定情報を入力するための入力用Webページが表示されることになる。
ここでは、説明の便宜上、診断対象となるデータベースサーバ10が、「XXXのバージョン1.0」という特定種類のDBMSを、「OS−A」という特定種類のOSの環境下で利用するサーバ(すなわち、図2の表におけるカテゴリC111に分類されるサーバ)であったものとしよう。この場合、管理者甲は、診断対象指定情報を構成する第1の情報として、DBMS名「XXX」、そのバージョン「1.0」というDBMSの種類を示す情報を入力することになる。また、第2の情報としては、OSの種類「OS−A」を示す情報を入力し、第3の情報としては、管理ユーザ名「admin」、パスワード「banana」なる情報を入力することになる。更に、第4の情報としては、データベースサーバ10を特定するためのDB識別情報として、データベースサーバ10のIPアドレスおよびそこで動作しているデータベースのインスタンス名およびデータベース名を入力することになる。
診断対象指定情報入力手段250は、これら4つの情報からなる診断対象指定情報を入力したら、第1の情報および第2の情報をスクリプト選択手段260に与え、第3の情報および第4の情報を診断実行手段220に与える。
スクリプト選択手段260は、診断対象指定情報に含まれているDBMSの種類(第1の情報)およびOSの種類(第2の情報)を示す情報に基づいて、当該DBMSおよびOSの組み合わせに対応した特定の診断用スクリプトを、スクリプト記憶手段280の中から選択する機能を有する。上述の例の場合、DBMSの種類を示す情報として「XXXのバージョン1.0」という情報が与えられ、OSの種類を示す情報として「OS−A」という情報が与えられることになるので、スクリプト選択手段260は、スクリプト記憶手段280に格納されている10通りの診断用スクリプトファイルS111〜S120の中から、カテゴリC111に対応する診断用スクリプトファイルS111を選択する処理を行うことになる。スクリプト選択手段260は、こうして選択した診断用スクリプトファイルS111を、スクリプト記憶手段280から読出し、診断実行手段220に与える機能を有する。
診断実行手段220は、スクリプト選択手段260によって選択された診断用スクリプトを、診断対象指定情報入力手段250が入力した診断対象指定情報に含まれている管理ユーザ名およびパスワードとともに、当該診断対象指定情報に含まれているDB識別情報によって特定される診断対象となるデータベースサーバに与え、これを実行させる機能を有する。上述の例の場合、スクリプト選択手段260により、診断用スクリプトファイルS111が選択されることになるので、診断実行手段220は、この診断用スクリプトファイルS111内にSQL文として記述されている診断用スクリプトを、診断対象となるデータベースサーバ10に与え、これを実行させる処理を行うことになる。
ただ、データベースサーバ10に所定の診断用スクリプトを実行させるためには、当該データベースサーバ10を、管理者権限でアクセスする必要がある。そこで、診断実行手段220は、診断対象指定情報入力手段250が入力した、管理ユーザ名「admin」、パスワード「banana」なる情報を、診断用スクリプトファイルS111とともに、データベースサーバ10に送信する処理を行う。また、ネットワーク300を経由してデータベースサーバ10を物理的にアクセスするためには、データベースサーバ10のIPアドレスが必要になり、このサーバ10内のデータベースに物理的にアクセスするためには、当該データベースの名前が必要になるが、診断実行手段220は、診断対象指定情報入力手段250が入力したDB識別情報から、データベースサーバ10のIPアドレスや診断対象データベース名を認識することができるので、このDB識別情報を利用して、診断対象を物理的にアクセスすることができる。
図5は、診断実行手段220が、データベースサーバ10に対する診断処理を実行する際に用いるデータを示すブロック図である。診断実行に必要なデータは、図示のとおり、診断用スクリプトファイルS111と、管理ユーザ名およびパスワードと、DB識別情報である。ここで、診断用スクリプトファイルS111は、スクリプト選択手段260によって、スクリプト記憶手段280内から選択されたファイルであるが、管理ユーザ名およびパスワードとDB識別情報は、診断対象指定情報入力手段250によって入力された診断対象指定情報に含まれていた情報である。
以上、データベースサーバ10に対する診断を行う場合の処理手順を例にとって説明したが、データベースサーバ20に対する診断も同様の手順で実行されることになる。もちろん、データベースサーバ20において用いられているDBMSやOSが、データベースサーバ10において用いられているものと異なれば、スクリプト選択手段260によって、上述の具体例とは異なるカテゴリに所属する診断用スクリプトファイルが選択されることになる。また、データベースサーバ20の管理者が別な管理者乙であった場合には、当然、管理ユーザ名やパスワードは、管理者乙のものが入力されることになる。
こうして、診断実行手段220から、データベースサーバ10に診断用スクリプトが与えられると、当該スクリプトはデータベースサーバ10上で実行され、実行結果を示す診断結果情報が、システム本体200へと返されることになる。図3に示すとおり、診断用スクリプトファイルの実体は、複数のSQL文であり、個々のSQL文に対する実行結果を示す情報が、所定の書式をもった診断結果情報として、システム本体200へと返されることになる。
診断結果受信手段230は、このようにして、診断対象となるデータベースサーバから返される診断結果情報を受け取る機能をもった構成要素である。診断結果情報の書式は、それを返すDBMSの種類によって様々であるが、一般的なDBMSの場合、いずれもテキストデータの形式のファイルになる。
図6は、このようなテキストデータの形式で返された診断結果情報の構成例を示す図である。この例では、各SQL文に対する診断結果(各SQL文の実行結果)が、それぞれ「表」の見出しで示されている。たとえば、図示の「□表1□」なる見出しから始まる部分は、第1のSQL文に対する診断結果を示すものであり、「□表2□」なる見出しから始まる部分は、第2のSQL文に対する診断結果を示すものである。この例では、第1のSQL文は、3つの項目についての実行結果を要求するスクリプトとなっており、項目1についての実行結果としては、値1、値2、値3の3つの値が返されており、項目2についての実行結果としては、値1、値2の2つの値が返されており、項目3についての実行結果としては、値1、値2の2つの値が返されている。一方、第2のSQL文は、互いに関連をもった2つの項目についての実行結果を要求するスクリプトとなっており、項目1および項目2についての実行結果として、「値11,値21」なる対、「値12,値22」なる対、「値13,値23」なる対、という3対の値が返されている。
結果表示用Webページ提示手段240は、診断結果受信手段230が受信した診断結果情報を、端末装置100に対して、結果表示Webページとして提示する機能をもった構成要素である。たとえば、図6に示すような診断結果情報が得られたら、このような情報が、端末装置100の画面上にWebページとして提示されることになる。端末装置100の画面上に、情報をWebページとして提示するためには、当該情報をHTML形式のデータとして端末装置100へ送信する必要がある。結果表示用Webページ提示手段240内には、Webページ上での表示書式を示すスタイルシートの情報が格納されており、このスタイルシートに基づいて、診断結果情報をHTML形式に変換する機能を有している。
たとえば、図6に示すようなテキストデータ形式の診断結果情報を、HTML形式に変換する場合であれば、「□表1□」といった見出し部分、「項目1」といった項目部分、「値1」といった値部分を、それぞれ、どのサイズのどの色の文字で表示するか、背景部分の色は何色にするか、といった事項を定めるスタイルシートを用意しておき、このスタイルシートに基づいて、テキストデータの各部分にHTML用タグを挿入する処理を実行すればよい。このようなスタイルシートを用いて、テキストデータをHTMLデータに変換する処理は既に公知の処理であるため、ここでは詳しい説明は省略する。
なお、図1に示す実施形態の場合、診断結果受信手段230が受信したテキストデータを、結果表示用Webページ提示手段240によって直接HTML形式のデータに変換する代わりに、フォーマット変換手段270によって一度XML形式のデータに変換し、これを結果表示用Webページ提示手段240によってHTML形式のデータに変換する、という手法を採っている。その理由は、この図1に示す例では、診断結果受信手段230が受信した診断結果情報を、すべてXML形式に変換して、診断結果格納手段290に格納するようにしているためである。
フォーマット変換手段270は、診断結果受信手段230が受け取った診断結果情報を、予め定められた所定のフォーマットで記述されたデータに変換する機能をもった構成要素であり、診断結果格納手段290は、こうして変換されたデータを格納する機能をもった構成要素である。ここに示す例では、フォーマット変換手段270は、テキストデータ形式で受け取った診断結果情報を、XML形式で記述されたデータに変換する機能を有する。上述したとおり、各データベースサーバから返される診断結果情報の書式は、DBMSの種類によって様々であるが、フォーマット変換手段270によって、これを共通のフォーマットに変換した上で、診断結果格納手段290に格納するようにすれば、診断結果格納手段290に蓄積される診断結果情報は、DBMSの種類に依存しない共通のフォーマットで記述された情報になるため、後にこれを利用する上での利便性が向上する。
ここに示す例では、共通のフォーマットとして、XML形式を採用している。XML形式のデータでは、ユーザが独自のタグを定義して利用することが可能になるため、検索時の利便性などが向上するメリットが得られる。図7は、図6に示すテキストデータとして与えられた診断結果情報を、XML形式のデータに変換した例を示す図である。図6に示すテキストデータにおいて、「□表1□」といった見出しに導かれる内容部分は、図7に示すXMLデータでは、<表1>なるタグと</表1>なるタグとの間に挟まれた状態で記述される。また、各項目とその値は、図7に示すXMLデータでは、<項目1>値1</項目1>のように、各項目名を示すタグの間に、当該項目に対応する値を挟む形で記述される。この図7に示すような形式のXMLデータでは、個々の表名や項目名が所定の意味をもったタグ情報として定義されるので、検索処理などの利便性が向上する。
図6に示すようなテキストデータとして記述された診断結果情報を、図7に示すようなXMLデータに変換する処理を行うためには、図6に示す診断結果情報の書式を予め認識しておく必要がある。たとえば、図6に示す例の場合、「□」で挟まれた部分が各表の見出し部分を示す、という規則を認識していれば、「□表1□」と「□表2□」との間に存在する内容部分を、<表1>なるタグと</表1>なるタグで挟む、という変換処理を行えばよいことがわかる。診断結果情報の書式は、DBMSの種類によって様々であるので、フォーマット変換手段270には、図2に示す各カテゴリごとに、それぞれ所定のアルゴリズムに基づく変換処理プログラムを用意しておくようにすればよい。
図1に示す実施形態では、フォーマット変換手段270による変換処理によって得られたXML形式の診断結果情報は、診断結果格納手段290に格納されるとともに、結果表示用Webページ提示手段240へと与えられる。結果表示用Webページ提示手段240は、このXML形式の診断結果情報に、所定のスタイルシートを適用することにより、HTML形式の結果表示用Webページデータを作成し、これを端末装置100へと送信する機能を有している。
結局、本発明に係るデータベース診断システムを利用すれば、管理者甲は、次のような手順により、データベースサーバ10に対する診断処理を実行することができる。まず、、端末装置100のWebブラウザを起動し、入力用Webページ提示手段210として機能するWebサーバのURLをアクセスする。すると、端末装置100の画面上に、所定の入力用Webページが提示されるので、このWebページ上で、図4に示すような診断対象指定情報を入力する操作を行う。すると、診断実行手段220が、この診断対象指定情報に基づいて、データベースサーバ10に所定の診断用スクリプトを与えて診断を実行する。その結果として得られる診断結果情報は、XMLデータの形式で診断結果格納手段290に格納されるとともに、HTMLデータの形式で、結果表示用Webページ提示手段240から端末装置100へと送信される。こうして送信された診断結果情報は、結局、端末装置100のWebブラウザにより閲覧されることになる。
このように、管理者甲から見ると、端末装置100のWebブラウザを用いて、所定の入力用Webページ上で診断対象指定情報を入力する操作を行うと、システム本体200によって自動的に診断処理が実行され、その結果が、結果表示用Webページとして、端末装置100上に表示されることになる。もちろん、入力用Webページ上で入力操作を行ってから、結果表示用Webページ上に診断結果情報が表示されるまでの時間は、診断用スクリプトの内容やサーバの性能によって様々であるが、一般的には、数十秒〜数分程度のオーダーの時間である。したがって、従来の診断方法に比べると、非常に短期間に、かつ、非常に簡便な作業により、データベースサーバに対する診断を行うことが可能になる。
なお、ここに示す実施形態では、診断結果格納手段290に診断結果情報を格納する際に、書誌情報を付加するようにしている。図8は、この書誌情報を付加した診断結果情報の一例を示す図である。図8に矩形で囲って示した部分が、診断結果情報本体部であり、この部分には、たとえば、図7に示すようなXML形式で記述された診断結果情報の本体部が配置される。一方、図8の矩形の上方に記載されている部分が、新たに付加された書誌情報である。図示の例では、この書誌情報の部分もXMLの形式で記述されており、図8に示す診断結果情報全体が、XMLデータとなっている。
図8の1行目の<診断結果>なるタグは、最終行の</診断結果>なるタグに対応するものであり、これら一対の対応するタグ間の情報が、「診断結果」なる情報であることを示している。
また、図8の2行目には、<カウンタ>タグに囲まれて「365」なる数値が記載されているが、この数値は、当該診断結果情報のカウンタ値(シリアル番号値)を示している。このカウンタ値は、診断結果格納手段290に診断結果情報が格納されるたびに1ずつ更新されてゆく値であり、図8に示す診断結果情報は、診断結果格納手段290に格納された第365番目の診断結果情報ということになる。診断結果格納手段290内に、新たな診断結果情報を格納する際には、直前に格納された診断結果情報のカウンタ値に1を加えた値(上述の例では、366)を、当該新たな診断結果情報のカウンタ値として付与することなる。
一方、図8の3行目には、<データベースID>タグに囲まれて「15」なる数値が記載されているが、この数値は、同一種類のDBMSおよび同一種類のDB識別情報に基づいて実行された診断結果に対して、同一のIDを付すことにより与えられるIDである。たとえば、上述の例の場合、データベースサーバ10に対する診断は、「XXXのバージョン1.0」という特定種類のDBMSと、「データベースサーバ10内のデータベース」という特定種類のDB識別情報と、を用いて実行されることになる。この場合、得られる診断結果情報には、「XXXのバージョン1.0」という特定種類のDBMSと、「データベースサーバ10内のデータベース」という特定種類のDB識別情報という特定の組み合わせに対して、所定のデータベースIDが付与されることになる。この組み合わせ要素のうちの1要素でも異なれば、異なるデータベースIDが付与される。
したがって、この実施形態では、新たな診断結果情報を、診断結果格納手段290に格納する際には、同一種類のDBMS、同一種類のDB識別情報という組み合わせに基づいて実行された過去の診断結果情報が、既に格納されているか否かを確認する処理を実行する。そして、過去に、同一組み合わせによる診断結果情報が格納されていた場合には、当該過去の診断結果情報と同一のデータベースIDを、新たな格納対象となる診断結果情報に付与するが、過去に、同一組み合わせによる診断結果情報が格納されていない場合には、新たなデータベースIDを発行し、これを新たな格納対象となる診断結果情報に付与する。このようなデータベースIDは、特定のデータベースサーバに関して過去に実施された診断結果を検索する場合に利用すると便利である。
図8の4〜9行目には、<メタデータ>タグに囲まれたデータが記載され、更に、<DBMS名>、<バージョン>、<DB識別情報>、<スクリプト実行時間>なるタグで囲まれたデータが羅列されている。ここで、<DBMS名>、<バージョン>、<DB識別情報>なるタグとともに記載されたデータは、当該診断を実行する際に、診断対象指定情報入力手段250によって入力されたDBMS名、バージョン、DB識別情報であり、<スクリプト実行時間>なるタグとともに記載されたデータは、文字どおり、当該診断を実行した時間を示す情報である。このように、実行された診断に関する書誌情報を、「メタデータ」として、XMLの形式で付加しておけば、種々の検索処理を行う際に便利である。
このような書誌情報の付加処理は、フォーマット変換手段270において実行できるようにしておけばよい。すなわち、フォーマット変換手段270が、診断結果受信手段230が受け取った診断結果情報に、診断対象となったデータベースサーバについてのDBMSの種類を示す情報、OSの種類を示す情報およびDB識別情報を書誌情報として付加する処理を行うようにしておけば、診断結果格納手段290には、図8に示す例のように、書誌情報を付加した状態の診断結果情報を格納することができ、検索などの便宜を図ることができるようになる。
以上、本発明に係るデータベース診断システムを、図1のブロック図に示す実施形態に基づいて説明したが、このブロック図において個々のブロックとして記載された各手段は、実際には、コンピュータに所定のプログラムを組み込むことにより実現される構成要素である。したがって、図示のシステム本体200は、ネットワーク300に接続された汎用コンピュータに、各手段210〜290として機能するためのプログラムを組み込むことにより構築されるものであり、当該プログラムは、コンピュータ読み取り可能な記録媒体に記録して配付することが可能である。
本発明の一実施形態に係るデータベース診断システムの基本構成を示すブロック図である。 複数種類のDBMSおよび複数種類のOSの組み合わせの一覧表の一例を示す図である。 図2に示すカテゴリC111に対応して用意された診断用スクリプトファイルS111の内容を示す模式図である。 図1に示す診断対象指定情報入力手段250によって入力される診断対象指定情報の具体的内容を示すブロック図である。 診断実行手段220が、データベースサーバ10に対する診断処理を実行する際に用いるデータを示すブロック図である。 データベースサーバ10から、テキストデータの形式で返された診断結果情報の構成例を示す図である。 図6に示すテキストデータとして与えられた診断結果情報を、XML形式のデータに変換した例を示す図である。 書誌情報を付加した診断結果情報の一例を示す図である。
符号の説明
10…データベースサーバ
20…データベースサーバ
100…端末装置(パソコン)
200…システム本体
210…入力用Webページ提示手段
220…診断実行手段
230…診断結果受信手段
240…結果表示用Webページ提示手段
250…診断対象指定情報入力手段
260…スクリプト選択手段
270…フォーマット変換手段
280…スクリプト記憶手段
290…診断結果格納手段
300…ネットワーク(インターネット)

Claims (9)

  1. 診断対象となるデータベースサーバに対して、診断用スクリプトを与え、これを実行させることにより、当該データベースサーバについての性能の診断を行うデータベース診断システムであって、
    ネットワークを介して診断対象となるデータベースサーバに接続可能なシステム本体と、ネットワークを介して前記システム本体に接続可能な端末装置と、によって構成され、
    前記端末装置は、Webブラウザプログラムが組み込まれたコンピュータからなり、このWebブラウザプログラムを利用して、診断に必要な情報の入力作業と診断結果の表示処理とが行われるように構成され、
    前記システム本体は、
    前記端末装置に対して、診断に必要な情報入力を行うための入力用Webページを提示する入力用Webページ提示手段と、
    前記入力用Webページ上での前記端末装置のオペレータによる操作に基づいて、診断対象となるデータベースサーバに用いられているDBMSの種類、診断対象となるデータベースサーバに用いられているOSの種類、診断対象となるデータベースサーバについての管理ユーザ名およびパスワード、診断対象となるデータベースサーバを特定するためのDB識別情報、を診断対象指定情報として入力する診断対象指定情報入力手段と、
    特定の種類のDBMSおよび特定の種類のOSが用いられている特定のデータベースサーバに対する診断を行うのに適した診断用スクリプトを、複数種類のDBMSおよび複数種類のOSの組み合わせごとに、それぞれ記憶させたスクリプト記憶手段と、
    前記診断対象指定情報に含まれているDBMSの種類およびOSの種類に基づいて、当該DBMSおよびOSの組み合わせに対応した特定の診断用スクリプトを選択するスクリプト選択手段と、
    選択された診断用スクリプトを、前記診断対象指定情報に含まれている管理ユーザ名およびパスワードとともに、前記診断対象指定情報に含まれているDB識別情報によって特定される診断対象となるデータベースサーバに与え、これを実行させる診断実行手段と、
    前記診断対象となるデータベースサーバから、前記診断用スクリプトの実行結果を示す診断結果情報を受け取る診断結果受信手段と、
    前記診断結果情報を、前記端末装置に対して、結果表示Webページとして提示する結果表示用Webページ提示手段と、
    を備えることを特徴とするデータベース診断システム。
  2. 請求項1に記載のデータベース診断システムにおいて、
    受け取った診断結果情報を、予め定められた所定のフォーマットで記述されたデータに変換するフォーマット変換手段と、
    変換されたデータを格納する診断結果格納手段と、
    を更に設けたことを特徴とするデータベース診断システム。
  3. 請求項2に記載のデータベース診断システムにおいて、
    フォーマット変換手段が、テキストデータ形式で受け取った診断結果情報を、XML形式で記述されたデータに変換する機能を有することを特徴とするデータベース診断システム。
  4. 請求項2または3に記載のデータベース診断システムにおいて、
    フォーマット変換手段が、受け取った診断結果情報に、診断対象となったデータベースサーバについてのDBMSの種類を示す情報、OSの種類を示す情報およびDB識別情報を書誌情報として付加する機能を有し、
    診断結果格納手段が、前記書誌情報を付加した状態の診断結果情報を格納する機能を有することを特徴とするデータベース診断システム。
  5. 請求項1〜4のいずれかに記載のデータベース診断システムにおいて、
    「DBMSの種類」として「DBMS名およびそのバージョン」を用いることを特徴とするデータベース診断システム。
  6. 請求項1〜5のいずれかに記載のデータベース診断システムにおいて、
    「DB識別情報」として「診断対象となるデータベースサーバのIPアドレスおよび診断対象となるデータベースの名称」を用いることを特徴とするデータベース診断システム。
  7. 請求項1〜6のいずれかに記載のデータベース診断システムにおいて、
    結果表示用Webページ提示手段が、Webページ上での表示書式を示すスタイルシートに基づいて、診断結果情報をHTML形式に変換する機能を有することを特徴とするデータベース診断システム。
  8. 請求項1〜7のいずれかに記載のデータベース診断システムを構成するシステム本体。
  9. 請求項1〜7のいずれかに記載のデータベース診断システムを構成するシステム本体としてコンピュータを機能させるためのプログラム。
JP2004078075A 2004-03-18 2004-03-18 データベース診断システム Expired - Fee Related JP4476655B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004078075A JP4476655B2 (ja) 2004-03-18 2004-03-18 データベース診断システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004078075A JP4476655B2 (ja) 2004-03-18 2004-03-18 データベース診断システム

Publications (2)

Publication Number Publication Date
JP2005267193A JP2005267193A (ja) 2005-09-29
JP4476655B2 true JP4476655B2 (ja) 2010-06-09

Family

ID=35091684

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004078075A Expired - Fee Related JP4476655B2 (ja) 2004-03-18 2004-03-18 データベース診断システム

Country Status (1)

Country Link
JP (1) JP4476655B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101189967B1 (ko) * 2011-06-30 2012-10-12 에스케이씨앤씨 주식회사 시스템 자동 감사 방법 및 이를 적용한 자동 감사 시스템
KR101331452B1 (ko) * 2012-03-22 2013-11-21 주식회사 엘지씨엔에스 데이터베이스 관리 방법 및 그를 위한 데이터베이스 관리 서버
KR102230442B1 (ko) * 2020-12-14 2021-03-22 주식회사 이글루시큐리티 진단 대상 서버의 설정파일 수집 및 설정파일에 대한 취약점 진단의 주체가 이원화된 취약점 진단 장치 및 방법

Also Published As

Publication number Publication date
JP2005267193A (ja) 2005-09-29

Similar Documents

Publication Publication Date Title
US8132095B2 (en) Auditing a website with page scanning and rendering techniques
CA2822917C (en) Rule-based validation of websites
US7680856B2 (en) Storing searches in an e-mail folder
US7849447B1 (en) Application testing and evaluation
US6832220B1 (en) Method and apparatus for file searching, accessing file identifiers from reference page
US8386931B2 (en) Method and apparatus for providing process guidance
US8027976B1 (en) Enterprise content search through searchable links
US6996798B2 (en) Automatically deriving an application specification from a web-based application
US20110041090A1 (en) Auditing a website with page scanning and rendering techniques
US9363310B2 (en) Standard commands for native commands
US20050234894A1 (en) Techniques for maintaining collections of generated web forms that are hyperlinked by subject
US20080091775A1 (en) Method and apparatus for parallel operations on a plurality of network servers
US20070220145A1 (en) Computer product, access-restricting method, and proxy server
JPWO2003048973A1 (ja) アクセスログ分析装置およびアクセスログ分析方法
US8365022B2 (en) System for providing performance testing information to users
US20050268165A1 (en) Method and system for automated testing of web services
US20130263156A1 (en) Operation log collection method and device
US20180189171A1 (en) A system and method for use in regression testing of electronic document hyperlinks
JP2017027208A (ja) 問答情報提供システム、情報処理装置及びプログラム
JP2008077611A (ja) ログ統合管理システム
JP4476655B2 (ja) データベース診断システム
CN116126808A (zh) 行为日志记录方法、装置、计算机设备和存储介质
JP2013114393A (ja) 情報検索装置およびプログラム
US11593451B2 (en) System and method for comparing zones for different versions of a website based on performance metrics
KR102259073B1 (ko) 데이터 표준화 관리 시스템

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091022

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091110

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100112

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100209

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100309

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: 20100310

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130319

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130319

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140319

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees