(57)【要約】【課題】文字列やオブジェクトを数値データと同様に多次元データベースで扱うことが可能な技術を提供する。【解決手段】多次元データベースからデータを取得する多次元データベース処理方法において、多次元データベースを検索する為のＭＤＢ検索要求を生成して多次元データベースからデータを取得するステップと、前記ＭＤＢ検索要求による検索対象のデータに多次元データベース上に存在していないデータが含まれている場合に、そのデータをリレーショナルデータベースから検索する為のＲＤＢ検索要求を生成してリレーショナルデータベースから当該データを取得するステップと、前記ＭＤＢ検索要求により多次元データベースから取得したＭＤＢ検索結果に、前記ＲＤＢ検索要求によりリレーショナルデータベースから取得したＲＤＢ検索結果を埋め込むステップとを有するものである。【選択図】        図１
2004185465.tif 000002
【特許請求の範囲】
【請求項１】
多次元データベースからデータを取得する多次元データベース処理方法において、
多次元データベースを検索する為のＭＤＢ検索要求を生成して多次元データベースからデータを取得するステップと、前記ＭＤＢ検索要求による検索対象のデータに多次元データベース上に存在していないデータが含まれている場合に、そのデータをリレーショナルデータベースから検索する為のＲＤＢ検索要求を生成してリレーショナルデータベースから当該データを取得するステップと、前記ＭＤＢ検索要求により多次元データベースから取得したＭＤＢ検索結果に、前記ＲＤＢ検索要求によりリレーショナルデータベースから取得したＲＤＢ検索結果を埋め込むステップとを有することを特徴とする多次元データベース処理方法。
【請求項２】
リレーショナルデータベースのインターフェイスに合わせて前記ＲＤＢ検索要求を生成することを特徴とする請求項１に記載された多次元データベース処理方法。
【請求項３】
前記ＭＤＢ検索結果中の表示欄のサイズに応じて前記ＲＤＢ検索結果の表示サイズまたは表示位置を変更して埋め込むことを特徴とする請求項１または請求項２のいずれかに記載された多次元データベース処理方法。
【請求項４】
多次元データベースからデータを取得する多次元データベース処理システムにおいて、
多次元データベースを検索する為のＭＤＢ検索要求を生成してサーバ装置へ送信し、サーバ装置からＭＤＢ検索結果を取得するＭＤＢデータ取得処理部と、前記ＭＤＢ検索要求による検索対象のデータに多次元データベース上に存在していないデータが含まれている場合に、そのデータをリレーショナルデータベースから検索する為のＲＤＢ検索要求を生成してサーバ装置へ送信し、サーバ装置からＲＤＢ検索結果を取得するＲＤＢデータ取得処理部と、前記ＭＤＢ検索要求により多次元データベースから取得したＭＤＢ検索結果に、前記ＲＤＢ検索要求によりリレーショナルデータベースから取得したＲＤＢ検索結果を埋め込むデータ埋め込み処理部とを備えるクライアント装置と、
ＭＤＢ検索要求またはＲＤＢ検索要求をクライアント装置から受信して多次元データベースまたはリレーショナルデータベースの検索処理を行い、ＭＤＢ検索結果またはＲＤＢ検索結果をクライアント装置へ送信するサーバ装置とを具備することを特徴とする多次元データベース処理システム。
【請求項５】
多次元データベースからデータを取得する多次元データベース処理システムにおいて、
多次元データベースを検索する為のＭＤＢ検索要求を生成してサーバ装置へ送信し、サーバ装置からＲＤＢ検索結果の埋め込まれたＭＤＢ検索結果を取得するＭＤＢデータ取得処理部を備えるクライアント装置と、
前記ＭＤＢ検索要求による検索対象のデータに多次元データベース上に存在していないデータが含まれている場合に、そのデータをリレーショナルデータベースから検索する為のＲＤＢ検索要求を生成してリレーショナルデータベースから当該データを取得するＲＤＢデータ取得処理部と、前記ＭＤＢ検索要求により多次元データベースから取得したＭＤＢ検索結果に、前記ＲＤＢ検索要求によりリレーショナルデータベースから取得したＲＤＢ検索結果を埋め込んでクライアント装置へ送信するデータ埋め込み処理部とを備えるサーバ装置とを具備することを特徴とする多次元データベース処理システム。
【請求項６】
多次元データベースからデータを取得する多次元データベース処理システムとしてコンピュータを機能させる為のプログラムにおいて、
多次元データベースを検索する為のＭＤＢ検索要求を生成してサーバ装置へ送信し、サーバ装置からＭＤＢ検索結果を取得するＭＤＢデータ取得処理部と、前記ＭＤＢ検索要求による検索対象のデータに多次元データベース上に存在していないデータが含まれている場合に、そのデータをリレーショナルデータベースから検索する為のＲＤＢ検索要求を生成してサーバ装置へ送信し、サーバ装置からＲＤＢ検索結果を取得するＲＤＢデータ取得処理部と、前記ＭＤＢ検索要求により多次元データベースから取得したＭＤＢ検索結果に、前記ＲＤＢ検索要求によりリレーショナルデータベースから取得したＲＤＢ検索結果を埋め込むデータ埋め込み処理部とを備えるクライアント装置と、
ＭＤＢ検索要求またはＲＤＢ検索要求をクライアント装置から受信して多次元データベースまたはリレーショナルデータベースの検索処理を行い、ＭＤＢ検索結果またはＲＤＢ検索結果をクライアント装置へ送信するサーバ装置としてコンピュータを機能させることを特徴とするプログラム。
【請求項７】
多次元データベースからデータを取得する多次元データベース処理システムとしてコンピュータを機能させる為のプログラムにおいて、
多次元データベースを検索する為のＭＤＢ検索要求を生成してサーバ装置へ送信し、サーバ装置からＲＤＢ検索結果の埋め込まれたＭＤＢ検索結果を取得するＭＤＢデータ取得処理部を備えるクライアント装置と、
前記ＭＤＢ検索要求による検索対象のデータに多次元データベース上に存在していないデータが含まれている場合に、そのデータをリレーショナルデータベースから検索する為のＲＤＢ検索要求を生成してリレーショナルデータベースから当該データを取得するＲＤＢデータ取得処理部と、前記ＭＤＢ検索要求により多次元データベースから取得したＭＤＢ検索結果に、前記ＲＤＢ検索要求によりリレーショナルデータベースから取得したＲＤＢ検索結果を埋め込んでクライアント装置へ送信するデータ埋め込み処理部とを備えるサーバ装置としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は多次元データベース（ＭＤＢ）からデータを取得する多次元データベース処理システムに関し、特にリレーショナルデータベース（ＲＤＢ）から取得した値をＭＤＢの検索結果に組み込んで表示する多次元データベース処理システムに適用して有効な技術に関するものである。
【０００２】
【従来の技術】
従来の多次元データベースシステムでは１つのＭＤＢにアクセスし、そのＭＤＢ上に存在するデータを検索することが可能である。更に、ＭＤＢ上にあるデータに関連する詳細データを、ユーザの操作によりＲＤＢから取得し、別ウィンドウに表示するシステムが存在している。また、１つのＭＤＢから別のＭＤＢ上の関連するデータを取得する多次元データベースの検索方法では、あるＭＤＢの検索中に関連データが要求されると、関連データ項目をユーザアプリケーションに送付し、この関連データ項目による関連データ取得要求が発行された場合に、他のＭＤＢにアクセスして、そのスライス処理の結果を関連データとしてユーザアプリケーションに送っている（例えば特許文献１参照）。
【特許文献１】
特開２００１−２４３２４４号公報（第６−８頁、第１１−１４図）
【０００３】
【発明が解決しようとする課題】
上記従来技術ではＭＤＢで文字列やオブジェクトを扱うといった点の配慮がされていない為、ＭＤＢの検索結果を表示している画面上に、それらのデータ表示項目に関連のある文字列やオブジェクトを表示できないといった問題がある。
【０００４】
本発明の目的は上記問題を解決し、文字列やオブジェクトを数値データと同様に多次元データベースで扱うことが可能な技術を提供することにある。
【０００５】
【課題を解決するための手段】
本発明は、多次元データベースからデータを取得する多次元データベース処理システムにおいて、多次元データベースから取得したＭＤＢ検索結果にリレーショナルデータベースから取得したＲＤＢ検索結果を埋め込むものである。
【０００６】
本発明では、多次元データベースから表のデータ出力を要求するユーザ入力を受け付けると、多次元データベースを検索する為のＭＤＢ検索要求を生成して多次元データベースからデータを取得する。
【０００７】
次に、前記ＭＤＢ検索要求による検索の結果、検索対象のデータに多次元データベース上に存在していないデータが含まれているかどうかを調べ、ＮＵＬＬ値等、データが存在していないことを示す情報がＭＤＢ検索結果中に設定されている場合には、そのデータをリレーショナルデータベースから検索する為のＲＤＢ検索要求を生成し、その生成したＲＤＢ検索要求によりリレーショナルデータベースから当該データを取得する。
【０００８】
その際、当該データを格納しているリレーショナルデータベースのインターフェイスに合わせてＲＤＢ検索要求を生成する。例えば、各工場の所在地を示すデータが多次元データベースに存在していない場合、「工場名」及び「所在地」或いはそれに類似した「生産現場名」や「生産場所」等の文字列を項目に含むリレーショナルデータベースがあるかどうかを調べた後、そのリレーショナルデータベースの項目名を用いたＳＱＬ文のＲＤＢ検索要求を生成する。
【０００９】
そして、前記ＭＤＢ検索要求により多次元データベースから取得したＭＤＢ検索結果に、前記ＲＤＢ検索要求によりリレーショナルデータベースから取得したＲＤＢ検索結果を埋め込む。
【００１０】
その際、前記ＭＤＢ検索結果中の表示欄のサイズに応じて前記ＲＤＢ検索結果の表示サイズまたは表示位置を変更して埋め込むものとし、例えばＲＤＢ検索結果として得られた「所在地」を示す文字列の長さが、ＭＤＢ検索結果中の表示欄のサイズを超えている場合には、その文字列の長さを短くして埋め込みを行う。
【００１１】
前記の様に本発明により、ユーザは多次元データベース上にあるデータだけでなく、文字列やオブジェクトや集約関数で表現できない数値データを同一画面上に出力することができる様になる。この結果、従来は数値だけで分析を行っていたが、文字列やオブジェクトや集約関数で表現できない数値データも分析対象として扱うことが可能となる。
【００１２】
以上の様に本発明の多次元データベース処理システムによれば、多次元データベースから取得したＭＤＢ検索結果にリレーショナルデータベースから取得したＲＤＢ検索結果を埋め込むので、文字列やオブジェクトを数値データと同様に多次元データベースで扱うことが可能である。
【００１３】
【発明の実施の形態】
（実施形態１）
以下に多次元データベースから取得したデータに、リレーショナルデータベースから取得したデータを埋め込み、その結果を表示する処理をクライアント側で行う実施形態１の多次元データベース処理システムについて説明する。
【００１４】
図１は本実施形態のＲＤＢから値を取得する処理をクライアント側で行う場合のシステム構成例を示す図である。図１に示す様に本実施形態のクライアント１０１は、ＲＤＢデータ取得処理部１０４と、データ埋め込み処理部１０５と、ＭＤＢデータ取得処理部１０６とを有している。
【００１５】
ＲＤＢデータ取得処理部１０４は、ＭＤＢデータ取得処理部１０６からのＭＤＢ検索要求による検索対象のデータに、ＭＤＢ１１０上に存在していないデータが含まれている場合に、そのデータをＲＤＢから検索する為のＲＤＢ検索要求をＲＤＢのインターフェイスに合わせて生成してサーバ１０７へ送信し、サーバ１０７からＲＤＢ検索結果を取得する処理部である。
【００１６】
データ埋め込み処理部１０５は、前記ＭＤＢ検索要求によりＭＤＢ１１０から取得したＭＤＢ検索結果に、前記ＲＤＢ検索要求によりＲＤＢ１０８から取得したＲＤＢ検索結果を埋め込む処理部であり、前記ＭＤＢ検索結果中の表示欄のサイズに応じて前記ＲＤＢ検索結果の表示サイズまたは表示位置を変更して埋め込みを行う処理部である。ＭＤＢデータ取得処理部１０６は、ＭＤＢ１１０を検索する為のＭＤＢ検索要求を生成してサーバ１０７へ送信し、サーバ１０７からＭＤＢ検索結果を取得する処理部である。
【００１７】
クライアント１０１をＲＤＢデータ取得処理部１０４、データ埋め込み処理部１０５及びＭＤＢデータ取得処理部１０６として機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【００１８】
図１の様に本実施形態の多次元データベース処理システムはクライアント１０１とサーバ１０７からなっている。
【００１９】
クライアント１０１は、ユーザとのインターフェイスとなり、検索したデータを表示するユーザアプリケーション１０２と、ユーザアプリケーション１０２から要求のあったデータを取得するデータ取得装置１０３を有している。データ取得装置１０３は、ＭＤＢ１１０からデータを取得するＭＤＢデータ取得処理部１０６と、ＲＤＢ１０８からデータを取得するＲＤＢデータ取得処理部１０４とＭＤＢ１１０から取得したデータにＲＤＢ１０８から取得したデータを埋め込むデータ埋め込み処理部１０５で構成されている。
【００２０】
サーバ１０７は、通常のデータ検索要求であるＭＤＢ１１０内のデータ検索要求を処理するＯＬＡＰエンジン１０９（Ｏｎ  Ｌｉｎｅ  Ａｎａｌｙｔｉｃａｌ  Ｐｒｏｃｅｓｓｉｎｇエンジン）と、集約されたデータが格納されているＭＤＢ１１０と、文字列データやオブジェクトデータが格納されているＲＤＢ１０８から構成されており、ＭＤＢ検索要求またはＲＤＢ検索要求をクライアント１０１から受信してＭＤＢ１１０またはＲＤＢ１０８の検索処理を行い、ＭＤＢ検索結果またはＲＤＢ検索結果をクライアント１０１へ送信する処理を行う。
【００２１】
図２、図３、図４にＲＤＢ１０８から値を取得する処理をクライアント１０１側で行う場合の処理の流れを示す。
【００２２】
図２は本実施形態のＲＤＢ１０８から所在地を示す値を取得する処理をクライアント１０１側で行う場合の処理の流れを示す図である。図２では、ユーザアプリケーション１０２の操作により行部に“Ａ工場”、“Ｂ工場”、“Ｃ工場”という項目、列部に“生産高”、“販売実績”、“所在地”という項目がある表を表示する表示要求２０１がデータ取得装置１０３で受け付けられた場合を想定している。ＲＤＢ１０８から値を取得する項目はユーザアプリケーション１０２でセルのデータ型が文字列型に設定されている“所在地”である。
【００２３】
まずクライアント１０１のＭＤＢデータ取得処理部１０６は、ＭＤＢデータ取得処理２０２で前記表のデータの表示要求２０１を受け付けると、ＭＤＢ１１０を検索する為のＭＤＢ検索要求をＭＤＢ検索要求送信処理２０３で生成してサーバ１０７のＯＬＡＰエンジン１０９へ送信する。
【００２４】
サーバ１０７のＯＬＡＰエンジン１０９は、前記送信されたＭＤＢ検索要求をＭＤＢ検索処理２０５で受信してＭＤＢ検索を実行し、その結果をクライアント１０１のＭＤＢデータ取得処理部１０６へ返す。
【００２５】
クライアント１０１のＭＤＢデータ取得処理部１０６は、サーバ１０７から送信されたＭＤＢ検索結果をＭＤＢ検索結果受信処理２０４で受信する。ＭＤＢ検索結果受信処理２０４の表にある様に、本実施形態では、“所在地”についてのデータはＭＤＢ１１０上には存在していない。
【００２６】
図３は本実施形態の図２の続きを示す図である。クライアント１０１のＲＤＢデータ取得処理部１０４は、ＲＤＢデータ取得処理３０１でＭＤＢデータ取得処理部１０６からＭＤＢ検索結果を受け取り、データ型判定処理３０２では、その受け取ったＭＤＢ検索結果を参照し、ＭＤＢ検索要求による検索対象のデータにＭＤＢ１１０上に存在していないデータが含まれているかどうかを調べる。
【００２７】
ＭＤＢ検索要求による検索対象のデータにＭＤＢ１１０上に存在していないデータが含まれている場合、すなわち検索した項目の中にセルのデータ型が文字列型に設定されている項目がある場合にはＲＤＢ検索要求送信処理３０３へ進み、そのデータをＲＤＢ１０８から検索する為のＲＤＢ検索要求をＲＤＢ１０８のインターフェイスに合わせて生成してサーバ１０７へ送信する。
【００２８】
前記ＲＤＢ検索要求の生成では、まずサーバ１０７内のＲＤＢ１０８の項目とＭＤＢ検索結果でＮＵＬＬとなっているデータの項目とを比較し、前記ＮＵＬＬの項目と同一または類似する項目がＲＤＢ１０８にあるかどうかを調べる。例えば、各工場の所在地がＮＵＬＬである場合、「工場名」及び「所在地」或いはそれに類似した「生産現場名」や「生産場所」等の文字列がＲＤＢ１０８の項目に含まれているかどうかを調べる。ここでサーバ１０７のＲＤＢ１０８中に該当する項目が含まれていない場合には他のサーバのＲＤＢについて調べるものとしても良い。
【００２９】
次に、当該データを格納しているＲＤＢのインターフェイスに合わせてそのＲＤＢの項目名を用いたＳＱＬ文のＲＤＢ検索要求を生成する。例えば、あるＲＤＢに「生産現場名」や「生産場所」等の項目がある場合、「工場名」及び「所在地」で検索を行う代わりに、「生産現場名」や「生産場所」で検索を行う様にＳＱＬ文のＲＤＢ検索要求を生成する。
【００３０】
サーバ１０７では、前記の様にして生成されたＲＤＢ検索要求を受信してＲＤＢ検索処理３０５でＲＤＢ検索を実行し、その結果をクライアント１０１のＲＤＢデータ取得処理部１０４へ返す。そしてクライアント１０１のＲＤＢデータ取得処理部１０４は、ＲＤＢ検索結果受信処理３０４でサーバ１０７からＲＤＢ検索結果を受信する。
【００３１】
またデータ型判定処理３０２で調べた結果、ＭＤＢ検索要求による検索対象のデータにＭＤＢ１１０上に存在していないデータが含まれていない場合には、ＭＤＢ検索結果をユーザアプリケーション１０２に送信する取得データ送信処理を行う。
【００３２】
図４は本実施形態の図３の続きを示す図である。クライアント１０１のデータ埋め込み処理部１０５は、データ取得処理４０１で、ＲＤＢデータ取得処理部１０４からＭＤＢ検索結果４０３とＲＤＢ検索結果４０４とを受け取り、ＲＤＢデータ埋め込み処理４０２では、前記ＭＤＢ検索要求によりＭＤＢ１１０から取得したＭＤＢ検索結果４０３に、前記ＲＤＢ検索要求によりＲＤＢ１０８から取得したＲＤＢ検索結果４０４を埋め込む処理を行う。
【００３３】
すなわち、ＭＤＢ検索結果４０３中の太線で示された“所在地”の“ＮＵＬＬ”に、ＲＤＢ検索で取得したＲＤＢ検索結果４０４の“横浜市”、“厚木市”、“海老名市”というデータを上書きして埋め込み結果４０５を生成する。この際、ＭＤＢ検索結果４０３中の表示欄のサイズに応じてＲＤＢ検索結果４０４のデータの表示サイズや表示文字数を変更して埋め込みを行っても良い。
【００３４】
そして取得データ送信処理４０６では、埋め込み結果４０５のデータをユーザアプリケーション１０２に送信して一連の処理を終える。
【００３５】
以上説明した様に本実施形態の多次元データベース処理システムによれば、多次元データベースから取得したＭＤＢ検索結果にリレーショナルデータベースから取得したＲＤＢ検索結果を埋め込むので、文字列やオブジェクトを数値データと同様に多次元データベースで扱うことが可能である。
【００３６】
（実施形態２）
以下に多次元データベースから取得したデータに、リレーショナルデータベースから取得したデータを埋め込む処理をサーバ側で行い、その結果をクライアント側で表示する実施形態２の多次元データベース処理システムについて説明する。
【００３７】
図５は本実施形態のＲＤＢから値を取得する処理をサーバ側で行う場合のシステム構成例を示す図である。図５に示す様に本実施形態のクライアント５０１はＭＤＢデータ取得処理部５０４を有している。ＭＤＢデータ取得処理部５０４は、ＭＤＢ５０９を検索する為のＭＤＢ検索要求を生成してサーバ５０５へ送信し、サーバ５０５からＲＤＢ検索結果の埋め込まれたＭＤＢ検索結果を取得する処理部である。
【００３８】
クライアント５０１をＭＤＢデータ取得処理部５０４として機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【００３９】
サーバ５０５は、データ埋め込み処理部５０７と、ＲＤＢデータ取得処理部５０８とを有している。
【００４０】
データ埋め込み処理部５０７は、前記ＭＤＢ検索要求によりＭＤＢ５０９から取得したＭＤＢ検索結果に、ＲＤＢデータ取得処理部５０８のＲＤＢ検索要求によりＲＤＢ５１０から取得したＲＤＢ検索結果を埋め込んでクライアント５０１へ送信する処理部であり、前記ＭＤＢ検索結果中の表示欄のサイズに応じて前記ＲＤＢ検索結果の表示サイズまたは表示位置を変更して埋め込みを行う処理部である。
【００４１】
ＲＤＢデータ取得処理部５０８は、前記ＭＤＢ検索要求による検索対象のデータにＭＤＢ５０９上に存在していないデータが含まれている場合に、そのデータをＲＤＢ５１０から検索する為のＲＤＢ検索要求を、前記ＭＤＢ検索要求による検索対象のデータを格納しているＲＤＢ５１０のインターフェイスに合わせて生成してＲＤＢ５１０から当該データを取得する処理部である。
【００４２】
サーバ５０５をデータ埋め込み処理部５０７及びＲＤＢデータ取得処理部５０８として機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【００４３】
図５の様に本実施形態の多次元データベース処理システムはクライアント５０１とサーバ５０５からなっている。
【００４４】
クライアント５０１は、ユーザとのインターフェイスとなり、検索したデータを表示するユーザアプリケーション５０２と、ユーザアプリケーション５０２から要求のあったデータを取得するデータ取得装置５０３を有している。データ取得装置５０３は、ＭＤＢ５０９からデータを取得するＭＤＢデータ取得処理部５０４から構成されている。
【００４５】
サーバ５０５は、集約されたデータが格納されているＭＤＢ５０９と、通常のデータ検索要求であるＭＤＢ５０９内のあるデータの要求の際の検索を処理するＯＬＡＰエンジン５０６と、文字列データやオブジェクトデータが格納されているＲＤＢ５１０から構成されている。ＯＬＡＰエンジン５０６は、ＲＤＢ５１０からデータを取得するＲＤＢデータ取得処理部５０８と、ＭＤＢ５０９から取得したデータにＲＤＢ５１０から取得したデータを埋め込むデータ埋め込み処理部５０７が追加された構成となっている。
【００４６】
図６、図７、図８、図９にＲＤＢ５１０から値を取得する処理をサーバ側で行う場合の処理の流れを示す。
【００４７】
図６は本実施形態のＲＤＢ５１０から所在地を示す値を取得する処理をサーバ側で行う場合の処理の流れを示す図である。図６では、ユーザアプリケーション５０２の操作により行部に“Ａ工場”、“Ｂ工場”、“Ｃ工場”という項目、列部に“生産高”、“販売実績”、“所在地”という項目がある表を表示する表示要求６０１がデータ取得装置５０３で受け付けられた場合を想定している。ＲＤＢ５１０から値を取得する項目は、ＭＤＢ５０９構築時に“所在地”と設定されているものとする。
【００４８】
まずクライアント５０１のＭＤＢデータ取得処理部５０４は、ＭＤＢデータ取得処理６０２で前記表のデータの表示要求６０１を受け付けると、ＭＤＢ５０９を検索する為のＭＤＢ検索要求をＭＤＢ検索要求送信処理６０３で生成してサーバ５０５のＯＬＡＰエンジン５０６へ送信する。
【００４９】
そして、ＭＤＢ検索結果受信処理６０４では、ＭＤＢ検索結果のみ、またはＲＤＢ検索結果の埋め込まれたＭＤＢ検索結果をサーバ５０５から受信した後、取得データ送信処理６０５では、前記受信したＭＤＢ検索結果をユーザアプリケーション５０２に送信する処理を行う。
【００５０】
図７は本実施形態の図６の続きを示す図である。サーバ５０５のＯＬＡＰエンジン５０６は、クライアント５０１から送信されたＭＤＢ検索要求をＯＬＡＰエンジンの処理７０１で受信すると、ＭＤＢ検索処理７０２では、前記受信したＭＤＢ検索要求を用いてＭＤＢ５０９の検索を実行し、ＭＤＢ検索結果７０３を生成する。
【００５１】
図８は本実施形態の図７の続きを示す図である。サーバ５０５のＲＤＢデータ取得処理部５０８は、ＲＤＢデータ取得処理８０１でＯＬＡＰエンジン５０６からＭＤＢ検索結果７０３を受け取り、取得先判定処理８０２では、その受け取ったＭＤＢ検索結果７０３を参照し、ＭＤＢ検索要求による検索対象のデータにＭＤＢ５０９上に存在していないデータが含まれているかどうかを調べる。
【００５２】
ＭＤＢ検索要求による検索対象のデータにＭＤＢ５０９上に存在していないデータが含まれている場合、すなわち前記ＭＤＢ検索要求により検索した項目の中に、ユーザアプリケーション構築時にＲＤＢ５１０から値を取得する様に設定されている項目がある場合には、ＲＤＢ検索要求送信処理８０３へ進み、そのデータをＲＤＢ５１０から検索する為のＲＤＢ検索要求をＲＤＢ５１０のインターフェイスに合わせて生成してＲＤＢ５１０を検索する。
【００５３】
前記ＲＤＢ検索要求の生成では、まずサーバ５０５内のＲＤＢ５１０の項目とＭＤＢ検索結果７０３でＮＵＬＬとなっているデータの項目とを比較し、前記ＮＵＬＬの項目と同一または類似する項目がＲＤＢ５１０にあるかどうかを調べる。例えば、各工場の所在地がＮＵＬＬである場合、「工場名」及び「所在地」或いはそれに類似した「生産現場名」や「生産場所」等の文字列がＲＤＢ５１０の項目に含まれているかどうかを調べる。ここでサーバ５０５のＲＤＢ５１０中に該当する項目が含まれていない場合には他のサーバのＲＤＢについて調べるものとしても良い。
【００５４】
次に、当該データを格納しているＲＤＢのインターフェイスに合わせてそのＲＤＢの項目名を用いたＳＱＬ文のＲＤＢ検索要求を生成する。例えば、あるＲＤＢに「生産現場名」や「生産場所」等の項目がある場合、「工場名」及び「所在地」で検索を行う代わりに、「生産現場名」や「生産場所」で検索を行う様にＳＱＬ文のＲＤＢ検索要求を生成する。
【００５５】
サーバ５０５は、前記の様にして生成されたＲＤＢ検索要求を用いてＲＤＢ検索処理８０４でＲＤＢ検索を実行し、その結果をＲＤＢデータ取得処理部５０８へ返す。そしてＲＤＢデータ取得処理部５０８は、ＲＤＢ検索結果受信処理８０５でＲＤＢ５１０からＲＤＢ検索結果を受信する。
【００５６】
また取得先判定処理８０２で調べた結果、ＭＤＢ検索要求による検索対象のデータにＭＤＢ５０９上に存在していないデータが含まれていない場合には、そのままＭＤＢ検索結果７０３をクライアント５０１に送信する処理を行う。
【００５７】
図９は本実施形態の図８の続きを示す図である。サーバ５０５のデータ埋め込み処理部５０７は、データ取得処理９０１で、ＲＤＢデータ取得処理部５０８からＭＤＢ検索結果９０３とＲＤＢ検索結果９０４とを受け取り、ＲＤＢデータ埋め込み処理９０２では、前記ＭＤＢ検索要求によりＭＤＢ５０９から取得したＭＤＢ検索結果９０３に、前記ＲＤＢ検索要求によりＲＤＢ５１０から取得したＲＤＢ検索結果９０４を埋め込む処理を行う。
【００５８】
すなわち、ＭＤＢ検索結果９０３中の太線で示された“所在地”の“ＮＵＬＬ”に、ＲＤＢ検索で取得したＲＤＢ検索結果９０４の“横浜市”、“厚木市”、“海老名市”というデータを上書きして埋め込み結果９０５を生成する。この際、ＭＤＢ検索結果９０３中の表示欄のサイズに応じてＲＤＢ検索結果９０４のデータの表示サイズや表示文字数を変更して埋め込みを行っても良い。
【００５９】
そしてサーバ５０５は、埋め込み結果９０５のデータをクライアント５０１に送信し、クライアント５０１のＭＤＢデータ取得処理部５０４は、ＭＤＢ検索結果受信処理６０４でＲＤＢ検索結果の埋め込まれたＭＤＢ検索結果である埋め込み結果９０５をサーバ５０５から受信した後、取得データ送信処理６０５では、前記受信した埋め込み結果９０５をユーザアプリケーション５０２に送信して一連の処理を終える。
【００６０】
図１０は本実施形態の利用形態の一例を示す図である。図１０のＭＤＢデータ例１００１では、ＭＤＢ５０９にロードしたデータを表しており、ドリルアップ例１００２は、ドリルアップを実行した後の集約値を表している。
【００６１】
従来の技術では集約された項目に対応するデータ値は数値しか取り扱えなかったが、本実施形態を用いることにより、ＭＤＢデータ例１００１の所在地を集約した項目に対応して、“Ａ工場”に“横浜市”、“Ｂ工場”に“厚木市”、“Ｃ工場”に“海老名市”といった文字列を出力することが可能となる。
【００６２】
図１１は本実施形態の図１０で扱っていた対象データの種類を文字列から画像に変更した場合の表示例を示す図である。図１１では商品の項目欄に画像データを表示している。この様にＭＤＢ検索結果中の表示欄に画像データを表示する場合には、そのサイズに応じて画像データの表示サイズを変更して埋め込むものとしても良い。
【００６３】
図１２は本実施形態の図１１で出力していた画像を項目の上に出力する様に変更した場合の表示例を示す図である。図１２では項目の上に画像データを表示する様に変更しており、この表示は図４のＲＤＢデータ埋め込み処理４０２、図９のＲＤＢデータ埋め込み処理９０２を実行する際に、埋め込む位置を、データセルではなく、項目が出力されているセルに変更することで可能となる。
【００６４】
以上説明した様に本実施形態の多次元データベース処理システムによれば、多次元データベースから取得したＭＤＢ検索結果にリレーショナルデータベースから取得したＲＤＢ検索結果を埋め込むので、文字列やオブジェクトを数値データと同様に多次元データベースで扱うことが可能である。
【００６５】
【発明の効果】
本発明によれば多次元データベースから取得したＭＤＢ検索結果にリレーショナルデータベースから取得したＲＤＢ検索結果を埋め込むので、文字列やオブジェクトを数値データと同様に多次元データベースで扱うことが可能である。
【図面の簡単な説明】
【図１】実施形態１のＲＤＢから値を取得する処理をクライアント側で行う場合のシステム構成例を示す図である。
【図２】実施形態１のＲＤＢ１０８から所在地を示す値を取得する処理をクライアント１０１側で行う場合の処理の流れを示す図である。
【図３】実施形態１の図２の続きを示す図である。
【図４】実施形態１の図３の続きを示す図である。
【図５】実施形態２のＲＤＢから値を取得する処理をサーバ側で行う場合のシステム構成例を示す図である。
【図６】実施形態２のＲＤＢ５１０から所在地を示す値を取得する処理をサーバ側で行う場合の処理の流れを示す図である。
【図７】実施形態２の図６の続きを示す図である。
【図８】実施形態２の図７の続きを示す図である。
【図９】実施形態２の図８の続きを示す図である。
【図１０】実施形態２の利用形態の一例を示す図である。
【図１１】実施形態２の図１０で扱っていた対象データの種類を文字列から画像に変更した場合の表示例を示す図である。
【図１２】実施形態２の図１１で出力していた画像を項目の上に出力する様に変更した場合の表示例を示す図である。
【符号の説明】
１０１…クライアント、１０２…ユーザアプリケーション、１０３…データ取得装置、１０７…サーバ、１０８…ＲＤＢ、１０９…ＯＬＡＰエンジン、１１０…ＭＤＢ、１０４…ＲＤＢデータ取得処理部、１０５…データ埋め込み処理部、１０６…ＭＤＢデータ取得処理部、２０１…表示要求、２０２…ＭＤＢデータ取得処理、２０３…ＭＤＢ検索要求送信処理、２０４…ＭＤＢ検索結果受信処理、２０５…ＭＤＢ検索処理、３０１…ＲＤＢデータ取得処理、３０２…データ型判定処理、３０３…ＲＤＢ検索要求送信処理、３０４…ＲＤＢ検索結果受信処理、３０５…ＲＤＢ検索処理、４０１…データ取得処理、４０２…ＲＤＢデータ埋め込み処理、４０３…ＭＤＢ検索結果、４０４…ＲＤＢ検索結果、４０５…埋め込み結果、４０６…取得データ送信処理、５０１…クライアント、５０２…ユーザアプリケーション、５０３…データ取得装置、５０５…サーバ、５０６…ＯＬＡＰエンジン、５０９…ＭＤＢ、５１０…ＲＤＢ、５０４…ＭＤＢデータ取得処理部、５０７…データ埋め込み処理部、５０８…ＲＤＢデータ取得処理部、６０１…表示要求、６０２…ＭＤＢデータ取得処理、６０３…ＭＤＢ検索要求送信処理、６０４…ＭＤＢ検索結果受信処理、６０５…取得データ送信処理、７０１…ＯＬＡＰエンジンの処理、７０２…ＭＤＢ検索処理、７０３…ＭＤＢ検索結果、８０１…ＲＤＢデータ取得処理、８０２…取得先判定処理、８０３…ＲＤＢ検索要求送信処理、８０４…ＲＤＢ検索処理、８０５…ＲＤＢ検索結果受信処理、９０１…データ取得処理、９０２…ＲＤＢデータ埋め込み処理、９０３…ＭＤＢ検索結果、９０４…ＲＤＢ検索結果、９０５…埋め込み結果、１００１…ＭＤＢデータ例、１００２…ドリルアップ例。
【図１】
2004185465.tif 000003
【図２】
2004185465.tif 000004
【図３】
2004185465.tif 000005
【図４】
2004185465.tif 000006
【図５】
2004185465.tif 000007
【図６】
2004185465.tif 000008
【図７】
2004185465.tif 000009
【図８】
2004185465.tif 000010
【図９】
2004185465.tif 000011
【図１０】
2004185465.tif 000012
【図１１】
2004185465.tif 000013
【図１２】
2004185465.tif 000014