(57)【要約】  複数のデータベースの動作および状態を、標準操作手順（ＳＯＰ）の利用により管理する複数のモジュールおよび／またはエンジンは、データベース管理者が、複数のＳＯＰを作成してその後アクセス可能なメモリ資源に格納する助けをする。ＳＯＰは、様々なデータベース情報状態に対処する手順を定義する。データベース状態情報は、監視、収集、および分析されて、所定の規則セットに基づいてまたは権限のあるデータベース管理者からの手動入力に基づいて、１以上のＳＯＰを特定のデータベース環境に適応するか否かを決定する。複数のＳＯＰは組み合わせることができる、および／または、自動的または手動でデータベース上で実行することができる。【選択図】  図１【特許請求の範囲】
【請求項１】
データベースを管理するコンピュータシステムであって、
ソフトウェアとして具現化された命令を実行する機械と、
複数のソフトウェア部分と、を備え、
前記複数のソフトウェア部分は、
複数のデータベース標準操作手順（ＳＯＰ）を作成する１つのソフトウェア部分と、
前記複数のＳＯＰをメモリに格納する１つのソフトウェア部分と、
前記データベースについての状態情報を監視する１つのソフトウェア部分と、
前記複数のＳＯＰのサブセットを特定するタスク要求を受信する１つのソフトウェア部分と、
前記メモリから前記複数のＳＯＰの前記サブセットを取得する１つのソフトウェア部分と、
前記データベース上で前記複数のＳＯＰの前記サブセットを実行する１つのソフトウェア部分と、を含む、コンピュータシステム。
【請求項２】
前記複数のデータベースＳＯＰの各々がデータベースタイプに関連付けられている、請求項１に記載のコンピュータシステム。
【請求項３】
データベースタイプに関連付けられた各ＳＯＰは、前記データベースタイプに関連付けられた他のＳＯＰ各々と互換性を有する、請求項２に記載のコンピュータシステム。
【請求項４】
データベースタイプに関連付けられた各ＳＯＰは、さらに、特定のデータベース環境ポリシーに関連付けられており、前記関連付けられているデータベース環境ポリシーと互換性を有する、請求項３に記載のコンピュータシステム。
【請求項５】
ＳＯＰの作成は、対応する、人間が判読可能な形式のタスクレシピの作成を含む、請求項１に記載のコンピュータシステム。
【請求項６】
特定の時間間隔に基づいて前記タスク要求を実行する１つのソフトウェア部分を、前記複数のソフトウェア部分の一部としてさらに備える、請求項１に記載のコンピュータシステム。
【請求項７】
前記タスク要求は自動的に生成される、請求項１に記載のコンピュータシステム。
【請求項８】
前記タスク要求は特定のタイムウィンドウ中に実行される、請求項１に記載のコンピュータシステム。
【請求項９】
前記複数のＳＯＰの前記サブセットの前記実行の結果であるデータセットを収集して、中央レポジトリに格納する１つのソフトウェア部分をさらに備える、請求項１に記載のコンピュータシステム。
【請求項１０】
ＳＯＰの作成および修正は、指定された高位のデータベース管理者に限られる、請求項１に記載のコンピュータシステム。
【請求項１１】
前記複数のデータベースＳＯＰの少なくとも１つはタスクベースのＳＯＰである、請求項１に記載のコンピュータシステム。
【請求項１２】
複数のタスクベースのＳＯＰが、データベースバックアップ、データベースリフレッシュ、データベースクローニング、データベースヘルスチェック実行、データベースメモリ資源スペース管理、データベース合体、分割されたデータベースセグメントの再構築、データベース最適化統計データ分析、データベースルート原因分析の実行、データベースパッチング、データベースアップグレード、データベースマイグレーション、およびデータベースサーバマイグレーションからなるリストから選択されたデータベース管理タスクを実行する、請求項１１に記載のコンピュータシステム。
【請求項１３】
前記監視された状態情報を分析して、前記データベースが課された動作を行う能力を有するか否かを判断する１つのソフトウェア部分をさらに備える、請求項１に記載のコンピュータシステム。
【請求項１４】
前記複数のデータベースＳＯＰの少なくとも１つは、前記データベースの不具合を修正して、課された動作を行う回復ＳＯＰである、請求項１３に記載のコンピュータシステム。
【請求項１５】
前記少なくとも１つの回復ＳＯＰは、変更されたデータベース状態情報によりトリガされる、請求項１４に記載のコンピュータシステム。
【請求項１６】
複数のＳＯＰが前記データベースの外に格納される、請求項１に記載のコンピュータシステム。
【請求項１７】
監視により、データベースの不具合が特定され、予め定義された規則セットに基づいて警告が作成される、請求項１に記載のコンピュータシステム。
【請求項１８】
前記データベースについての状態情報は、将来の分析に備えて定期的に収集される、請求項１に記載のコンピュータシステム。
【請求項１９】
データベース状態情報の分析は、直線回帰、待ち行列、シミュレーション、およびファジー論理を含む複数の数理モデルを利用して、将来のデータベース状態および動作を予測する、請求項１８に記載のコンピュータシステム。
【請求項２０】
第１のＳＯＰサブセットを第２のＳＯＰサブセットにリンクさせて前記要求されたタスクを行う１つのソフトウェア部分をさらに備える、請求項１に記載のコンピュータシステム。
【請求項２１】
複数のＳＯＰサブセットが、特定のデータベースタスクにより関連付けられる複数のＳＯＰを含む、請求項２０に記載のコンピュータシステム。
【請求項２２】
指定されるＳＯＰは、前記データベースの予め定められた状態情報に基づいて、自動的に前記データベース上で実行される、請求項１に記載のコンピュータシステム。
【請求項２３】
データベース管理者は、リアルタイムに前記データベースにおけるＳＯＰの実行を監視でき、手動で介入できる、請求項１に記載のコンピュータシステム。
【請求項２４】
監視されたデータベース状態情報および前記データベース上のＳＯＰの実行のオーディットトレイルを生成する１つのソフトウェア部分をさらに備える、請求項１に記載のコンピュータシステム。
【請求項２５】
コンピュータに実装され、データベースを管理する方法であって、
前記データベースについての状態情報を監視する段階と、
前記データベースについての状態情報を収集する段階と、
前記データベースについて収集された状態情報に基づいてタスク要求を受信する段階と、
前記タスク要求に基づいて複数のデータベース標準操作手順（ＳＯＰ）のうち少なくとも１つを記憶媒体から取得する段階と、
前記データベースにおいて前記少なくとも１つのデータベースＳＯＰを実行する段階と、を備える方法。
【請求項２６】
前記記憶媒体から取得する段階は、前記複数のデータベースＳＯＰのうち少なくとも１つに対応する少なくとも１つのタスクレシピの取得を含む、請求項２５に記載の方法。
【請求項２７】
前記タスク要求は、収集された状態情報の分析に基づいて自動的に生成される、請求項２５に記載の方法。
【請求項２８】
前記複数のデータベースＳＯＰの各々は、少なくとも１人の指定されたデータベース管理者により作成され、前記記憶媒体に格納され、各データベースＳＯＰは特定のデータベース管理タスクに基づく、請求項２５に記載の方法。
【請求項２９】
前記少なくとも１つのデータベースＳＯＰは、前記タスク要求に基づいて少なくとも１つの別のデータベースＳＯＰとリンクされる、請求項２５に記載の方法。
【請求項３０】
データベースＳＯＰの作成および修正は、権限のあるデータベース管理者に限られる、請求項２５に記載の方法。
【請求項３１】
前記少なくとも１つのデータベースＳＯＰは、データベースバックアップ、データベースクローニング、データベースヘルスチェック実行、データベースメモリ資源スペース管理、データベース合体、分割されたデータベースセグメントの再構築、データベースルート原因分析の実行、データベース最適化統計データ分析、データベースパッチング、データベースアップグレード、データマイグレーション、およびデータベースサーバマイグレーションからなるリストから選択されたデータベース管理タスクを行う、請求項２５に記載の方法。
【請求項３２】
収集された状態情報を分析することで、予め定義された規則セットに基づいて前記データベースが課された動作を行えないと判断する段階をさらに備える、請求項２５に記載の方法。
【請求項３３】
前記少なくとも１つのデータベースＳＯＰは、前記データベースが課された動作を行えないことを修正する回復ＳＯＰである、請求項３２に記載の方法。
【請求項３４】
前記データベースが課された動作を行えないという判断に呼応して、警告を作成する段階を備える、請求項３２に記載の方法。
【請求項３５】
前記収集された状態情報を分析する段階は、ファジー論理、直線回帰、比率モデルまたは待ち行列、を含む数理モデルを利用する、請求項３２に記載の方法。
【請求項３６】
第１のＳＯＰサブセットを第２のＳＯＰサブセットにリンクさせて前記要求されたタスクを行う段階をさらに備える、請求項２５に記載の方法。
【請求項３７】
前記少なくとも１つのＳＯＰは、前記データベースについて予め定められた状態情報に基づいて、自動的に前記データベース上で実行される、請求項２５に記載の方法。
【請求項３８】
データベース管理者は、リアルタイムに前記データベースにおける前記少なくとも１つのＳＯＰの実行を監視でき、必要に応じて前記ＳＯＰの実行に手動で介入できる、請求項２５に記載の方法。
【請求項３９】
監視されたデータベース状態情報および前記データベース上のＳＯＰの実行のオーディットトレイルを生成する段階をさらに備える、請求項２５に記載の方法。
【請求項４０】
機械により実行可能な命令のプログラムを有形物として具現化する、コンピュータ読み取り可能な記憶媒体であって、前記命令のプログラムはデータベース管理用プログラムコードを複数含み、前記命令のプログラムは、
複数のデータベース標準操作手順（ＳＯＰ）を作成させるプログラムコードと、
前記複数のＳＯＰをメモリに格納させるプログラムコードと、
前記データベースについての状態情報を収集させるプログラムコードと、
前記複数のＳＯＰのサブセットを特定するタスク要求を受信させるプログラムコードと、
前記メモリから前記複数のＳＯＰの前記サブセットを取得させるプログラムコードと、
前記データベース上で前記複数のＳＯＰの前記サブセットを実行させるプログラムコードと、を含む、コンピュータ読み取り可能な記憶媒体。
【請求項４１】
前記作成させるプログラムコードは、データベースタスクレシピを、各データベースＳＯＰに対応する人間が判読可能な形式で作成することを含む、請求項４０に記載のコンピュータ読み取り可能な記憶媒体。
【請求項４２】
前記タスク要求は自動的に生成される、請求項４０に記載のコンピュータ読み取り可能な記憶媒体。
【請求項４３】
前記タスク要求は、前記データベースの予め定められた状態情報と比較される、収集された状態情報の分析に基づいている、請求項４０に記載のコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【関連出願】
【０００１】
本願は、２００７年６月２８日に出願した「STANDARD OPERATING PROCEDURE AUTOMATION IN DATABASE ADMINISTRATION」なる名称の米国特許出願番号第１１／７７０，４５４号および２００６年６月２９日に出願した米国仮特許出願番号第６０／８０６，２２６号の優先権を主張する。これら出願は、その全体を本願に参照として組み込むものとする。
【技術分野】
【０００２】
本発明の実施形態は、概してデータベースアプリケーション管理に係り、より具体的には、データベース管理を自動化する標準操作手順の構築に係る。
【背景技術】
【０００３】
金融管理システム、給与アプリケーション、顧客関連管理システム、および企業資源計画システムを含む多数の商用アプリケーションは、Ｏｒａｃｌｅ（登録商標）、ＤＢ２（登録商標）、ＭｙＳＱＬ（登録商標）、およびＳＱＬサーバ（登録商標）などのデータベースアプリケーションの１以上を利用する。世界の企業は、これらのデータベースアプリケーションの運用および管理に年間数十億ドルも費やしている。データベース管理は、コンピュータ化されたデータベースを構築して、その整合性、回復性、セキュリティ、利用可能性、信頼性、スケーラビリティ、および性能を保証するプロセスである。データベース管理者（ＤＢＡ）は、データベース管理システムのソフトウェアを利用して、データのオーガナイズ、格納、および取得を行う。ＤＢＡは、ユーザの要件を特定し、コンピュータデータベースをセットアップし、コンピュータデータベースシステムへの修正を試験し調整する。ＤＢＡはシステムセキュリティの設計および実装も行うことがあるので、しばしばセキュリティ対策の計画および調整も行う。取り扱いに注意を要するデータ量の生成が急速に進む昨今、データの整合性、バックアップシステム、およびデータベースセキュリティは、ＤＢＡの仕事のなかで益々重要な側面になってきている。これらの作業の幾らかはツールを利用してサポートされるようにもなっているが、作業の多くは依然として手動で行われている。
【０００４】
平均的なデータベース環境では、１名以上のＤＢＡが従事しており、これらＤＢＡによるデータベース監視およびメンテナンスをサポートする特定のソフトウェアツールおよびスクリプトが利用される。環境が大きくなると、ＤＢＡの人数、利用されるツールおよびスクリプトの数も増える。これらツールは、主にデータベースの監視サポート、および／または、グラフィカルユーザインタフェースを提供して、ＤＢＡ自身がその下のコンピュータコマンドシンタックスを記憶する必要のないよう任意のタスクを行うのをサポートする。これは有用ではあるが、これら作業の大半は、ＤＢＡにより手動で決定、実行、および管理されねばならない。これは、これら作業が通常ユーザの要求、環境変更、変更制御要求、構成管理要求、リリース管理要求等により駆動されることに起因しており、これらの多くが、外部のユーザおよび他の管理者（システム管理者、ストレージ管理者、ネットワーク管理者、およびアプリケーションサポート人員）と通信するのに人的なＤＢＡ介入を必要とする。さらに、これらＤＢＡはしばしば、地理的およびタイムゾーンの上で分断されている。このようなわけで、ＤＢＡ間で仕事のやり方に差があり、仕事の手順に標準化がなされておらず、仕事の結果物も統一がとれていない。チームで動いている３人のＤＢＡが、同じ作業を銘々の環境で取り組む際に、三者三様のアプローチおよび／または方法をとることが往々にして見られる。これにより、仕事の品質は顕著に異なり、製品の信頼性に変質をもたらす人的エラーが起こっている。
【０００５】
人的な相互作用を含む殆どのプロセスにありがちであるが、ＤＢＡのなかにも順位付けがある。しばしば高位と推定されるＤＢＡは、低レベルの雑事およびデータベース養成に追われるのでビジネスユーザへの対応には十分な時間がとれず、データベース環境を構築および調整してビジネスに対応するほどビジネスの理解ができない。容量設計、物理的モデリング、アプリケーション／データベース最適化、オペレーティングシステム／データベース最適化、およびその他の能動的な性能管理領域は、純粋にＤＢＡの時間制約により行われない。
【０００６】
ＤＢＡが仕事上利用するツールは多岐にわたる。前述したように、一般的にこれらツールは大きく２つのカテゴリに分類されうる。第１のカテゴリは、ツール監視および変更に関する。予め構築された基準に基づいて、これらツールは、特定のデータベースの性能を監視し、予め定義された閾値に合致する、またはそれを超えると、ＤＢＡに対して警告を発する。ＤＢＡは警告箇所にアクセスして、適宜データベース環境を直ぐに、または予め構築されたメンテナンスウィンドウ毎に変更することができる。データベースが修正を要する場合、第２のクラスのツールが導入される。この第２のクラスのツールは、この分野では、アドホックタスク実行ツールとして知られている。問題について警告を受けると、ＤＢＡは様々なアドホックタスク実行ツールを使用してデータベース操作を行う。不幸なことに、行われるべき修正またはこれら修正を行うプロセスについては標準化された方策がない。ＤＢＡがとりうるプロセスは、純粋に個々のＤＢＡの経験および独創力に依存する。故に、２人のＤＢＡに警告を発する監視ツールが特定する同じ問題が、２つの全く異なる、おそらくは互いに相容れない解決法を生じ、これにより広範なデータベース障害を引き起こす可能性もある。
【０００７】
ＤＢＡは典型的な情報技術組織で最も高価な資源の一つである。企業は通常、企業の最高位のＤＢＡが定めたベストプラクティスに基づき各ＤＢＡが一定の作業水準を遵守するよう努力する。しかしこういったベストプラクティスは、定義した最高位のＤＢＡの在職期間限りであり、下位のＤＢＡがこれら標準を遵守する意向および／または能力を有するかにも左右される。ＤＢＡがいつ何時においてもデータベース環境の状態を把握し、データベースの動作のいかなるずれをも認識する能力は、特に下位のＤＢＡにとって難しい。ＤＢＡへの対価も人員の流動的になるにつれて上がるので、一貫した信頼性の在るデータベース管理を行うのもまた難しい。企業は、ＤＢＡチーム全体の仕事を標準化し、可能な場合は自動化して、チームメンバを解放してより能動的なデータベース管理タスクに従事させることのできる手段を模索し続けている。
【発明の概要】
【０００８】
簡潔に述べると、本発明の実施形態はデータベース管理に関し、より具体的には、データベース管理者のベストプラクティスを標準操作手順（ＳＯＰ）という形式で取得し、これらＳＯＰを自動的に広範なタイプのデータベースに適用するシステムおよび方法に関する。本発明の一実施形態は、データベースの動作および状態を管理する複数のモジュールおよび／またはエンジンを含む。本発明の一実施形態によると、１つのモジュールは、高位のデータベース管理者が複数のＳＯＰを作成し、その後アクセス可能なメモリ資源に格納する支援をする。本発明の別の実施形態においては、このメモリ資源は中央レポジトリであってよい。これらＳＯＰは、様々なデータベース情報の状態に対処する手順を定義する。多くのＳＯＰが特定のタイプのデータベース構造に特化しているが、中には多数の形式のデータベースと互換性を有するＳＯＰもある。特定のタイプのデータベースと互換性があると特定された各ＳＯＰは、該データベースタイプについて構成されたＳＯＰと互いに互換性を有する。これらＳＯＰは自動的または手動で組み合わせられて、データベースに適用されることで、一貫性および信頼性のあるデータベースの動作を提供してよい。
【０００９】
本発明の別の側面は、データベース情報の状態およびデータベース環境ポリシーを監視するモジュールを含む。本発明は、データベースの状態を監視して、該状態についての情報を収集する能力を含む。この情報は、その後、中央レポジトリに戻されて、そこで、格納および／または分析されることで、データベースの状態を判断し、もしあれば誤差を特定し、１以上のＳＯＰを実行して、データベース環境に関連付けられたある種のポリシーに準拠するようこの誤差を訂正する。本発明の別の側面によると、データベース情報の状態が、予め構築されたベースラインから予め定義された閾値または誤差に達する、またはそれを超えたときに、警告または通知を生成する。警告により、１以上のＳＯＰを関連データベース（１または複数）で実行して自動応答をトリガする、および／またはデータベース管理者に提示することで手動の介入を促すことができる。
【００１０】
本発明の別の側面によると、システムは、データベース管理者または他の権限を持つユーザから、１以上のデータベースの特定の修正を行うことを目的とする１以上のＳＯＰを特定するタスク要求を受信してよい。これらタスクは、データベースバックアップ、データベースリフレッシュまたはデータベースクローニング、データベース記憶構成調整、データベースメモリ資源スペースの管理、データベース合体、データベースパッチング、データベースアップグレード、データマイグレーション、データベースサーバマイグレーション、およびデータベースの再構築またはデフラグを含みうるが、それらに限られない。これらおよび他の課題に対処するＳＯＰは、記憶資源から取得でき、適宜他の互換性のあるＳＯＰとリンクされることで、特定のデータベースに所望の修正を行いうる。ひとたび選択および取得されると、ＳＯＰは、本発明の一側面によると、適切なデータベースに送られ、所望の修正を行うべく実行される。
【００１１】
本開示および以下の詳細な説明に記載した特徴および利点は、包括的ではなく、特に、当業者にとっては、図面、明細書、請求項を参照することで、多くの追加的な特徴および利点が明らかであろう。さらに、明細書で利用される用語は、主に読みやすさおよび便宜上の目的から選択されており、発明の主題の特定またはその外縁を示す目的はないことが多く、このような発明の主題の特定には請求項に拠ることが必要である。
【図面の簡単な説明】
【００１２】
以下の好適な実施形態についての記載を、添付図面とともに参照することで、本発明の上述の特徴および目的、他の特徴および目的、それを得る方法、且つ発明自身の理解が深まることであろう。
【００１３】
【図１】本発明の一実施形態が実装されるデータベース環境のハイレベルな説明図である。
【００１４】
【図２】本発明の一実施形態による、標準操作手順モジュールのシステムアーキテクチャのブロック図である。
【００１５】
【図３Ａ】本発明による、自動化された標準操作手順を用いるデータベース管理方法の一実施形態を示すフローチャートである（図３Ｂに続く）。
【図３Ｂ】本発明による、自動化された標準操作手順を用いるデータベース管理方法の一実施形態を示すフローチャートである（図３Aからの続き）。
【００１６】
【図４Ａ】本発明による、受信されたタスク要求に応じて標準操作手順を用いるデータベース管理方法の一実施形態のフローチャートである（図４Ｂに続く）。
【図４Ｂ】本発明による、受信されたタスク要求に応じて標準操作手順を用いるデータベース管理方法の一実施形態のフローチャートである（図４Aからの続き）。
【００１７】
図面は、本発明の実施形態を例示目的のみから記載している。当業者であれば、以下の説明から、本発明の原理の範囲内で、ここに例示した構造および方法に関する代替実施例を想到するであろう。
【発明を実施するための最良の形態】
【００１８】
添付図面を参照しながら、本発明の特定の実施形態を以下で詳細に記載する。図面全体にわたり同様の部材については同様の参照番号を付して一貫性を保っている。以下では本発明をある程度詳しく説明および例示しているが、本開示が例示のみを目的としており、当業者であれば、本発明の精神および範囲から逸脱することなく、部材の組み合わせおよび配置についての幾多もの変更が可能であることを理解されたい。
【００１９】
図１は、本発明の一実施形態によるデータベース管理システムを示す。複数のデータベース１２０を含有するサーバ１２５と１以上のデータベース管理インタフェース１３０との間には、ＳＯＰモジュール１００が介在しており、該ＳＯＰモジュール１００は、本実施形態においては、データベース管理サーバ１５０に含有されている。１以上のメモリ資源１６０がデータベース管理サーバ１５０に通信可能に連結されることでＳＯＰモジュール１００と連通し、該メモリ資源１６０は、少なくとも複数のＳＯＰおよびタスクレシピを含有している。
【００２０】
図２は、本発明による図１のＳＯＰモジュール１００の一実施形態を拡大して示す。本発明の本実施形態では、ＳＯＰモジュール１００は、収集エンジン２１０および管理エンジン２２０を含む。収集エンジンは、とりわけ、各データベースから収集した状態情報について、データベース監視モジュール２３０、分析モジュール２４０、および報告モジュール２４５を含む。管理エンジン２２０は、ＳＯＰ実装用に制御モジュール２７０を含み、且つ、スケジュールモジュール２６０およびＳＯＰ作成モジュール２５０を含む。各エンジン内の各モジュールは（つまり、収集エンジン２１０および管理エンジン２２０であるが）、共同してデータベース環境内の各データベースを管理する。
【００２１】
前述の通り、収集エンジン２１０は、監視モジュール２３０、分析モジュール２４０、および報告モジュール２４５を含む。各データベースは特有のプラットフォーム上で動作する(多くの場合、固有のオペレーティングシステム上)。しかし、各データベース環境は、割り当てられたデータベースの役割を実行する能力を反映する状態情報を保持している。この情報は、データベース自身に関するデータ、および、データベースが存在し、動作するオペレーティングシステムよびプラットフォームに関する情報を含む。本発明の一実施形態による監視モジュール２３０は、様々な状態情報を特定し、状態情報とそれに特有なデータベースとを関連付ける。ひとたび特定されると、監視モジュール２３０は、定期的に該データベースに関する状態情報、および該データベース環境で起こっている差分（delta）を収集する。監視モジュール２３０が収集する状態情報はメモリ資源１６０内に格納されて１以上の別個の情報レポジトリを形成する。当業者であれば、メモリ資源１６０が単一のメモリ媒体である必要がないことを理解しよう。メモリ資源１６０は、ストレージ・エリア・ネットワークなどの配信ネットワークを介して配信される多数の記憶媒体を含んでよく、または、一箇所に配置される記憶媒体の複数の専用容量内に在ってもよい。
【００２２】
収集エンジン２１０の別の側面は、収集されたデータベース状態情報を分析して、課された動作を実行するデータベースの状態および能力を確かめることである。分析モジュール２４０は、直線回帰、待ち行列、シミュレーション（公知の様々なシミュレーション技術を利用する）、ファジー論理等の複数の数理モデルを利用する。別個に、または一緒に利用されるこれら技術の各々は（データ分析技術分野の当業者には公知のその他のものも含めて）、データベースが最適に動作するかどうかを判断する分析モジュール２４０を手助けする。
【００２３】
本発明の一実施形態では、収集エンジン２１０は、監視モジュール２３０および分析モジュール２４０の生成物を介して、データベースが１以上の予め構築された基準に合致しないと認識した際に警告を生成する。警告はその後ＤＢＡインタフェース１３０を介してＤＢＡに送信されてもよい、および／または自動応答を開始するトリガとなってよい。本発明の一実施形態では、収集エンジン２１０が発する警告は、タスク要求を自動的に生成して、警告の元になっている原因に対処させそれを直させる。このようにして、ＳＯＰモジュール１００は、特定のＳＯＰの所定のスクリプトを利用して所定の規則に基づいてデータベースの問題を特定して、直す自動手段を提供する。
【００２４】
本発明の別の側面は、収集された情報の警告の基となる側面、および、ひとたび条件が特定されたらとるべき対応するアクションを特定する、分析モジュール２４０により利用される複数の規則セットを含むことである。規則セットは、ＳＯＰおよびタスクレシピとともにメモリ資源１６０内に作成および格納されて、分析モジュール２４０によりアクセスされることで、データベースの問題の症状が特定される。特定された症状を診断して、問題解決のためにとるべきアクションプランを立てる。ＳＯＰでは、規則セットは、全てのデータベースに汎用されるよう作成されても、特定のデータベース環境に特化して作成されてもよい。ＳＯＰの規則は、適正な特権を持つＤＢＡによる修正が可能である。
【００２５】
本発明の別の実施形態において、収集エンジン２１０は、ハードコード環境特性ではなくて、環境メタデータを自動収集してよい。実際、収集エンジン２１０は、データベース１２０が動作するオペレーティングシステムから、およびデータベースサーバ１２５上の他のアプリケーションから、情報を収集しうる。このようにして、収集エンジン２１０は、データベースが動作する環境を収集する。収集されたデータは、さらに分析される、および／または報告されてよい。例えば、ＤＢクローン呼び出しシンタックスでは、ソースおよびターゲットサーバおよびデータベース名をパラメータとして渡す。ソースおよびターゲットデータベースに関する他の特性および環境属性（例えばデータベースサイズ、ＤＢＭＳメーカ（Ｏｒａｃｌｅ（登録商標）、ＩＢＭ  ＤＢ２（登録商標）、ＭＳ  ＳＱＬ  Ｓｅｒｖｅｒ（登録商標）等）、ＯＲＡＣＬＥ＿ＨＯＭＥ値、データファイル位置およびサイズ等のソフトウェアインストールディレクトリエリア）は、メモリ資源１６０から全てメンテナンスされた形で取得される。これら特性はメタデータと称される。自動収集およびレポジトリからのこれらメタデータの利用により、人的エラーが回避される。
【００２６】
報告モジュール２４５は、監視モジュール２３０および分析モジュール２４０と相互作用することで、データベース環境についての報告を準備、提示する。本発明の一実施形態によると、これは、データベース状態情報およびデータベースサーバ１２５についてのメタデータおよび他の情報を含みうる。さらに、本発明の別の実施形態では、報告モジュール２４５は、管理エンジン２２０とは独立して動作して、ＤＢＡに対して、データベース１２０の環境に関する情報を提供する。例えば、監視モジュール２３０は、データベースサーバ１２５についてのオペレーティングシステム情報の収集を促進し、ＤＢＡあるいは類似した人員に対して、データベースが動作している環境に関する報告をする。これら報告は、ＤＢＡに対して、幾らかの構成の形式に整えられて提供されてよく、これによりデータベース管理が促進される。
【００２７】
ＳＯＰモジュール１００が管理する複数のデータベース１２０各々に関する既存の状態情報の収集および分析以上に、本発明は、ＳＯＰの現在進行中の、および過去の状態に関する情報をも収集する。本発明の一実施形態によると、管理エンジン２２０は、収集エンジン２１０に対して、ＳＯＰの特定のデータベースに対する発行についても伝達する。その後、収集エンジン２１０は、これら発行されたＳＯＰの実行に関するデータを監視および収集しうる。さらに、監視モジュール２３０は、格納および後の分析目的で、要求されたタスクの実行に関するデータベース状態情報を、メモリ資源１６０宛てに送る。その後、分析モジュール２４０は、課されたＳＯＰに関するデータベース状態情報の分析を行い、ＳＯＰが有効であるか判断することができる。報告モジュール２４５が生成するこのような分析結果を伝達する様々な形式の報告は、ＤＢＡインタフェース１３０を介してＤＢＡに与えられてよい。データベースの実行に関する遵守監査情報も生成されて、報告モジュール２４５を介して報告されてよい。本発明の別の実施形態では、課されたＳＯＰの実行を反映したデータベース状態情報の収集は、ＤＢＡインタフェースに対してリアルタイムに伝達され、そこで表示されてよい。このリアルタイムな特定のＳＯＰの有効性に関する提示は、ＤＢＡに対する有用なフィードバックとなり、ＤＢＡによる追加的タスク要求の発行（またはキャンセル）についての決定を支援する。
【００２８】
収集エンジン２１０は、管理エンジン２２０と共同して、複数のデータベースを管理する。管理エンジン２２０の一側面は、ＳＯＰ作成モジュール２５０である。本発明の一例示的実施形態によると、ＳＯＰは、ＳＯＰ作成モジュールを利用して高位のＤＢＡが作成し、メモリ資源１６０に格納される。メモリ資源１６０は、管理されるデータベースとは別個のデータレポジトリである。各データベース環境は、通常毎日更新される手順一式であり、各データベースを構成およびメンテナンスする。経験ある高位のＤＢＡであれば分かるように、ＳＯＰ作成モジュール２５０はこれら手順を捉え、メモリ資源１６０に格納する。本発明の一実施形態によると、テンプレートを利用して、様々なデータベース環境用および様々なタスク用に複数のＳＯＰの作成の手助けをすることができる。様々なデータベースタイプおよび環境について様々な状況に対応できる複数のベストプラクティスＳＯＰを、ＳＯＰ作成モジュールにより作成および格納する。ひとたび作成および格納されると、メモリ資源１６０は、データベース管理知識のレポジトリとなる。経時的には、既存のＳＯＰの修正により、多数のＤＢＡの知識が組み合わせられて、効率的および一貫したデータベース管理ツールが得られる。本発明の別の側面によると、既存のＳＯＰの修正ができるＤＢＡは限られている。作成モジュール２５０にはセキュリティモジュール（不図示）が連結されて、既存のＳＯＰへの編集アクセスを制限する。このようにしてＳＯＰの品質がメンテナンス、制御されうる。
【００２９】
データベース環境は、Ｏｒａｃｌｅ（登録商標）、ＤＢ２（登録商標）、ＭｙＳＱＬ（登録商標）、およびＳＱＬサーバ（登録商標）技術を利用して管理されるデータベースを含む。本発明の一実施形態によると、各ＳＯＰは、他のＳＯＰと互換性を持つように作成される。このような構成において、ＳＯＰは互いにリンクされて、課された様々なタスクを遂行することができる。他の実施形態ではＳＯＰを特定のデータベース環境に基づいて分類して、該環境への互換性を持たせる。これは、特定のデータベース環境で一般的に利用されるポリシーを含む。このようにして、ＳＯＰは、多数のデータベース環境用に多数のタスクに対応する。
【００３０】
本発明の一実施形態によるＳＯＰ作成モジュール２５０の別の側面は、タスクレシピの作成である。タスクレシピは、本発明の一実施形態において、各ＳＯＰおよび各タスクレシピの機能のユーザフレンドリな記述であり、１以上のＳＯＰに関するメモリ資源１６０に格納される。ＳＯＰはＳＯＰの実行結果が容易に伝わらない方式で記載されている場合が多い。これは、各ＳＯＰが、自身が実行されるデータベース環境を認知している必要があり、他のＳＯＰと互いに互換性を持つ必要があるからである。このようなＳＯＰの意義は、それを作成した高位のＤＢＡには自明であろうが、下位または不慣れなＤＢＡにとっては、このようなＳＯＰの価値をあまりよく把握できない場合もある。タスクレシピをＤＢＡによりＤＢＡインタフェース１３０に表示および／または選択させることで、データベース管理を促進することができる。このようにして、タスクレシピは、様々な経験レベルの全てのＤＢＡに対して、ＳＯＰの価値を容易に判読させ理解させる。
【００３１】
各タスクレシピは１以上のＳＯＰに対応しており、各ＳＯＰは１以上のタスクレシピに関連付けられていてよい。以下に詳述するように、ＳＯＰは概してタスクベースのＳＯＰまたは回復ベースのＳＯＰに分類される。タスクベースのＳＯＰは、ある種の反復性の、時間のかかる、および／または人的資源の多くかかる、データベース管理タスクがどのように、およびどのような状況で実行されるかを規定する。回復ベースのＳＯＰは、特定された、または予期されるデータベースの問題を解決するよう設計される。これら問題は、データベース監視モジュール２３０および分析モジュール２４０により特定される。
【００３２】
管理エンジンは、スケジュールモジュール２６０および制御モジュール２７０も含む。スケジュールモジュール２６０は、タスク要求に基づいてメモリ資源１６０から特定のＳＯＰを取得する際の管理をする。タスク要求は、幾らかの手段によりＳＯＰモジュール１００が受け取る。前述のように、収集エンジン２１０による警告の発令によって、該警告を解決する自動タスク応答が生成されうる。本発明の別の実施形態では、ユーザは手動でタスク要求を発行してよい。タスク要求は、データベースバックアップ、データベースリフレッシュ、データベースクローニング、データベースヘルスチェック実行、データベースメモリ資源スペース管理、データベース合体、分割されたデータベースセグメントの再構築、データベース最適化統計データ分析、データベースルート原因分析、データベースパッチング、データベースアップグレード、データベースマイグレーション、およびデータベースサーバマイグレーションを含みうるが、それらに限られない。当業者には公知である又は当業者であれば容易に想到できるであろうが、これら銘々、および他のデータベースタスクは、１以上のＳＯＰにより遂行されてもよい。
【００３３】
本発明は、スケジュールモジュール２６０を介して、各タスク要求をタスクレシピと関連付け、その後、１以上の適切なＳＯＰと関連付ける。例えば、下位のＤＢＡが特定のデータベースのメモリ資源のスペースを管理しようとしたとする。この場合、下位のＤＢＡは、ＤＢＡインタフェース１３０を用いて管理エンジン２２０のスケジュールモジュール２６０へタスク要求を伝送する。ＤＢＡがＤＢＡインタフェース１３０を介して提供した情報に基づいて、スケジュールモジュール２６０は、発行されたタスク要求を満たすには、どのタスクレシピを行うべきかを決定する。場合によっては、単一のレシピが必要な場合もあるし、複数のレシピが関与する場合もありえる。
【００３４】
タスクレシピは各特定のデータベース環境に対して１以上のＳＯＰを特定する。このように、データベースメモリ環境のタスク要求は、幾らかのタスクレシピと関連付けられる場合がある。各タスクレシピも、幾らかのＳＯＰと関連付けられてよい。これらタスクレシピとＳＯＰとは、幾らかの場合においては、特定の順序で実行される必要がある。スケジュールモジュール２６０はＤＢＡの代わりにこのタスクを行う。ひとたびタスク要求が受け取られると、スケジュールモジュール２６０は、もし存在すれば、どのタスクレシピが関与しているかを特定し、対象データベース環境およびポリシーに基づいて、適切なＳＯＰをメモリ資源１６０から取得する。スケジュールモジュール２６０は、適宜、ＳＯＰ／タスクレシピを結びつけて、課された要求を達成してよい。本発明の代替的実施形態では、タスクレシピ自身がＤＢＡインタフェース１３０を介してＤＢＡに表示される。ＤＢＡは、リストのタスクレシピから、特定のデータベース環境について選択を行い、手動でリンクされたＳＯＰのタスク要求を形成することもできる。
【００３５】
ひとたび適切なＳＯＰが取得されると、スケジュールモジュール２６０は、データベースの利用可能性を確かめる。当業者であれば理解するように、幾らかのＳＯＰの実行により、データベースの能力が影響されてその主要な機能が実施されることがある。このようにして、スケジュールモジュール２６０は、特定のデータベースに向けられているＳＯＰを知っており、そのＳＯＰがそのデータベースに対して持つ影響の度合いを知っているので、制御モジュール２７０とともに対象データベースへのＳＯＰの実装をスケジュールする。ひとたびスケジュールされると、対象データベース上へのＳＯＰの実行制御は、制御モジュール２７０が取り扱う。本発明の一実施形態では、スケジュールモジュール２６０は、１以上の特定の時間間隔におけるタスク要求の実行をスケジュールする。例えば、データベースメンテナンス要求は、データベースの待機期間中に実行されるものとしてスケジュールされうる。この代わりに、タスク要求を定期的に繰り返して、データベースを最適な状態にメンテナンスしてもよい。本発明の別の実施形態によると、スケジュールモジュール２６０は制御モジュール２７０に対して、例えば既知の最小動作影響時間などの特定のタイムウィンドウ内にデータベース上で実行されるべき１以上のＳＯＰを提示してよい。このような場合、制御モジュール２７０は、確立された基準の範囲内であればＳＯＰの実行を自由に管理できる。
【００３６】
本発明の別の実施形態によると、スケジュールモジュール２６０は、タスク要求間の動作衝突を管理することができる。複数のタスク要求が発行され、特定の環境内の１以上のデータベースを対象にする場合、ＳＯＰの実行に関して衝突が存在している場合がある。また、複数のデータベース上で複数のＳＯＰを同時に実行する動作影響は受け入れられないものでありうる。データベース環境ポリシーに含まれる各データベース環境について予め構築された基準に基づいて、スケジュールモジュール２６０は、各ＳＯＰの実行に優先順位を設けて管理することができる。本発明の別の側面は、各タスク要求に対して優先度レベルを設けることである。この優先度レベルは、スケジュールモジュール２６０が実行順序の重要性、および、特定のデータベースの動作制約への影響を特定する助けとなる。例えば、データベース環境ポリシーに基づくと、適切なＳＯＰの実行中にはデータベースから動作状態を取り除くのに高優先度のタスク要求で十分であり、データベースがスケジュールされたメンテナンスを行うまでの低活動期間中には、低優先度のタスクは待ち状態であってよい。
【００３７】
取得されたＳＯＰのデータベース上の実行は、制御モジュール２７０により制御される。制御モジュール２７０は、モジュール上のＳＯＰの実行を統括し、データベース管理サーバ１５０と各データベース１２０との間に必要な通信リンクを適宜構築する。ひとたびＳＯＰが取得、スケジュールされると、制御モジュール２７０は該ＳＯＰを対象データベース１２０で実行する。さらに、また本発明の一実施形態において、制御モジュール２７０は、ＤＢＡインタフェース１３０を介して、ＤＢＡに対して、リアルタイムにデータベース上のＳＯＰ実行を監視させる。実行が継続しており、状態情報がＤＢＡインタフェース１３０に中継して戻される間、ＤＢＡは課されたＳＯＰの進捗状態および有効性について定性的評価を行ってよい。ＳＯＰは、さらに、手動でＳＯＰ実行に介入して（ＤＢＡが適切な特権を持っているという前提で）、適宜、ＳＯＰをリアルタイムに修正してよい。
【００３８】
本発明の別の側面によると、制御モジュール２７０は、生成された警告またはスケジュールされたメンテナンスに基づいて、自動的にＳＯＰを実行する。タスク応答をＤＢＡから受信する代わりに、制御モジュール２７０は分析モジュール２４０から生成された警告と対応するタスク要求とを受信する。ひとたび受信されると、制御モジュール２７０は、予め定められた基準に基づいて権限保持者として振る舞い、適切なＳＯＰを自動的に実行する。このようにして、ＤＢＡの日々のメンテナンスおよび他のルーチン機能への関与を省くことができる。
【００３９】
ＳＯＰ実行前、本発明の別の実施形態においては、管理エンジン２２０の制御モジュール２７０は、現在のユーザ（ＤＢＡ）の資格をチェックして、特定のプラットフォームについてＳＯＰを実行する権限を与えられているかを確かめる。基となるセキュリティ表には、ユーザ（ＤＢＡ）がＳＯＰ、ドキュメント、または特定のデータベース用の対応する自動化ルーチンの閲覧、作成／修正が許される情報が掲載される。ユーザがＳＯＰモジュール１００でアクションの実行を望むとき（ＳＯＰ閲覧、ＳＯＰの作成／編集、またはＳＯＰの自動ルーチン化または実行）、ユーザのユーザネーム／パスワードをチェックする。これが正確な場合、特権を取得し、検証する。この人が該データベースについてＳＯＰの読み書きの権限を有している場合、ＳＯＰおよび関連するオブジェクトの閲覧または修正を許される。権限が与えられている場合には、ユーザは、特定のデータベースのＳＯＰを実行する、および／または該データベースのＳＯＰを走らせる権限を許可されてよい。
【００４０】
ＤＢＡインタフェース１３０は、ＤＢＡのゲートウェイとして振る舞い、ＳＯＰモジュール１００を作成、管理、およびＳＯＰモジュール１００と相互作用する。ＤＢＡインタフェース１３０は、報告モジュール２４５が生成するデータベース状態情報および他の関連データに関する報告をＤＢＡに提示する手段として振舞うこともできる。本発明の一実施形態においては、ＤＢＡインタフェース１３０は、データベース管理サーバ１５０を介して複数のデータベース１２０と通信する機能を有するネットワークに連結されるパソコン、パーソナルデータアクセサリ（ハンドヘルドデバイス）または類似する装置であってよい。必須ではないが、本発明は、ＤＢＡインタフェース１３０およびデータベース管理サーバ１５０を含むパソコンまたはサーバが実行可能なプログラムモジュールなどの、コンピュータ実行可能な命令の一般的なコンテクストに記載されてよい。このようにして、ＳＯＰモジュール１００に関連付けられる１以上のモジュールは、ＤＢＡインタフェース１３０にあってよく、ＤＢＡインタフェース１３０により実行されてよい。概して、プログラムモジュールは、特定のタスクを行うまたは特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造等を含む。さらに、当業者であれば、本発明が、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラム可能な家庭用電化製品、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ等を含む他のコンピュータシステム構成で実践されてよいことを理解する。本発明は、通信ネットワークを介してリンクされた遠隔処理デバイスによりタスクを実行する分散型コンピューティング環境でも実施されうる。分散型コンピューティング環境においては、プログラムモジュールはローカルメモリ記憶デバイスおよび遠隔メモリ記憶デバイスの両方に配置されつつ、同時にデータベース環境から切り離されていることができる。
【００４１】
本発明を実装する例示的なシステムは、ＤＢＡインタフェース１３０として振舞う従来のパソコンなどの携帯の汎用コンピューティングデバイスを含む。このようなコンピュータは、処理装置、システムメモリ、およびシステムメモリを含む様々なシステムコンポーネントを処理装置に連結するシステムバスを含む。システムバスは、任意の様々なバスアーキテクチャを利用するメモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含む幾多もの種類のバス構造のいずれであってもよい。システムメモリは、読み取り専用メモリ（ＲＯＭ）およびランダムアクセスメモリ（ＲＡＭ）を含む。ＤＢＡインタフェース１３０はさらに、ハードディスクへ読み書きを行うハードディスクドライブ、取り外し可能な磁気ディスクへ読み書きを行う磁気ディスクドライブ、およびＣＤ−ＲＯＭ、固体ドライブまたは他の光学媒体などの取り外し可能な光学ディスクに読み書きを行う光学ディスクドライブをさらに含んでよい。ハードディスクドライブ、磁気ディスクドライブ、および光学ディスクドライブは、ハードディスクドライブインタフェース、磁気ディスクドライブインタフェース、および光学ドライブインタフェースそれぞれによりシステムバスに接続される。ドライブおよび銘々関連付けられたコンピュータ読み取り可能な媒体は、コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、および他のパソコン用データを不揮発に格納しうる。ここで記載した例示的な各実施形態はハードディスク、取り外し可能な磁気ディスクおよび取り外し可能な光学ディスクを利用するが、当業者であれば、磁気カセット、フラッシュメモリカード、固体ドライブ、デジタルビデオディスク、ベルヌーイカートリッジ、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）等のコンピュータアクセス可能でありデータ格納可能な他の種類のコンピュータ読み取り可能な媒体を例示的な動作環境内で利用してもよいことを理解する。
【００４２】
ＳＯＰモジュール１００、収集エンジン２１０、および管理エンジン２２０のものを含む幾らものプログラムモジュールを、ハードディスク、磁気ディスク、光学ディスク、ＲＯＭ、またはＲＡＭに格納してよい。ＤＢＡはコマンドおよび情報を、キーボードおよびポインティングデバイス等の入力デバイスを介してＤＢＡインタフェース１３０に入力してよい。他の入力デバイス（不図示）は、マイクロホン、ジョイスティック、ゲームパッド、サテライトディッシュ、スキャナ等を含みうる。これらおよびその他の入力デバイスはしばしば、システムバスに連結されたシリアルポートインタフェースを介して、処理装置に接続されるが、パラレルポート、ゲームポートまたはユニバーサルシリアルバス（ＵＳＢ）等の他のインタフェースにより接続されてもよい。モニタまたは他の種類の表示デバイスも、システムバスに、ビデオアダプタなどのインタフェースを介して接続される。モニタに加えて、ＤＢＡインタフェース１３０などのパソコンが通常、スピーカ、プリンタ、携帯電話機、および他のハンドヘルドデバイス等の他の周辺出力デバイスを含む。
【００４３】
ＤＢＡインタフェース１３０は、例えばデータベース管理サーバ１５０等の１以上の遠隔コンピュータへの論理結合を利用してネットワーク化された環境で動作してよい。データベース管理サーバ１５０、またはデータベース管理システム１００に関連した任意の他の遠隔コンピュータは、別のパソコン、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、または他の共通ネットワークノードであってよく、通常パソコンに関連して上述されたエレメントの多くまたは全てを含む。ＤＢＡインタフェース１３０およびデータベース管理サーバ１５０はさらに、ローカルエリアネットワーク（ＬＡＮ）および（必要であれば）ワイドエリアネットワーク（ＷＡＮ）を介して通信することのできるよう、論理結合を含む。このようなネットワーク環境は、オフィス、企業規模のコンピュータネットワーク、イントラネットおよびインターネットでよく見られる。
【００４４】
ＬＡＮネットワーク環境で利用される場合、ＤＢＡインタフェース１３０は、ネットワークインタフェースまたはアダプタを介してローカルネットワークに接続される。ＷＡＮネットワーク環境で利用される場合、ＤＢＡインタフェース１３０は通常、モデム、またはインターネットなどのワイドエリアネットワークを介して通信を構築する他の手段を含む。モデムは、内部にあっても外部にあってもよく、シリアルポートインタフェースを介してシステムバスに接続される。ネットワーク環境においては、パソコンと比して図示されたプログラムモジュールまたはその部分は、遠隔メモリ記憶デバイスに格納されてよい。
【００４５】
前述のように、ＤＢＡインタフェース１３０はさらに、ネットワークゲートウェイとして機能してよい。ゲートウェイとして、ＤＢＡインタフェース１３０はさらに、通信リンクを利用して１以上のデバイスに直接連結されてよい。図１には示されていないが、ＤＢＡインタフェース１３０はさらに記憶デバイス（メモリ資源１６０など）に連結されてもよい。
【００４６】
当業者であれば、ＤＢＡインタフェース１３０が、複数のデータベース１２０、データベース管理サーバ１５０、またはメモリ資源１６０とは地理的に大きく離れた位置にあってもよいことを理解し、同様に、これらデバイス各々は互いにかなりの距離を隔てて配置されていてもよいことを理解しよう。例えば、データベース管理サーバ１５０がカリフォルニアにあって、ＤＢＡインタフェース１３０がテキサスにあり、１以上のデータベース１２０がニューヨークにあってもよい。
【００４７】
好適な実施形態においては、本発明はソフトウェアに実装される。本発明を具現化するソフトウェアプログラムコードは、通常（例えばＤＢＡインタフェース１３０および／またはデータベース管理サーバ１５０の）マイクロプロセッサにより、ＣＤ−ＲＯＭドライブ、固体ドライブ、またはハードドライブなどの、ある種の長期記憶媒体からアクセスされる。全てのＳＯＰはＤＢＡインタフェース１３０内に、オープンな業界標準のスクリプト言語（Ｐｙｔｈｏｎ、ＰｅｒｌまたはＪａｖａＳｃｒｉｐｔ等）でコード化される。
Ｋｏｒｎ  Ｓｈｅｌｌ（ｋｓｈ）も、殆どのＵＮＩＸ（登録商標）およびＬｉｎｕｘ（登録商標）プラットフォーム上で利用可能なので利用することができ、ｋｓｈの特定のフレーバもウィンドウ環境で利用可能である。この代わりに、バッチ（．ｂａｔまたは．ｃｍｄ）スクリプトまたはＪａｖａＳｃｒｉｐｔをウィンドウズ（登録商標）用に書き込むことができる。また、ＰｅｒｌまたはＰｙｔｈｏｎを全てのデータベース環境に普遍的に利用することもできる。本発明は、ＤＢＡが理解し追従する単純なスクリプト言語で自動ルーチンを作成することができ、これにより自動ルーチンが、利用前に任意のＳＯＰをカスタマイズしてよい。ある種のファイル位置などの機密データを埋め込む必要があるような任意のＳＯＰ自動化スクリプトは、Ｃ言語等のコンパイルされた言語で書き込まれて、このような情報が露呈すること（例えばスクリプトのような形で）を避けてよい。
【００４８】
ソフトウェアプログラミングコードは、ディスケット、ハードドライブ、フラッシュドライブ、またはＣＤ／ＤＶＤ−ＲＯＭなどの、様々な公知の媒体いずれかに具現化されることで、データ処理システムで利用されてよい。コードは、これら媒体に記憶されて配信されてよく、または、１つのコンピュータシステムのメモリまたは記憶装置から、ある種のネットワークを介して、他のコンピュータシステムへと配信され、他のコンピュータシステムで利用されてよい。または、プログラミングコードはメモリに具現化され、マイクロプロセッサによりアクセスされてもよい。ソフトウェアプログラミングコードをメモリ、有形媒体に具現化する技術および方法、および／またはソフトウェアコードをネットワーク経由で配信する技術および方法は、公知であるのでこれ以上記さない。
【００４９】
本発明のユーザ（例えばＤＢＡ）は、有線接続または無線接続を利用して自身のコンピュータをサーバに接続してよい。または、本発明は、ネットワーク接続を有さないスタンドアロンモードで利用されてもよい。有線接続とは、ケーブルおよび電話回線などの有形媒体を利用する接続であり、無線接続とは、衛星リンク、高周波、赤外線波等の媒体を利用する。これら様々な媒体では多くの接続技法を利用することができ、その中には、コンピュータのモデムを利用して電話回線における接続構築を行うもの、トークンリングまたはイサーネットなどのＬＡＮカードを利用するもの、セルラー方式モデムを利用して無線接続を構築するもの、等が含まれる。ユーザのコンピュータ（ＤＢＡインタフェース１３０）は、任意の種類のコンピュータプロセッサであってよく、これには、処理能力（およびデバイスがネットワーク接続された場合には通信能力）を有するラップトップ、ハンドヘルドまたは携帯コンピュータ、車両搭載デバイス、デスクトップコンピュータ、メインフレームコンピュータ等が含まれる。遠隔サーバも、同様に、処理能力および通信能力を有する任意の様々な種類のコンピュータのうちのいずれかであってよい。これら技術は当技術分野では公知であり、これらの利用を可能とするハードウェアデバイスおよびソフトウェアは容易に入手可能である。
【００５０】
ソフトウェアに実装される場合、本発明は、１以上のコンピュータソフトウェアプログラムとして実装されてよく、好適には、オブジェクト指向プログラミング言語を利用して実装されてよい。ソフトウェアインストールパッケージのこの側面を記述するのに利用されるモデルは、好適には、オブジェクト指向パラダイムのオブジェクト指向モデル化手法を利用して設計されてよい。好適な実施形態では、このモデルに基づいており、特定のインストールパッケージのインストール側面の記述用に作成されるオブジェクトは、構造マークアップ言語ドキュメント（ＸＭＬドキュメント等）、オブジェクトモデル表記法のオブジェクト記述子、または、オブジェクトＲＥＸＸまたは類似する特徴を有するオブジェクトスクリプト言語のオブジェクト、を含む幾多もの方策を利用して特定されてよい。
【００５１】
本発明の一実装例はウェブ環境で実行されてよく、ウェブ環境では、ソフトウェアインストールパッケージは、ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ（ＨＴＴＰ）等のプロトコルを利用して、ウェブサーバから、インターネットを介して接続された１以上の対象コンピュータにダウンロードされる。または、本発明の一実装例は、他の非ウェブネットワーク環境（インターネット、コーポレートイントラネットまたはエクストラネット、または任意の他のネットワークを利用する）で実行されてよく、非ウェブネットワーク環境では、ソフトウェアパッケージは、リモートメソッド呼び出し（ＲＭＩ）またはコモンオブジェクトリクエストブローカアーキテクチャ（ＣＯＲＢＡ）などの技法を利用して配信され、インストールされる。環境の構成は、クライアント／サーバネットワーク、および多層環境を含む。または上述のように本発明を、スタンドアロン型の環境で利用することもでき、スタンドアロン型環境は、例えばネットワーク接続を介さずにローカルに利用可能なインストール媒体からインストールすることを望むインストーラにより実行される。さらに、推奨はできないがしばしば起こりうることであるが、特定のインストールを行うクライアントおよびサーバが、両方とも、同じ有形デバイスに在る場合があり、この場合には、ネットワーク接続が必要ではない。故に、潜在的に問い合わせが行われる対象システムは、本発明の一実装例が実装されるローカルデバイスでありうる。
【００５２】
前述のように、タスク要求は概してタスクベースの要求または回復ベースの要求に分類されうる。タスクベースのＳＯＰまたは自動タスクは、ある種の反復性の、時間のかかる、および／または人的資源の多くかかるＤＢＡタスクがどのように、およびどのような状況で実行されるかを規定するＳＯＰである。タスクベースの要求は、データベースバックアップ、クローニング、データベースヘルスチェック、データベース合体、分割された或いは無効なデータベースセグメントの再構築、データプルーニングおよびデータメモリスペース割り当てを含むが、それらに限られない。
【００５３】
データベースのバックアップは、ＤＢＡの最もよく行われる、ルーチン的なタスクの１つである。本発明の一実施形態によると、ＳＯＰモジュール１００は、適切なバックアップモードを開始し（例えば、Ｏｒａｃｌｅ  ＲＭＡＮ、ホットバックアップスクリプト、コールドバックアップ、データエクスポート等）、バックアップＳＯＰが開始できない、または実行中にハングアップした場合に、オンコールＤＢＡを警告する。バックアップはさらに、バックアップログをパーズして、バックアップが成功したことを保証してよい。ディスクスペースが満杯である等の予め定められた条件によってバックアップが失敗した場合、この条件を制御モジュール２７０へ報告して、スペースを空けるべく後続の自動ＳＯＰがトリガされてよい。環境特有の前処理および後処理を追加して、ＳＯＰルーチンを実装前にさらにカスタマイズすることもできる。
【００５４】
データベースクローニングは、適切なバックアップで環境をリフレッシュして（前日の夜または特定の前の日付）、リフレッシュが成功したことを確かめ、適宜ファイルの名称を付け替え、ファイルを他の位置へ移動すること、等を含む。このＳＯＰはさらに、ある環境／アプリケーション特有のリフレッシュ前後のタスクを実行するようカスタマイズされてもよい。
【００５５】
タスクベースのＳＯＰはさらに、適正なコードモジュールおよびバージョンを抽出して、それを予め定められたリリースウィンドウ中に実行して、結果について報告することで、データベースをリリースすることを含む。実行が成功しなかった場合、後続のＳＯＰを実行してリリースをロールバックすることができる。
【００５６】
回復アクションは、特定されたデータベースの問題を直すことに基づいて形成される。これらＳＯＰは、問題の警告または手動のＤＢＡアクションに呼応して自動でトリガされてよい。ＳＯＰが失敗すると、後続のＳＯＰがトリガされる、または、最終手段としては、予め承認された誇大形式で人間のＤＢＡに警告を発する。問題が起こる多くの場合、回復アクションＳＯＰは、人間の介入なしに問題を解決する。問題の解決が回復アクションにより成功したか否かに関わらず、問題チケットを作成して、メモリ資源１６０内に後のアクセス用に保存、および／または、予め構成されたカスタマートラブルチケットシステムに再送する。この情報は関連するＤＢＡ人員に対して提供され、このような問題が起きたこと、何らかの解決への試みの結果、および問題および解決のタイムスタンプを伝達する。
【００５７】
監視モジュール２３０および分析モジュール２４０について前述したように、回復アクションは、ある種の監視されたイベントに呼応してトリガされてよい。これらイベントの各々が、１以上の規則セットで規定される。１つの規則セットは、１以上の個々の規則を含む。ＳＯＰおよびタスクレシピ同様、規則セットは、高位のＤＢＡにより作成されて、メモリ資源１６０に格納される。
【００５８】
回復アクションは、データベースの開始または再開、ロックコンフリクトの解決、スペースおよびセグメントエラーの解決、および過度のユーザ応答時間あるいは過度のキューの解決を含むが、それらに限られない。
【００５９】
本発明の一実施形態によると、ＳＯＰは、データベースのダウンを発見した際にＤＢＡがとるべき行動について定義することができる。例えば、一日または一週間のある時間にコールドバックアップが続行している影響でデータベースがダウンする場合がある（非稼動状態）。この場合課されたＳＯＰは、サービスレベル協定に基づいて、データベースにアップ対ダウンが予期されるのはいつか、データベースでどのプロセスの開始が必要であるか（リスナー、名称／ＬＤＡＰサーバ等）、および、これらプロセスの開始に続いて必要となるシーケンスを定義してよい。このような手順は、サイトによって、またはアプリケーションによって異なりうるので、ＳＯＰ形式で文書化してそのサイトで稼動する全てのＤＢＡにより遵守される必要がある。このようなＳＯＰに基づいて、回復アクションによりデータベースおよび任意の関連プロセスの再開が試みられてよい。
【００６０】
同様に、本発明の他の実施形態において、回復アクションＳＯＰを稼動させて、ロックコンフリクト（デッドロックまたはブロック化されたロック等）、スペース（スペースの欠如等）エラーよびセグメントエラーを解決する。回復タスクの別の側面は、過度の応答またはアクセス時間の解決である。ユーザ応答時間または処理キューが一定の閾値を超えた時点で、回復タスクを開始してこの問題を解決してよい。夜間のデータロードプロセスが、入力されるデータストリームにおける多すぎるデータエラーによりアボートすること（例えば、重複レコードまたは迷子になったレコード（orphaned record）によって）、または、夜間のデータロードプロセスが通常より長く稼動しているせいで、次のジョブウィンドウに入ってしまっていること（例えば、予めスケジュールされたバックアップにより、両方のジョブが遅く動いて始業時間帯にまでずれ込んだ等）が、回復タスクＳＯＰにより解決されうるタイミングトラブルの例である。
【００６１】
本発明の一実施形態によると、アプリケーションプログラミングインタフェース（ＡＰＩ）は、ＳＯＰモジュール１００内で、または企業内の他のサードパーティアプリケーション（Ｋｉｎｔａｎａ、ＡｕｔｏＳｙｓ、ｃｒｏｎ等）により、標準ＡＰＩシンタックスを介して呼び出されうる。例えば、ＳＯＰ実行時に、ＳＯＰの名称は、（ＡＰＩ名で）称され、呼び出しとともに適切なパラメータが渡される。呼び出すユーザネームが（ＵＮＩＸ（登録商標）およびウィンドウズ（登録商標）上のみにおいて）予め権限を与えられたオペレーティングシステム群の一部でない限り、任意のＳＯＰ  ＡＰＩ呼び出しは、有効なユーザネーム／パスワードを要求することができる。このような場合において、パスワードは期待できないが、確認および特権検証にはユーザネームは依然必要である。
【００６２】
図３および４は、データベース管理の例示的プロセスの実装方法を示す。以下の記載において、フローチャート図の各ブロック、および、フローチャート図のブロックの組み合わせは、コンピュータプログラム命令により実装されうる。これらコンピュータプログラム命令は、コンピュータまたは他のプログラム可能な装置上にロードされて機械を生成することで、コンピュータまたは他のプログラム可能な装置上で実行される命令が、フローチャートのブロック（１または複数）が示す機能を実装する手段を作成してよい。これらコンピュータプログラム命令は、コンピュータまたは他のプログラム可能な装置を特定の方法で機能させうるコンピュータ読み取り可能なメモリに格納されることで、コンピュータ読み取り可能なメモリに格納されている命令が、フローチャートブロック（１または複数）に示す機能を実装する命令手段を含む製品を生成してよい。コンピュータプログラム命令は、コンピュータまたは他のプログラム可能な装置上にロードされることで、一連の動作ステップをコンピュータで、または他のプログラム可能な装置上で行い、コンピュータまたは他のプログラム可能な装置上で実行される命令がフローチャートブロック（１または複数）に示す機能を実装するステップを提供する。
【００６３】
このようにして、フローチャート図のブロックは、示された機能およびステップの組み合わせを実行して示された機能を行う手段の組み合わせをサポートする。フローチャート図の各ブロック、およびフローチャート図のブロックの組み合わせが、示された機能またはステップを行う特定用途のハードウェアベースのコンピュータシステム、または特定用途のハードウェアおよびコンピュータ命令の組み合わせにより実装されうることも理解されよう。
【００６４】
図３Ａおよび３Ｂは、自動化された標準操作手順を用いるデータベース管理方法の一実施形態を示すフローチャートである。プロセスは３０５から、１以上のＳＯＰの作成３１０を行うことから始まる。各ＳＯＰに関連付けられうるのは、１以上のタスクレシピである。タスクレシピは、各ＳＯＰの機能のユーザフレンドリで自然な言語記述である。ＳＯＰのクリエータ、または幾らかの場合におけるエディタは、ＳＯＰが利用されうるデータベース環境、および該ＳＯＰと互換性のある、またはありうる他のＳＯＰを特定する。ひとたび作成されると、各ＳＯＰおよび関連付けられたタスクレシピが３２０でメモリ資源に格納される。本発明の一実施形態によると、ＳＯＰレポジトリおよびとりわけタスクレシピレポジトリを収容するメモリ資源が、対象データベースおよびＳＯＰモジュールから分離される。
【００６５】
本発明の一実施形態によると、ＳＯＰの作成および格納が続行しており、さらなるノウハウを得、および／または他のデータベース環境を考慮することで、新しい進化したＳＯＰをレポジトリに追加する。このようにしてレポジトリにアクセスしてタスク要求またはタスク応答を作成するＤＢＡは、ベストプラクティスを多数提供する複数のＳＯＰからの選択を行えるようになる。
【００６６】
ＳＯＰレポジトリが成長するにつれ、ＳＯＰモジュール１００の管理の下、各データベースの状態情報が３２５で監視される。各データベースからの状態情報は、３３０で定期的に収集され、メモリ資源１６０に格納される。この収集された状態情報は、本発明の一実施形態によると、本明細書で開示する様々な数理技術を利用して、ＤＢＡが構築する規則セットに基づいて分析される。各規則セットは、ＳＯＰモジュールからの応答をトリガするデータベース状態情報のパラメータまたは該情報の差分（delta）を決定する。状態情報の分析中に、警告を生成するか否かを決定する規則セットに基づいてクエリ３４０を配す。該クエリへの応答が否定的であった場合、収集エンジン２１０は監視を続けて、データベース状態情報を収集および分析する。
【００６７】
クエリ３４０への応答が肯定的であった場合、管理エンジン２２０は、警告発行という応答をする。規則セットの少なくとも１つに基づいて、管理エンジンの制御モジュール２７０およびスケジュールモジュール２６０は、３５０で、生成された警告に関連付けられた自動タスク応答があるか否か確かめる。応答が否定的であり、自動応答ができない場合、３５５でメッセージをＤＢＡに送り、該ＤＢＡに対して、自動応答ができない状況が起こっている旨警告を発することで、プロセス３９５を終了する。
【００６８】
しかし、警告に関連付けられたタスク応答がある場合、３６０でタスクを管理エンジン２２０で開始して、問題に対処する。応答と関連付けられたＳＯＰが、３７０でメモリ資源１６０から取得され、その後３８０で、対象データベース上で実行される。ＳＯＰの実行中またはそれに続いて、方法は、状態情報の収集および分析の監視に戻って、応答の有効性を確認する。応答が問題を軽減するのに有効であったという仮定のもとに、次の状態情報の収集および分析により、発行された警告が削除され、応答成功が示される。
【００６９】
図４Ａおよび４Ｂは、受信されたタスク要求に応じて標準操作手順を用いるデータベース管理方法の別の実施形態を示すフローチャートである。前述の方法同様、ＤＢＡは３１０で複数のデータベース管理タスクに対処するＳＯＰを作成する。作成されたＳＯＰ各々は、４１０で、１以上のタスクレシピと関連付けられ、１以上のＳＯＰ各々は他のＳＯＰとリンクされてよい。ＳＯＰは本質的に普遍的であっても、特定のタイプのデータベース、プラットフォーム、または環境専用であってもよい。
【００７０】
ひとたび作成されると、ＳＯＰは３２０で、ＳＯＰ／タスクレシピレポジトリを作成するメモリ資源１６０に格納される。メモリ資源１６０は、多数のＤＢＡインタフェース１３０からアクセス可能なように構成され配置される（ネットワークされる）。このようにしてレポジトリは、ＤＢＡが継続的におよび効率的に複数のデータベース１２０を管理できるような集中型知識源として機能する。
【００７１】
本発明の一実施形態によると、ＤＢＡは、ＤＢＡインタフェース１３０を利用して、１以上のデータベース１２０に対してタスク要求を開始する。４２０でタスク要求を受信すると、ＳＯＰモジュール１００は要求をパーズして、４３０で各部分を１以上のタスクレシピと関連付ける。その後、４４０で各タスクレシピとともに特定されたＳＯＰが４５０でメモリ資源１６０から取得される。管理エンジン２２０は、その後、対象データベース環境ポリシーおよび要求されたタスクに基づいてＳＯＰを優先してスケジュールすることができる。ＳＯＰは互いにリンクされる、および／またはＳＯＰモジュール１００／開始ＤＢＡにより別個に管理されうる。
【００７２】
ひとたび取得およびスケジュールされると、４６０で、ＳＯＰがデータベースで実行される。再度、収集エンジン２１０は４７０でデータベース状態情報を監視する。データベースに関する情報が、４７５で収集され、４８０で分析されて、実行されたＳＯＰがタスク要求を満たすか否かを４８５で確認する。分析により、実行が成功して、タスク要求が満たされたことが明らかになると、４９５でプロセス終了する。
【００７３】
クエリ４８５により、スケジュールされたＳＯＰの実行がタスク要求に対処しなかったことが明らかになると、メッセージを生成して、要求しているＤＢＡに対して送信して、４９０で失敗を通知する。この後、４９５でプロセス終了する。本発明の別の実施形態においては、さらなるクエリを、プロセス終了４９５の前に介在させて、失敗したタスク要求の結果であるデータベースの状態情報が、自動タスク応答により対処可能な状況を示しているか否かを尋ねる。対処できるということであれば、自動タスク応答を生成、実行して、データベースを所望の構成中に配置する。
【００７４】
実際、ＤＢＡにより手動で要求され管理されるタスク要求は、自動タスク応答と協同してよい。当業者であれば理解するように、ＳＯＰモジュール１００の監視、収集、および分析機能、および、ＤＢＡにより又はＳＯＰモジュール自身により生成されるタスク要求にＳＯＰモジュールが自動且つ手動で応答する能力は、多種多様なデータベースを管理するための非常にロバスト且つ柔軟な手段の働きを助ける。
【００７５】
本発明を、ある程度具体的に記載および図示してきたが、本開示は純粋に例示目的であり、当業者であれば本発明の精神および範囲を逸脱せずに具体的な部分の組み合わせ且つ配置について幾多もの変更例が可能であることを理解されたい。
【００７６】
同様に、モジュール、管理装置、機能、システム、エンジン、層、フィーチャ、属性、方法、および他の側面につけた特定の名称およびその部分は、必須または重要ではなく、本発明を実装する機構またはそのフィーチャは異なる名称、部分、および／または形式を有してよい。さらに当業者には明らかなように、モジュール、管理装置、機能、システム、エンジン、層、フィーチャ、属性、方法、および本発明の他の側面は、ソフトウェア、ハードウェア、ファームウェア、またはこれら３つの任意の組み合わせにより実装できる。もちろん、本発明の１つのコンポーネントがソフトウェアとして実装される場合、そのコンポーネントはスクリプト、スタンドアロン型プログラム、大きなプログラムの一部、複数の別個のスクリプト、および／または複数のプログラム、静的または動的にリンクされたライブラリ、カーネル搭載可能なモジュール、デバイスドライバとして、および／または、現在または未来のコンピュータプログラミング分野の当業者には公知の全て方法および任意の他の方法で実装されてよい。さらには、本発明を特定のプログラミング言語による実装に限定する意図はなく、また、特定のオペレーティングシステムまたは環境での実装に限定する意図もない。このように、本発明の開示は、以下の請求項に述べる本発明の範囲の例示を目的としており、限定的ではない。
【図１】
2009543226.tif 000002
【図２】
2009543226.tif 000003
【図３Ａ】
2009543226.tif 000004
【図３Ｂ】
2009543226.tif 000005
【図４Ａ】
2009543226.tif 000006
【図４Ｂ】
2009543226.tif 000007
【手続補正書】
【提出日】平成21年4月3日(2009.4.3)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータに実装され、データベース環境を管理する方法であって、
前記データベース環境についての状態情報を監視する段階と、
前記データベース環境についての状態情報を収集する段階と、
収集された前記状態情報が、予め定められた規則セットと合致しているかを判断し、前記規則セットと合致した、収集された状態情報に応じて、応答タスク要求を自動的に開始する段階と、
前記データベース環境について収集された状態情報に基づいて前記応答タスク要求を受信する段階と、
前記データベース環境に対しての外部で開始されたタスク要求を受信する段階と、
受信した、前記応答タスク要求及び外部で開始された前記タスク要求に基づいて複数のデータベース標準操作手順（ＳＯＰ）のうち少なくとも１つを記憶媒体から取得する段階と、
前記複数のＳＯＰの各ＳＯＰに優先順位を設け、優先順位を設けられた複数のＳＯＰ及び／又はタスク要求間に存在する衝突に応じて、予め構築された基準に基づいて前記衝突を解決する段階と、
前記データベース環境において、前記複数のＳＯＰの少なくとも１つを実行する段階と、
前記データベース環境についての前記複数のＳＯＰの少なくとも１つの実行が、関連したタスク要求に対処するかどうかを判断する段階とを備え、
それぞれの関連したＳＯＰは、前記データベース環境の特定の状態に対処すること又は前記データベース環境内の要求されたタスクを実行する手順の定義をし、データベースタイプに関連付けられており、
ＳＯＰに関連付けられた各データベースタイプは、さらに、データベース環境ポリシーに関連付けられ、前記データベース環境ポリシーと互換性を有す、
方法。
【請求項２】
前記記憶媒体から取得する段階は、前記複数のＳＯＰのうち少なくとも１つに対応する少なくとも１つのタスクレシピの取得を含む、請求項１に記載の方法。
【請求項３】
前記応答タスク要求は、自動的に生成される、請求項１に記載の方法。
【請求項４】
前記少なくとも１つのＳＯＰの実行に関するメタデータが、ＳＯＰの実行に先立って、及びＳＯＰの実行中に、収集される、請求項１に記載の方法。
【請求項５】
前記少なくとも１つのＳＯＰは、前記応答タスク要求に基づいて少なくとも１つの別のＳＯＰとリンクされる、請求項１に記載の方法。
【請求項６】
ＳＯＰの作成および修正は、権限のあるデータベース管理者に限られる、請求項１に記載の方法。
【請求項７】
前記少なくとも１つのＳＯＰは、データベースバックアップ、データベースクローニング、データベースヘルスチェック実行、データベースメモリ資源スペース管理、データベース合体、分割されたデータベースセグメントの再構築、データベースルート原因分析の実行、データベース最適化統計データ分析、データベースパッチング、データベースアップグレード、データマイグレーション、およびデータベースサーバマイグレーションからなるリストから選択されたデータベース管理タスクを行う、請求項１に記載の方法。
【請求項８】
収集された状態情報を分析することで、予め定義された規則セットに基づいて前記データベース環境が課された動作を行えないと判断する段階をさらに備える、請求項１に記載の方法。
【請求項９】
前記少なくとも１つのＳＯＰは、前記データベース環境が課された動作を行えないことを修正する回復ＳＯＰである、請求項８に記載の方法。
【請求項１０】
前記データベース環境が課された動作を行えないという判断に呼応して、警告を作成する段階を備える、請求項８に記載の方法。
【請求項１１】
前記収集された状態情報を分析する段階は、ファジー論理、直線回帰、比率モデルまたは待ち行列、を含む数理モデルを利用する、請求項８に記載の方法。
【請求項１２】
第１のＳＯＰサブセットを第２のＳＯＰサブセットにリンクさせて前記応答タスク要求を行う段階をさらに備える、請求項１に記載の方法。
【請求項１３】
前記少なくとも１つのＳＯＰは、前記データベース環境について予め定められた状態情報に基づいて、自動的に前記データベース環境上で実行される、請求項１に記載の方法。
【請求項１４】
データベース管理者は、リアルタイムに前記データベース環境における前記少なくとも１つのＳＯＰの実行を監視でき、必要に応じて前記ＳＯＰの実行に手動で介入できる、請求項１に記載の方法。
【請求項１５】
監視されたデータベース環境状態情報および前記データベース環境上のＳＯＰの実行のオーディットトレイルを生成する段階をさらに備える、請求項１に記載の方法。
【請求項１６】
コンピュータにより実行可能な命令のプログラムであって、前記プログラムは、データベース環境管理用プログラムコードを複数含み、前記コンピュータ上で実行されたとき、請求項１から１５のいずれかに記載の方法を前記コンピュータに実行させる、プログラム。
【請求項１７】
データベース環境を管理するコンピュータシステムであって、
前記コンピュータシステム上で実行されたとき、請求項１から１５のいずれかに記載の方法をコンピュータシステムに実行させるソフトウェアを含む、コンピュータシステム。
【国際調査報告】
2009543226.tif 000008