OLTPOnLineTransactionProcessingデータベースサーバとOLAPOnLineAnalyticsProcessingデータベースサーバの両方に対するアクセスを提供するコンピュータシステムであって、クエリを受け取って、aクライアントアプリケーションの動作モードと、b前記OLAPデータベースサーバの同期状態とに従って前記クエリを前記OLTPデータベースサーバまたは前記OLAPデータベースサーバにリダイレクトするためのクライアントアプリケーションであって、前記動作モードが読取専用動作以外であるか、または、前記同期状態が未同期である場合には、前記クエリを前記OLTPデータベースサーバにリダイレクトし、前記動作モードが読取専用動作であり、かつ、前記同期状態が同期済みである場合には、前記クエリを前記OLAPデータベースサーバにリダイレクトする、クライアントアプリケーションと、OLTPアダプタおよびOLAPアダプタとを備えるOLTPアプリケーションサーバであって、前記OLAPアダプタはマッピングコンポーネントを有し、該マッピングコンポーネントはOLTPのセマンティクスおよびOLAPのセマンティクスの間でデータをマッピングするように適合されている、OLTPアプリケーションサーバと、を備えたことを特徴とするコンピュータシステム。前記OLAPアダプタが、前記OLTPのセマンティクスから前記OLAPのセマンティクスへ前記クエリをマッピングすることを特徴とする請求項1に記載のコンピュータシステム。前記OLAPアダプタが、前記OLTPのセマンティクスから前記OLAPのセマンティクスへ前記クエリの結果をマッピングすることを特徴とする請求項1に記載のコンピュータシステム。前記OLTPデータベースサーバ側に格納されるバージョンインジケータであって、前記OLTPデータベースサーバと前記OLAPデータベースサーバの間で最後に完了した同期を示すバージョンインジケータをさらに備えたことを特徴とする請求項1に記載のコンピュータシステム。前記OLTPアプリケーションサーバが前記バージョンインジケータを前記クライアントアプリケーションのセッション状態にコピーし、および前記OLTPデータベースサーバ側に格納された前記バージョンインジケータが、前記クライアントアプリケーション内の前記バージョンインジケータのコピーに対して変化したときに、前記クライアントアプリケーションが、前記クエリを前記OLAPデータベースサーバにリダイレクトすることを特徴とする請求項4に記載のコンピュータシステム。OLTPOnLineTransactionProcessingデータベースサーバとOLAPOnLineAnalyticsProcessingデータベースサーバの両方に対するアクセスを提供するコンピュータ実施方法であって、クライアントアプリケーションにおいて、クエリを受け取って、a前記クライアントアプリケーションの動作モードと、b前記OLAPデータベースサーバの同期状態とに従って前記クエリを前記OLTPデータベースサーバまたは前記OLAPデータベースサーバにリダイレクトするステップであって、前記動作モードが読取専用動作以外であるか、または、前記同期状態が未同期である場合には、前記クエリを前記OLTPデータベースサーバにリダイレクトし、前記動作モードが読取専用動作であり、かつ、前記同期状態が同期済みである場合には、前記クエリを前記OLAPデータベースサーバにリダイレクトするステップと、OLTPのセマンティクスとOLAPのセマンティクスの間でデータをマッピングするステップとを含むことを特徴とするコンピュータ実施方法。前記マッピングするステップが、前記OLTPのセマンティクスから前記OLAPのセマンティクスへ前記クエリをマッピングするステップを含むことを特徴とする請求項6に記載の方法。前記マッピングするステップが、前記OLTPのセマンティクスから前記OLAPのセマンティクスへ前記クエリの結果をマッピングするステップを含むことを特徴とする請求項6に記載の方法。前記OLTPデータベースサーバと前記OLAPデータベースサーバの間で最後に完了した同期を指示するステップをさらに含むことを特徴とする請求項6に記載の方法。前記指示するステップが、バージョンインジケータを前記OLTPデータベースサーバ側に格納するステップを含み、前記バージョンインジケータを前記クライアントアプリケーションのセッション状態にコピーするステップと、前記OLTPデータベースサーバ側で格納した前記バージョンインジケータが、前記クライアントアプリケーション内の前記バージョンインジケータのコピーに対して変化したときに、前記クエリを前記OLAPデータベースサーバにリダイレクトするステップと、をさらに含むことを特徴とする請求項9に記載の方法。OLTPOnLineTransactionProcessingデータベースサーバとOLAPOnLineAnalyticsProcessingデータベースサーバの両方に対するアクセスを提供するコンピュータプログラム製品であって、クライアントアプリケーションにおいてクエリを受け取って、a前記クライアントアプリケーションの動作モードと、b前記OLAPデータベースサーバの同期状態とに従って前記クエリを前記OLTPデータベースサーバまたは前記OLAPデータベースサーバにリダイレクトし、前記動作モードが読取専用動作以外であるか、または、前記同期状態が未同期である場合には、前記クエリを前記OLTPデータベースサーバにリダイレクトし、前記動作モードが読取専用動作であり、かつ、前記同期状態が同期済みである場合には、前記クエリを前記OLAPデータベースサーバにリダイレクトするように構成したコンピュータ読取可能なプログラムコードと、OLTPのセマンティクスとOLAPのセマンティクスの間でデータをマッピングするように構成したコンピュータ読取可能なプログラムコードと、を含むコンピュータ読取可能なプログラムコードを具体化したコンピュータ読取可能記憶媒体を備えることを特徴とするコンピュータプログラム製品。大量のトランザクション上のニーズを有するアプリケーションサーバからOLAP環境とOLTP環境の両方を利用するニーズがある。かかるアプリケーションサーバの例として、オブジェクトモデリング環境をアプリケーション開発者に提供するENOVIAV6がある。ENOVIAV6オブジェクトモデルは、オーサリング操作をサポートし、並列度の高い複数ユーザ環境を前提とするので、トランザクションとOLTPに関して強いニーズを有する。しかし、ENOVIAV6での多くの操作は読取専用であり、トランザクションセマンティクスを必要としないので、アプリケーションをOLAPデータベースサーバによってより効率的に扱うことができる。アプリケーション開発者が1か所を参照するだけで作業し、アプリケーションサーバにどちらのデータベースサーバが所与の操作に対して適切かを判断させることが非常に望ましい。しかし、OLAPデータベースとOLTPデータベースの両方に対して透過的なアクセスを提供するプログラミングフレームワークアプリケーションサーバは知られていない。解決すべき2つの問題がある。第1の問題は、OLAPデータベースサーバとOLTPデータベースサーバにおけるデータのセマンティックレベルが異なりうるということである。OLAPデータはOLTPデータから派生するが、OLAPデータベースにデータ投入する抽出/変換/ロードELTプロセスによって幾分変更されるのが一般的である。第2の問題は、OLAPデータベースシステムにアクセスするとき、OLTPデータベース側で加えられた任意の変更がOLAPデータベースサーバと同期されていることをフレームワークすなわち、アプリケーションサーバが保証しなければならないことである。この保証は、アプリケーションが両方のデータベースサーバ環境に跨って一貫したデータのビューを有することを確保するために必要である。本発明は、当分野の上述の欠点とニーズを解決するものである。具体的には、本発明の諸実施形態では以下を提供する。1OLAPデータベースシステムとOLTPデータベースシステムを統合してOLTPアプリケーションをサポートすること2OLAPのセマンティクスとOLTPのセマンティクスの間でデータを変換すること3OLTPのバージョンスタンプの管理に基づいて、参照するシステムOLAPまたはOLTPの何れかを判定すること統合なし1実施形態では、コンピュータシステムが、OLTPデータベースサーバとOLAPデータベースサーバの両方に対するアクセスを提供する。コンピュータシステムは、クライアントアプリケーションとOLTPアプリケーションサーバを備える。クライアントアプリケーションは、クエリを受け取るように適合され、aクライアントアプリケーションの動作モード読取または更新とbOLAPデータベースサーバの同期状態に従い、当該クエリをOLTPデータベースサーバまたはOLAPデータベースサーバにリダイレクトする。クライアントアプリケーションは、動作モードが読取専用動作以外であるか、または、同期状態が未同期である場合はOLTPデータベースサーバにクエリをリダイレクトし、動作モードが読取専用動作であり同期状態が同期済みである場合はOLAPデータベースサーバにクエリをリダイレクトする。OLTPアプリケーションサーバ例えば、ENOVIAV6はOLTPアダプタとOLAPアダプタを備える。OLAPアダプタは、OLTPのセマンティクスとOLAPのセマンティクスの間でデータをマッピングするよう適合させたマッピングコンポーネントを有する。諸実施形態では、OLAPアダプタはクエリをOLTPのセマンティクスからOLAPのセマンティクスにマッピングする。さらに、OLAPアダプタはクエリの結果をOLAPのセマンティクスからOLTPのセマンティクスにマッピングしてもよい。諸実施形態では、OLTPデータベースサーバ側に格納したバージョンインジケータをさらに備えてもよい。バージョンインジケータは、OLTPデータベースサーバとOLAPデータベースサーバの間で最後に完了した同期を示すものである。OLTPアプリケーションサーバは、バージョンインジケータをクライアントアプリケーションのセッション状態にコピーしてもよく、クライアントアプリケーションは、OLTPデータベースサーバ側に格納したバージョンインジケータがクライアントアプリケーション内のバージョンインジケータのコピーに対して変更されたときに、クエリをOLAPデータベースサーバにリダイレクトする。他の諸実施形態は、以上の動作および機能を実行するコンピュータ実行型の方法および/またはコンピュータプログラム製品の形である。以上のことは、添付図面で図示したように、以下の本発明の実施例のより具体的な記載から明らかであろう。添付図面においては、様々な図全体にわたって、同様な参照番号により同一の部分を参照する。本発明の諸実施形態の説明を重視し、図面は必ずしも正確な縮尺では描かれていない。以下で、本発明の実施例を説明する。本明細書で引用した全ての特許、公開特許出願、および参照の教示事項は、参照により全体として組み込まれる。図1では、本発明を具体化するコンピュータデータベースシステム、装置および方法108を示す。システム100は、OLTPデータベースシステム30とOLAPデータベースシステム40を備える。OLAPデータベースシステム40は一般に、当分野で一般的かつOLAPクライアント50bがアクセス可能なように構成される。さらに、以下で明らかになるように、OLTPデータベースシステム30とアプリケーションサーバ60はOLAPデータベース40にアクセスし、データをOLAPデータベース40と同期する。アプリケーションサーバ60はOLTPクライアント50aをサポートする。アプリケーションサーバ60はデータベースアダプタアブストラクタdatabaseadapterabstractor13、OLTPアダプタ15、およびOLAPアダプタ17から成る。当分野で一般的な技法を用いて、データベースアダプタ13はOLTPデータベース30の動作の情報を抽象化し、OLTPクライアント50aをその実装の詳細から分離する役割を果たす。OLTPアダプタ15は、当分野で公知な技法を用いてOLTPデータベースインタフェースを実装する。すなわち、クエリの要求と結果をOLTPクライアント50aとOLTPデータベースサーバ30の間で変換する。OLAPアダプタ17はOLAPデータベース40のインタフェースを実装する。OLAPアダプタ17は、OLAPのデータをOLTPデータベース30のセマンティクスにマッピングするマッパ19を使用する。マッパ19はまた、OLTPのデータをOLAPデータベース40のセマンティクスにマッピングする。OLTPクライアント50aのクエリと動作に応答して、デフォルトで、アプリケーションサーバ60は、OLAPアダプタ17を介してOLTPクライアントアプリケーション50aをOLAPデータベースシステム40に誘導する。しかし、クライアント50aが更新動作を行うと、アプリケーショシサーバ60はクライアント50aをOLTPデータベースシステム30へOLTPアダプタ15を介してリダイレクトし、クライアント50aは、1クライアント50aの更新動作が完了し、2変更がOLTPデータベース30に書き込まれ、3OLTPデータベースシステム30がOLTPデータベース40と同期されるまで、OLTPデータベースシステム30に留まる。実際には、この時間間隔は数秒から数分の間であってもよい。最終的には、システム100の全ての散発的な使用閲覧、参照、等がOLAPデータベースシステム40によってサポートされる。OLTPデータベースシステム30は、オーサリングまたは非読取専用のセッションが開始し、その後可能な限り長く必要とされるだけである。データベースのセマンティクスが異なることの問題には2つの要因がある。第1の要因は、OLAPデータベースサーバ40に格納される、取り出しデータが、OLTPデータベースシステム30内で作成された元のデータと1対1にマッピング可能でなければならないということである。すなわち、OLTPデータベース40に格納した情報を取得して、当該情報を元のOLTPデータベース30の表現に変換し戻すことができなければならない。次いで、アプリケーションサーバ60は対応する、または、協調するコネクタを有する。このコネクタは、OLTPデータベース30のデータ定義をベースラインとして用いて、OLAPデータベース40の双方向マッピングを理解しサポートすることができる。このコネクタは、マッパ19であり、アプリケーションサーバ60を起点とするクエリをOLTPデータベースシステム30からOLAPデータベースシステム40へリダイレクトするために用いられる。マッパ19は、クエリの記述をOLAPデータベースシステム40にマッピングし、クエリの結果をOLTPデータベース30の定義にマッピングする。これにより、アプリケーションサーバ60は、OLAPデータベースシステム40が使用されているかOLTPデータベースシステム30が使用されているかに関わらず、同一の結果をOLTPクライアントアプリケーション50aに提示することができる。第2の要因、すなわち、OLAPデータベースシステム40とOLTPデータベースシステム30の何れにいつアクセスするかを知ることにおいては、アプリケーションサーバ60が、1実行されている動作モード例えば、読取または更新を理解し、2クライアント50aの最新の更新がいつOLTPデータベース30の環境に提供され、以降のクエリに利用可能となるかを知る必要がある。これらの要件のうち第1のものは一見、幾分つまらないもののようにも見える。なぜならば、アプリケーションサーバ60は動作モードをその公開APIの一部として知っているからである。第2の要件については、OLTPデータベース30とOLAPデータベース40の間で最後に完了した同期を表現するためのバージョンスタンプ21をOLTPデータストア30上で提供することにより、サポートすることができる。諸実施形態では、バージョンスタンプ21を幾つかの方法、例えば、整数、タイムスタンプ、または他の指標で実装してもよい。トランザクションがOLTPデータベース30に対して終了すると、アプリケーションサーバ60はバージョンスタンプ21をOLTPデータベース30から、トランザクションを実行したクライアント50aのセッション状態にコピーする。以降のクライアント50aの各操作の開始時に、このバージョンスタンプのクライアントコピー21’を、OLTPデータストア30に格納した現在のバージョンスタンプ21に対してチェックする。OLTPデータストア30のバージョンスタンプ21が変更されると、同期が完了し、クライアント50aをOLAPデータベースサーバ40にリダイレクトできることとなる。1実施形態では、同期は実際にはバックグラウンドプロセスによって実現される。このバックグラウンドプロセスは、数秒ごとにポーリングしてOLAPデータベース40の環境に提供すべき変更を探す。変更が必要であることをバックグランドプロセスが検出すると、バックグラウンドプロセスは、完了時にOLTPボールトvault30上でバージョンスタンプ21を増加させる。さらに詳述すると、アプリケーションサーバ60がデータを複数の記憶域またはボールトに分割するように選択してもよい。この場合、同期およびクライアント50aのリダイレクションをボールトレベルで実行してもよい。例えば、或るボールトが作業中WIPWorkInProcessのデータに使用され別のボールトが供給側のデータに使用されている場合、WIPのボールトを更新しても、供給側のボールトへのアクセスがOLTPデータベースサーバ30へリダイレクトされることはない。対話的アプリケーションの負荷をOLAPデータベース40のサーバに移すと、様々な効率化を生み出す。第1に、OLTPデータベース30の環境の負荷を軽減しつつ、より多くの作業をOLAPデータベース40の環境に移すと、典型的なIT環境で作業負荷が平準化される。第2に、データベースアプリケーションに対して効率的で安価な代替手段が提供され、データベース層の水平展開が可能となる。最後に、OLAPデータベースシステム40が現代の非関係記憶技術を使用する場合に、これらのシステムがしばしば読取専用動作向けの関係エンジンよりもかなり高いレベルで動作するので、アプリケーションのスケーラビリティを急激に増大させることができる。図2および図3は、本発明のシステム100およびアプリケーションサーバ60の付随的な動作をさらに説明するものである。データベースの対話databaseinteractionを開始するためのクライアントアプリケーション50aの要求またはコマンドに応答して、アプリケーションサーバ60は25でトランザクションを開始する。次にステップ27で、アプリケーションサーバ60は、クライアントアプリケーション50aの動作モードが読取専用動作以外例えば、更新モードか否かを判定する。ステップ27で動作モードが更新かまたは非読取専用である場合は、ステップ31で、OLTPデータベース30の使用を指示し、動作処理が通常通りすなわち、OLTPアダプタ15を介したOLTPデータベースのインタフェース処理によって継続する。ステップ27で動作モードが更新または非読取専用でない場合は、ステップ28で、OLAPデータベースサーバ40の同期状態を決定する。ステップ28で同期を待つ必要がない場合、すなわち、状態が同期済みである場合は、ステップ34でOLAPデータベース40の使用を指示する。そして、OLAPアダプタ17がOLAPデータベース40とのインタフェースを処理しマッパ19がOLAPデータベース40とOLTPデータベース30のセマンティクスの間でマッピングすることによって、動作処理が継続する。ステップ28の同期状態が未同期すなわち、同期を待機している場合は、ステップ29でバージョンインジケータ21をチェックする。OLTPデータベースストア30側に格納したバージョンスタンプ21が対象のクライアントアプリケーション50aのバージョンスタンプ21’のコピーと異なる場合は、同期が完了しており、ステップ34でクライアントアプリケーション50aをOLAPデータベースサーバ40にリダイレクトする。その後、OLAPアダプタ17がOLAPデータベース40とのインタフェースを提供しマッパ19がOLTPデータベース30とOLAPデータベース40のセマンティクスの間でマッピングすることにより動作が継続する。ステップ29でOLTPデータベース30のサーバに格納したバージョンスタンプ21がクライアントアプリケーション50aのバージョンスタンプ21’のコピーと同一であると判定された場合は、ステップ31でクライアントアプリケーション50aをOLTPデータベース30のサーバに誘導する。その後、上述のように動作が行われる。図3を参照すると、クライアントアプリケーション50aが所与のトランザクション35をコミットした後、システム100またはアプリケーションサーバ60は以下のようにデータベースの対話を終了する。ステップ36で、アプリケーションサーバ60が動作モード例えば、読取または更新をチェックする。ステップ36で動作モードが読取専用であると判定された場合は、ステップ38でデータベースの対話が終了する。そうでない場合は、ステップ37で対象のデータをOLTPデータベース30にコミットする。次に、上述のバックグラウンドプロセスが変更をOLAPデータベース40に提供同期し、同期が完了したときにOLTPデータベースサーバ30のバージョンスタンプ21を増加更新させる。次に、ステップ39で現在のOLTPデータベースのバージョンスタンプ21をOLTPクライアント50aのセッション状態にキャッシュし、データベースの対話または処理が終了する。図4は、本発明を実装できるコンピュータネットワークまたはそれと同様なデジタル処理環境を示す。クライアントコンピュータ複数可または装置50クライアント50a、bを含むおよびサーバコンピュータ複数可60は、アプリケーションプログラム等を実行する処理装置、記憶装置、および入出力装置を提供する。クライアントコンピュータ複数可または装置50を、通信ネットワーク70を介して他のコンピューティング装置に接続することもできる。当該他のコンピューティング装置には、他のクライアント装置またはプロセス50およびサーバコンピュータ複数可60が含まれる。通信ネットワーク70は、リモートアクセスネットワーク、グローバルネットワーク例えば、インターネット、世界規模のコンピュータ集合、ローカルエリアネットワークまたは広域ネットワーク、互いに通信するための各プロトコルTCP/IP、Bluetooth、等を今日では使用するゲートウェイの一部であることができる。他の電子装置またはコンピュータネットワークアーキテクチャも適している。図5は、図4のコンピュータシステム内のコンピュータ例えば、クライアントプロセッサもしくはクライアント装置50またはサーバコンピュータ60の内部構造の図である。各コンピュータ50、60はシステムバス79を含む。ここで、バスとは、コンピュータまたは処理システムのコンポーネント間でのデータ転送に使用される1組のハードウェア線である。バス79は本質的には、要素間での情報の転送を可能とするコンピュータシステムの様々な要素例えば、プロセッサ、ディスク記憶、メモリ、入出力ポート、ネットワークポート、等を接続する共有の管路である。システムバス79には、コンピュータ50、60に対する様々な入出力装置例えば、キーボード、マウス、ディスプレイ、プリンタ、スピーカ、等を接続するための入出力装置インタフェース82が取り付けられている。ネットワークインタフェース86により、コンピュータを、ネットワーク例えば、図4のネットワーク70に取り付けられた他の様々な装置に接続することができる。メモリ90は、本発明の実施形態を実装するために用いるコンピュータソフトウェア命令92およびデータ94例えば、上で詳述した、アプリケーションサーバ60、OLAPアダプタ17、マッパ19、バージョンインジケータ21、および支援コードに対する揮発性記憶を提供する。ディスク記憶95は、本発明の実施形態を実装するために用いるコンピュータソフトウェア命令92およびデータ94に対する不揮発性記憶を提供する。中央演算装置84もシステムバス79に取り付けられ、コンピュータ命令を実行する。1実施形態では、プロセッサルーチン92およびデータ94はコンピュータプログラム製品92は一般的に参照されるである。このコンピュータプログラム製品には、本発明のシステムに対するソフトウェア命令の少なくとも一部を提供するコンピュータ読取可能媒体例えば、1つまたは複数のDVD-ROM、CD-ROM、ディスケット、テープ、等のような取外し可能記憶媒体が含まれる。コンピュータプログラム製品92を当分野で良く知られているように任意の適切なソフトウェアインストール手順でインストールすることができる。別の実施形態では、ソフトウェア命令の少なくとも一部を、ケーブル、通信接続および/または無線接続を介してダウンロードしてもよい。他の実施形態では、本発明のプログラムは、伝播媒体例えば、電波、赤外線波、レーザー波、音波、またはインターネット、もしくは他のネットワーク複数可のようなグローバルネットワークを介して伝播される電波上の伝播信号で具体化されたコンピュータプログラム伝播信号製品107である。かかる搬送媒体または信号は、本発明のルーチンまたはプログラム92に対するソフトウェア命令の少なくとも一部を提供する。代替実施形態では、伝播信号はアナログ搬送波または伝播媒体上で搬送されるデジタル信号である。例えば、伝播信号は、グローバルネットワーク例えば、インターネット、電気通信ネットワーク、または他のネットワーク上で伝播されるデジタル信号であってもよい。1実施形態では、伝播信号は、ある期間に伝播媒体上で送信される信号、例えば、ミリ秒、秒、分、またはそれより長い期間にネットワークを介してパケットで送信された、ソフトウェアアプリケーション向けの命令である。別の実施形態では、コンピュータプログラム製品92のコンピュータ読取可能媒体は伝播媒体であり、コンピュータシステム50は、例えば、コンピュータプログラム伝播信号製品に関して上述したように、当該伝播媒体を受信して当該伝播媒体で具体化された伝播信号を識別することによって、当該伝播媒体を受信し読み取ることができる。一般的に言うと、搬送媒体または過渡キャリアは上述の過渡信号、伝播信号、伝播媒体、記憶媒体、等を包含するものである。本発明を、本発明の実施例を参照して具体的に図示および説明したが、添付の特許請求の範囲によって網羅される本発明の範囲から逸脱しない、形態および細部における様々な変更を当該実施例に加え得ることは当業者には理解されよう。