(57)【要約】【課題】複数のデータベースに分散して構造化文書を格納するデータベースシステムにおいて、高速な検索処理を実現すること。【解決手段】コンピュータが、構造化文書をデータベースへ格納する旨の処理要求を受け付けたとき、処理要求の構造化文書から抽出した要素種別が検索対象の要素か否かを判別し、処理要求の構造化文書に含まれる要素のうち、検索対象と判別された要素のデータサイズの総和を、処理要求の構造化文書の処理サイズ見積もり値とし、最も処理サイズ見積もり値が小さいデータベースに接続するアクセスサーバを、処理要求の構造化文書を格納するアクセスサーバとして選択する。【選択図】図５
2009064392.tif 000002
【特許請求の範囲】
【請求項１】
各アクセスサーバが接続先の各データベースへアクセスするデータベース管理システムにおいて、１つ以上の要素で構成される構造化文書を接続先の前記各データベースへ格納するアクセスサーバを、複数の前記アクセスサーバから選択する構造化文書処理方法であって、
コンピュータが、
前記構造化文書の要素を分類する要素種別ごとに検索対象か否かを示す情報を記憶手段に格納し、
前記各アクセスサーバの接続先の前記データベースごとに、そのデータベースが既に格納している前記構造化文書を検索するための処理サイズ見積もり値を、アクセスサーバ情報として前記記憶手段に格納し、
前記構造化文書を前記データベースへ格納する旨の処理要求を受け付けたとき、
前記処理要求の前記構造化文書を構文解析して含まれる要素とその要素種別を抽出し、抽出した前記要素種別と前記記憶手段から読み込んだ前記検索対象か否かを示す情報とを照合することにより、抽出した要素が検索対象の要素か否かを判別し、前記処理要求の前記構造化文書に含まれる要素のうち、検索対象と判別された要素のデータサイズの総和を、前記処理要求の構造化文書の処理サイズ見積もり値とし、
前記アクセスサーバ情報を参照して、最も処理サイズ見積もり値が小さいデータベースに接続する前記アクセスサーバを、前記処理要求の前記構造化文書を格納する前記アクセスサーバとして選択し、
選択した前記アクセスサーバに対応する前記処理サイズ見積もり値に、計算した前記処理要求の構造化文書の処理サイズ見積もり値を加算して、前記アクセスサーバ情報を更新することを特徴とする
構造化文書処理方法。
【請求項２】
各アクセスサーバが接続先の各データベースへアクセスするデータベース管理システムにおいて、１つ以上の要素で構成される構造化文書を接続先の前記各データベースへ格納するアクセスサーバを、複数の前記アクセスサーバから選択する構造化文書処理方法であって、
コンピュータが、
前記構造化文書の要素を分類する要素種別ごとに検索処理が行われる確率を示す検索確率を記憶手段に格納し、
前記各アクセスサーバの接続先の前記データベースごとに、そのデータベースが既に格納している前記構造化文書を検索するための処理サイズ見積もり値を、アクセスサーバ情報として前記記憶手段に格納し、
前記構造化文書を前記データベースへ格納する旨の処理要求を受け付けたとき、
前記処理要求の前記構造化文書を構文解析して含まれる要素とその要素種別とを抽出し、抽出した前記要素種別に対応する検索確率を前記記憶手段から読み込み、抽出した要素のデータサイズと読み込んだ検索確率とを乗算することにより要素の重み付け値を計算し、前記処理要求の前記構造化文書に含まれる全要素についての要素の重み付け値の総和を、前記処理要求の構造化文書の処理サイズ見積もり値とし、
前記アクセスサーバ情報を参照して、最も処理サイズ見積もり値が小さいデータベースに接続する前記アクセスサーバを、前記処理要求の前記構造化文書を格納する前記アクセスサーバとして選択し、
選択した前記アクセスサーバに対応する前記処理サイズ見積もり値に、計算した前記処理要求の構造化文書の処理サイズ見積もり値を加算して、前記アクセスサーバ情報を更新することを特徴とする
構造化文書処理方法。
【請求項３】
前記アクセスサーバは、前記各データベースへＸＭＬ（eXtensible Markup Language）で記述された前記構造化文書を格納し、
コンピュータは、前記処理要求の構造化文書を構文解析する工程において、ＸＭＬのタグで示されるデータごとに要素を抽出し、あらかじめ前記記憶手段に格納されているＸＭＬのタグと前記要素種別との対応情報を参照して、抽出した要素の前記要素種別を特定することを特徴とする
請求項１に記載の構造化文書処理方法。
【請求項４】
前記アクセスサーバは、前記各データベースへ２次元の表形式で記述された前記構造化文書を格納し、
前記コンピュータは、前記処理要求の構造化文書を構文解析する工程において、表の行列で区切られたデータごとに要素を抽出し、あらかじめ前記記憶手段に格納されている列名称と前記要素種別との対応情報を参照して、抽出した要素の前記要素種別を特定することを特徴とする
請求項１に記載の構造化文書処理方法。
【請求項５】
前記コンピュータは、さらに、既に格納されている前記構造化文書を前記データベースから削除する旨の前記処理要求を受け付けたとき、既に計算した前記処理要求の構造化文書の処理サイズ見積もり値を、格納先の前記アクセスサーバに対応する前記処理サイズ見積もり値から減算して、前記アクセスサーバ情報を更新することを特徴とする
請求項１ないし請求項４のいずれか１項に記載の構造化文書処理方法。
【請求項６】
前記コンピュータは、さらに、前記各アクセスサーバの検索処理性能を測定し、
前記構造化文書の前記処理サイズ見積もり値を検索処理性能で除算することで、前記構造化文書の処理時間見積もり値を計算し、最も前記処理時間見積もり値が小さいデータベースに接続する前記アクセスサーバを、前記処理要求の前記構造化文書を格納する前記アクセスサーバとして選択し、
選択した前記アクセスサーバに対応する前記処理時間見積もり値に、計算した前記処理要求の前記構造化文書の前記処理時間見積もり値を加算して、前記アクセスサーバ情報を更新することを特徴とする
請求項１ないし請求項５のいずれか１項に記載の構造化文書処理方法。
【請求項７】
前記コンピュータは、さらに、前記要素種別ごとに要素に含まれる文字列を内容特徴情報として前記記憶手段に格納し、前記処理要求の構造化文書を構文解析する工程において、前記処理要求の前記構造化文書から抽出された要素に含まれる文字列と前記内容特徴情報の文字列とを照合し、抽出した要素の前記要素種別を特定することを特徴とする
請求項１ないし請求項６のいずれか１項に記載の構造化文書処理方法。
【請求項８】
前記コンピュータは、さらに、前記要素種別ごとに要素のデータサイズをサイズ特徴情報として前記記憶手段に格納し、前記処理要求の構造化文書を構文解析する工程において、前記処理要求の前記構造化文書から抽出された要素のデータサイズと前記サイズ特徴情報のデータサイズとを照合し、抽出した要素の前記要素種別を特定することを特徴とする
請求項１ないし請求項６のいずれか１項に記載の構造化文書処理方法。
【請求項９】
請求項１ないし請求項８のいずれか１項に記載の構造化文書処理方法を、コンピュータに実行させるための構造化文書処理プログラム。
【請求項１０】
各アクセスサーバが接続先の各データベースへアクセスするデータベース管理システムにおいて、１つ以上の要素で構成される構造化文書を接続先の前記各データベースへ格納するアクセスサーバを、複数の前記アクセスサーバから選択する構造化文書処理装置であって、
前記構造化文書の要素を分類する要素種別ごとに検索対象か否かを示す要素情報と、前記各アクセスサーバの接続先の前記データベースごとにそのデータベースが既に格納している前記構造化文書を検索するための処理サイズ見積もり値を対応づけるアクセスサーバ情報と、を格納する記憶手段、
前記各アクセスサーバの接続先の前記データベースごとに、そのデータベースが既に格納している前記構造化文書を検索するための前記処理サイズ見積もり値を、アクセスサーバ情報と、を格納する記憶手段、
前記構造化文書を前記データベースへ格納する旨の処理要求を受け付ける処理要求制御部、および、
前記処理要求制御部が受け付けた格納要求を処理する格納要求制御部を有し、
前記格納要求制御部は、
前記処理要求の前記構造化文書を構文解析して含まれる要素とその要素種別を抽出し、抽出した前記要素種別と前記要素情報から読み込んだ検索対象か否かを示す情報とを照合することにより、抽出した要素が検索対象の要素か否かを判別し、前記処理要求の前記構造化文書に含まれる要素のうち、検索対象と判別された要素のデータサイズの総和を、前記処理要求の構造化文書の処理サイズ見積もり値とし、
前記アクセスサーバ情報を参照して、最も処理サイズ見積もり値が小さいデータベースに接続する前記アクセスサーバを、前記処理要求の前記構造化文書を格納する前記アクセスサーバとして選択し、
選択した前記アクセスサーバに対応する前記処理サイズ見積もり値に、計算した前記処理要求の構造化文書の処理サイズ見積もり値を加算して、前記アクセスサーバ情報を更新することを特徴とする
構造化文書処理装置。
【請求項１１】
各アクセスサーバが接続先の各データベースへアクセスするデータベース管理システムにおいて、１つ以上の要素で構成される構造化文書を接続先の前記各データベースへ格納するアクセスサーバを、複数の前記アクセスサーバから選択する構造化文書処理装置であって、
前記構造化文書の要素を分類する要素種別ごとに検索処理が行われる確率を示す検索確率を対応づける要素情報と、前記各アクセスサーバの接続先の前記データベースごとにそのデータベースが既に格納している前記構造化文書を検索するための処理サイズ見積もり値を対応づけるアクセスサーバ情報と、を格納する記憶手段、
前記構造化文書を前記データベースへ格納する旨の処理要求を受け付ける処理要求制御部、および、
前記処理要求制御部が受け付けた格納要求を処理する格納要求制御部を有し、
前記格納要求制御部は、
前記処理要求の前記構造化文書を構文解析して含まれる要素とその要素種別とを抽出し、抽出した前記要素種別に対応する検索確率を前記要素情報から読み込み、抽出した要素のデータサイズと読み込んだ検索確率とを乗算することにより要素の重み付け値を計算し、前記処理要求の前記構造化文書に含まれる全要素についての要素の重み付け値の総和を、前記処理要求の構造化文書の処理サイズ見積もり値とし、
前記アクセスサーバ情報を参照して、最も処理サイズ見積もり値が小さいデータベースに接続する前記アクセスサーバを、前記処理要求の前記構造化文書を格納する前記アクセスサーバとして選択し、
選択した前記アクセスサーバに対応する前記処理サイズ見積もり値に、計算した前記処理要求の構造化文書の処理サイズ見積もり値を加算して、前記アクセスサーバ情報を更新することを特徴とする
構造化文書処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、構造化文書処理方法、構造化文書処理プログラム、および、構造化文書処理装置に関する。
【背景技術】
【０００２】
情報検索を行う情報処理システムの処理性能を向上させる方法として、検索処理負荷を複数プロセッサに分散させて実行するアーキテクチャに関する技術が、特許文献１に開示されている。特許文献１で開示された技術は、テキスト文書を対象とした検索処理において、テキスト文書のデータサイズ、または、テキスト文書から抽出したインデクスのデータサイズをもとに、各プロセッサの検索処理負荷を見積もり、検索処理負荷を分散させている。
【０００３】
また、非特許文献１で開示された技術では、ＤＢアクセスサーバ（ＢＥＳ：Back End Server）を動作させる各ホストが、各ホストに属するディスク上のデータにのみアクセスすることができる無共有型のデータベース管理システム（ＤＢＭＳ：DataBase Management System）で検索処理が実行される。ＢＥＳの性能は、アクセスするデータベースのデータ使用量に依存する。よって、各ホストのデータ使用量にばらつきが生じると、各ＢＥＳで処理時間にアンバランスが発生してしまう。
【特許文献１】特開２００６−１１３８６８号公報
【非特許文献１】David DeWitt and Jim Gray著,“Parallel Database Systems:The Future of High Performance Database Systems”,COMMUNICATIONS OF THE ACM, Vol.35, No.6,June 1992,P.85-P.98"
【発明の開示】
【発明が解決しようとする課題】
【０００４】
前記した各従来技術は、検索対象として構造化文書を扱うときに、充分に高速な検索処理を実現できていない。構造化文書とは、その構成要素である要素が互いに関連づけられて構成される文書である。構造化文書の一例であるＸＭＬ（eXtensible Markup Language）で記述されたＸＭＬデータは、親子関係を示す入れ子形式のタグにより、要素が特徴づけられている。
【０００５】
構造化文書を検索するときには、ＸＱｕｅｒｙに代表される構造化文書に対する問合せ言語が使用される。ＸＱｕｅｒｙでは、構造化文書の要素を指定する記述が可能である。よって、構造化文書データに対する検索では、文書単位で検索対象を設定するのではなく、構造化文書データ中の要素を単位として検索対象とする。
【０００６】
各従来技術は、文書全体を１つの検索単位とする方式なので、検索処理に要する時間を見積もるときには、文書全体のデータサイズが参照される。しかし、構造化文書は、複数の要素から構成されるが、そのうちの全ての要素が検索対象となるとは限らない。
【０００７】
例えば、ＸＭＬデータを利用したトレーサビリティシステムにおいて、ＸＭＬデータ内で画像データを保持しているケースを考える。この場合、識別番号などの情報からＸＭＬデータを絞り込み、該当するＸＭＬデータ内の画像データを、何らかの画像処理アプリケーションに渡すという利用法が想定される。つまり、画像データ自体に対する検索は、頻繁に行われない。
【０００８】
しかし、検索対象にならない要素のデータサイズも含めて、文書全体のデータサイズをもとに検索処理に要する時間を見積もってしまうと、実際の検索処理に要する時間との乖離ができてしまい、見積もり精度が悪くなってしまう。よって、精度の悪い見積もりを元に文書が偏って特定のデータベースに格納されてしまい、高速な検索処理を実現できない。つまり、検索頻度が低いにも関わらず、データサイズが大きい要素を含む構造化文書を格納したコンピュータの処理時間が、実際の処理時間よりも大きく見積もられ、各コンピュータにおける処理時間にアンバランスが発生し、安定した処理性能が確保できなくなってしまう。
【０００９】
そこで本発明は、複数のデータベースに分散して構造化文書を格納するデータベースシステムにおいて、高速な検索処理を実現することを、主な目的とする。
【課題を解決するための手段】
【００１０】
前記課題を解決するため、本発明は、各アクセスサーバが接続先の各データベースへアクセスするデータベース管理システムにおいて、１つ以上の要素で構成される構造化文書を接続先の前記各データベースへ格納するアクセスサーバを、複数の前記アクセスサーバから選択する構造化文書処理方法であって、コンピュータが、前記構造化文書の要素を分類する要素種別ごとに検索対象か否かを示す情報を記憶手段に格納し、前記各アクセスサーバの接続先の前記データベースごとに、そのデータベースが既に格納している前記構造化文書を検索するための処理サイズ見積もり値を、アクセスサーバ情報として前記記憶手段に格納し、前記構造化文書を前記データベースへ格納する旨の処理要求を受け付けたとき、前記処理要求の前記構造化文書を構文解析して含まれる要素とその要素種別を抽出し、抽出した前記要素種別と前記記憶手段から読み込んだ前記検索対象か否かを示す情報とを照合することにより、抽出した要素が検索対象の要素か否かを判別し、前記処理要求の前記構造化文書に含まれる要素のうち、検索対象と判別された要素のデータサイズの総和を、前記処理要求の構造化文書の処理サイズ見積もり値とし、前記アクセスサーバ情報を参照して、最も処理サイズ見積もり値が小さいデータベースに接続する前記アクセスサーバを、前記処理要求の前記構造化文書を格納する前記アクセスサーバとして選択し、選択した前記アクセスサーバに対応する前記処理サイズ見積もり値に、計算した前記処理要求の構造化文書の処理サイズ見積もり値を加算して、前記アクセスサーバ情報を更新することを特徴とする。その他の手段は、後記する。
【発明の効果】
【００１１】
本発明により、複数のデータベースに分散して構造化文書を格納するデータベースシステムにおいて、高速な検索処理を実現することが可能になった。
【発明を実施するための最良の形態】
【００１２】
図１は、ＤＢシステムのハードウェア構成を示す構成図である。ＤＢシステムは、コンピュータである情報処理装置１０１ａ〜１０１ｄが、ネットワーク１２３で互いに接続されている。
【００１３】
情報処理装置１０１ａ〜１０１ｄは、それぞれ、情報処理装置１０１ａ〜１０１ｄにデータを入出力するための入出力装置１１６ａ〜１１６ｄと、情報処理装置１０１ａ〜１０１ｄが使用するデータを記憶する外部記憶装置１１５ａ〜１１５ｄと、に接続されている。入出力装置１１６ａ〜１１６ｄは、データを入力するためのキーボードやマウスで構成される入力装置と、出力されたデータを表示するためのディスプレイで構成される出力装置とを１つの筐体にしたものである。外部記憶装置１１５ａ〜１１５ｄは、データを読み書きするためのハードディスクなどで構成される。
【００１４】
情報処理装置１０１ａは、外部記憶装置１１５ａに記憶されたアプリケーションプログラム１２１を読み取って実行することで、アプリケーション処理部１を動作させる。
【００１５】
情報処理装置１０１ｂは、外部記憶装置１１５ｂに記憶されたデータベースプログラム１２２ｂを実行することで、処理要求受付サーバ（ＦＥＳ：Front End Server）３を動作させる。ＦＥＳ３（構造化文書処理装置、構造化文書処理方法を実行するコンピュータ）は、外部記憶装置１１５ｂに記憶されたデータベース５ｂにデータアクセスする。
【００１６】
情報処理装置１０１ｃは、外部記憶装置１１５ｃに記憶されたデータベースプログラム１２２ｃを実行することで、ＢＥＳ（Back End Server）４ｃを動作させる。ＢＥＳ４ｃは、外部記憶装置１１５ｃに記憶されたデータベース５ｃにデータアクセスする。
【００１７】
情報処理装置１０１ｄは、外部記憶装置１１５ｄに記憶されたデータベースプログラム１２２ｄを実行することで、ＢＥＳ４ｄを動作させる。ＢＥＳ４ｄは、外部記憶装置１１５ｄに記憶されたデータベース５ｄにデータアクセスする。ＢＥＳ４ｃ，４ｄは、アクセスサーバの一例である。
【００１８】
図２は、図１の情報処理装置１０１ａ〜１０１ｄのハードウェア構成を示す構成図である。図２（ａ）は情報処理装置１０１ａを、図２（ｂ）は情報処理装置１０１ｂを、図２（ｃ）は情報処理装置１０１ｃを、図２（ｄ）は情報処理装置１０１ｄを、それぞれ示す。
【００１９】
情報処理装置１０１ａ〜１０１ｄは、処理を実行するためのＣＰＵ１１１ａ〜１１１ｄと、ネットワーク１２３と接続するための通信制御装置１１２ａ〜１１２ｄと、ＣＰＵ１１１ａ〜１１１ｄが処理を実行するためのプログラムおよびデータを記憶する主記憶装置１１３ａ〜１１３ｄと、入出力装置１１６ａ〜１１６ｄとデータを入出力するＩ／Ｏ制御装置１１４ａ〜１１４ｄを有する。
【００２０】
主記憶装置１１３ａは、アプリケーション処理部１を記憶する。主記憶装置１１３ｂは、ＦＥＳ３を実行するためのＤＢＭＳ１２１ｂを記憶する。主記憶装置１１３ｃは、ＢＥＳ４ｃを実行するためのＤＢＭＳ１２１ｃを記憶する。主記憶装置１１３ｄは、ＢＥＳ４ｄを実行するためのＤＢＭＳ１２１ｄを記憶する。ＤＢＭＳ１２１ｂ，１２１ｄは、データベース管理システムの一例である。
【００２１】
図３は、図１のＤＢシステムの機能概略を示す構成図である。
【００２２】
ＤＢシステムは、ユーザからの処理要求を受け付けるアプリケーション処理部１と、アプリケーション処理部１からの処理要求を解析してＢＥＳ４ｃ，４ｄへアクセスを要求するＦＥＳ３と、ＦＥＳ３からのアクセスの要求を受けてデータベース５ｃ，５ｄへのデータアクセスを制御するＢＥＳ４ｃ，４ｄと、ＢＥＳ４ｃ，４ｄからの制御により格納するデータを読み書きするデータベース５ｃ，５ｄと、ＦＥＳ３の処理に必要なデータを格納する外部記憶装置１１５ｂとを有する。
【００２３】
外部記憶装置１１５ｂは、スキーマ定義ファイル１１、要素特定参照テーブル１２、要素確率テーブル１３（要素情報）、要素情報テーブル１４（要素情報）、ＢＥＳ情報テーブル１５（アクセスサーバ情報）、文書情報テーブル１６、文書内要素情報テーブル１７、および、性能測定用データ１８を記憶する。以下、各データの詳細を、表を参照しつつ説明する。
【００２４】
【表１】
2009064392.tif 000003
【００２５】
表１に示すスキーマ定義ファイル１１は、要素種別特定情報と、スキーマ定義と、の対応情報を記憶する。要素種別特定情報は、データ型と要素名との組で定義される。要素名は、構造化文書中に出現する要素の名称であり、データ型は、要素名に対応する要素のデータ型である。スキーマ定義は、データ型のスキーマと要素名のスキーマとの組で定義される。なお、データ型のスキーマは、W3C XML Schemaで定義されており、表１に示した他に、整数型（xs:int）なども定義可能である。
【００２６】
要素種別特定情報のデータ型（例えば、「文字列」）を特定するための情報が、スキーマ定義の要素名のスキーマ（例えば、「xs:string」）である。要素種別特定情報の要素名（例えば、「氏名」）を特定するための情報が、スキーマ定義の要素名のスキーマ（例えば、「name」）である。
【００２７】
【表２】
2009064392.tif 000004
【００２８】
表２に示す要素特定参照テーブル１２は、要素種別特定情報と、内容特徴情報と、サイズ特徴情報と、の対応情報を記憶する。内容特徴情報およびサイズ特徴情報は、要素の種別を特定するための手がかりとなる情報である。例えば、ある要素を構成する文字種別が「漢字またはひらがな」で記述されている、ある要素を構成する文字が「子」を含む、または、ある要素を構成する文字が「山田」または「田中」を含むときには、ある要素は、要素名「氏名」であると特定される。同様に、ある要素のサイズが２０文字の時には、サイズ特徴情報により、ある要素は「住所または居所」である。
【００２９】
【表３】
2009064392.tif 000005
【００３０】
表３に示す要素確率テーブル１３は、要素種別特定情報と検索確率との対応情報を記憶する。この検索確率は、あらかじめ経験則やデータの特性などから与えられたものである。例えば、バイナリデータの図は、検索対象にならないことがあらかじめわかっているので、検索対象からは除外される旨の「検索確率＝０[％]」が設定される。このように、画像データのような検索対象となることが少ない要素の検索確率を低く設定し、逆に文字列データのような検索対象となりやすい要素の検索確率を高く設定している。
【００３１】
【表４】
2009064392.tif 000006
【００３２】
表４に示す要素情報テーブル１４は、ＢＥＳ４ｃ，４ｄに格納されている全構造化文書の全要素に関する統計情報を保持する。要素情報テーブル１４は、要素種別特定情報と、格納要素情報と、検索処理情報と、の対応情報を記憶する。格納要素情報は、各構造化文書内に出現する要素名に対応する要素の総数である「要素数」と、要素名に対応する要素が含むテキストデータの平均サイズである「要素サイズ平均値」と、要素数および要素サイズ平均値を乗算した結果である「要素サイズ合計値」とを有する。検索処理情報は、要素名に対応する要素が検索された「検索回数」と、その検索回数を全ての検索処理数で割り算して計算される「検索確率」とを有する。例えば、表４では、全ての検索処理数が２０回だったときに、検索回数が４回の氏名は、検索確率が４／２０×１００＝２０[％]となる。
【００３３】
【表５】
2009064392.tif 000007
【００３４】
表５に示すＢＥＳ情報テーブル１５は、ＢＥＳ４ｃ，４ｄに関する情報を保持する。ＢＥＳ情報テーブル１５は、ＢＥＳ４ｃ，４ｄを特定するための「ＢＥＳ名」と、ＢＥＳ名に対応するＢＥＳ４ｃ，４ｄについての１秒当たりに検索できるバイト数で表現される「処理性能」と、ＢＥＳ名に対応するＢＥＳ４ｃ，４ｄに格納されている構造化文書に対する「処理時間見積もり合計値」と、ＢＥＳ４ｃ，４ｄに格納されている構造化文書に対する検索処理に影響するデータの「処理サイズ見積もり合計値」との対応情報を記憶する。
【００３５】
なお、「処理性能」と「処理時間見積もり合計値」との乗算結果が「処理サイズ見積もり合計値」となる。つまり、格納要求で指定された文書のサイズから計算される「処理サイズ見積もり合計値」を、あらかじめ与えられているＢＥＳ４ｃ，４ｄの「処理性能」で除算することで、文書を割り当てるＢＥＳ４ｃ，４ｄを特定するための「処理時間見積もり合計値」が求められる。
【００３６】
【表６】
2009064392.tif 000008
【００３７】
表６に示す文書情報テーブル１６は、格納する構造化文書ごとに関する情報を保持する。文書情報テーブル１６は、データベース５ｂ〜５ｄへの格納対象である構造化文書の「文書名」と、その文書名に対応する構造化文書の「検索対象データサイズ」と、文書名に対応する文書内要素情報テーブル１７の名称である「文書内要素情報テーブル名」とを対応づけて記憶する。
【００３８】
【表７】
2009064392.tif 000009
【００３９】
表７に示す文書内要素情報テーブル１７は、構造化文書に含まれる要素に関する情報を、構造化文書単位で保持する。文書内要素情報テーブル１７は、文書情報テーブル１６の文書内要素テーブル名から対応づけられる「テーブル名」と、「要素種別特定情報」と、「格納要素情報」と、を対応づけて記憶する。これらの情報の形式は、要素情報テーブル１４のものと同じである。文書内要素情報テーブル１４の格納要素情報は全ての構造化文書に関するものであるのに対し、文書内要素情報テーブル１７の格納要素情報は１つの構造化文書に関するものである。
【００４０】
性能測定用データ１８は、ＢＥＳ４ｃ，４ｄの処理性能（特に検索処理性能）を測定するためのテストデータであり、ＢＥＳ４ｃ，４ｄがベンチマークを行うときに使用される。性能測定用データ１８は、例えば、検索用のダミーの構造化文書およびその構造化文書へのダミーの検索要求として構成される。
【００４１】
図３に戻って、ＢＥＳ４ｃ，４ｄは、それぞれアクセス制御部４０ｃ，４０ｄを有し、データベース５ｃ，５ｄは、それぞれＤＢ格納領域５０ｃ，５０ｄを有する。アクセス制御部４０ｃおよびＤＢ格納領域５０ｃは、アクセス権が専有（シェアードナッシング）されるように、１対１で直接接続されている。同様に、アクセス制御部４０ｄおよびＤＢ格納領域５０ｄも、直接接続されている。
【００４２】
ＦＥＳ３は、処理要求制御部２１、基礎情報取得部２２、検索要求制御部２５、および、格納要求制御部３０を有する。
【００４３】
まず、基礎情報取得部２２は、処理要求に対する前準備として基礎情報を取得しておく。次に、処理要求制御部２１がアプリケーション処理部１から処理要求を受け付けると、その処理要求の種別によって検索要求を処理する検索要求制御部２５、または、格納要求を処理する格納要求制御部３０が実行される。検索要求制御部２５、または、格納要求制御部３０は、処理要求をもとに生成したアクセス要求をＢＥＳ４ｃ，４ｄへと送信するとともに、そのアクセス要求の結果を、必要に応じてアプリケーション処理部１に返す。
【００４４】
基礎情報取得部２２は、検索処理および格納処理で必要な基礎情報を取得する。基礎情報取得部２２は、処理性能測定部２３および要素種別取得部２４を有する。処理性能測定部２３は、性能測定用データ１８をＢＥＳ４ｃ，４ｄに送信し、ＢＥＳ４ｃ，４ｄに対応付けられたコンピュータの処理性能を測定し、その結果をＢＥＳ情報テーブル１５に記述する。要素種別取得部２４は、構造化文書に出現しうる要素の名称や、要素のデータ型を取得する。
【００４５】
検索要求制御部２５は、ユーザからの検索処理の要求に従って、ＢＥＳ４ｃ，４ｄに対して検索処理を要求する。併せて、検索要求制御部２５は、ユーザが指定した検索処理の要求を要素情報テーブル１４の検索処理情報に蓄積する。具体的には、検索要求制御部２５は、構造化文書中の各要素について、検索処理の要求に含まれる要素の検索回数に１を加算し、検索回数を検索回数の総数で除算することで、検索確率を再計算する。
【００４６】
格納要求制御部３０は、ユーザからの格納処理の要求に従って、ＢＥＳ４ｃ，４ｄに対して検索処理を要求する。格納要求制御部３０は、ＢＥＳ決定部３１、文書解析部３２、検索確率取得部３３、処理時間見積もり部３４、ＢＥＳ情報更新部３５、および、文書格納要求部３６を有する。これらの格納要求制御部３０の各構成要素は、後記する図４の説明にて、明らかにする。
【００４７】
図４は、ＤＢシステムのメイン処理を示すフローチャートである。
【００４８】
処理性能測定部２３は、ＢＥＳ４ｃ，４ｄの性能を測定する（Ｓ１１）。要素種別取得部２４は、構造化文書の要素を特定するための要素種別特定情報を取得する（Ｓ１２）。アプリケーション処理部１は、構造化文書への処理要求として、検索要求または格納要求を受け付ける（Ｓ１３）。Ｓ１３の検索要求は、例えば、「fn:contains(/root/概要,"XML")」であり、「XMLという文字列を含む要素を、/root/概要以下の要素から検索する」旨を示す。Ｓ１３の格納要求は、例えば、「insert into t1 values(sample.xml)」であり、「t1というデータ領域に、sample.xmlという格納対象の構造化文書の値を格納する」旨を示す。処理要求制御部２１は、Ｓ１３で受け付けた構造化文書への処理要求の種別を判定する（Ｓ１４）。
【００４９】
まず、Ｓ１４で「検索（検索要求）」の場合、検索要求制御部２５は、Ｓ１３で受け付けた検索要求に応じたアクセス要求を生成し、ＢＥＳ４ｃ，４ｄへ送信する（Ｓ１５）。ＢＥＳ４ｃ，４ｄは、受信したアクセス要求に従って配下のＤＢ格納領域５０ｃ，５０ｄに格納された構造化文書に対して、検索を実行する。ここで、後記のＳ２１で説明するように、構造化文書の格納処理において、ＢＥＳ４ｃ，４ｄそれぞれにおける検索の処理時間見積もり合計値が均一化されているため、ＢＥＳ４ｃ，４ｄそれぞれのコンピュータの処理性能を最大限に活用した、高速な検索を実行することができる。
【００５０】
一方、Ｓ１４で「格納（格納要求）」の場合、ＢＥＳ決定部３１は、ＢＥＳ毎の処理時間を均一化するように、格納対象の構造化文書の格納先となるＢＥＳ４ｃ，４ｄを決定する（Ｓ２１）。具体的には、ＢＥＳ情報テーブル１５の処理時間見積もり合計値が最も小さいＢＥＳ４ｃ，４ｄを格納先として決定する。これにより、特定のＢＥＳ４ｃ，４ｄに格納処理が偏らなくなるため、各コンピュータの検索処理性能を効率的に活用した短時間での検索処理が可能となる。また、格納時に負荷が均一化されているため、データの偏りを是正するために、データベースを見直してデータを再配置する必要もない。
【００５１】
文書解析部３２は、格納する対象となる構造化文書を解析し（Ｓ２２）、その構造化文書における文書情報テーブル１６および文書内要素情報テーブル１７を作成する。ここで、構造化文書を構成する各要素間の親子関係を併せて抽出してもよい。
【００５２】
検索確率取得部３３は、構造化文書の各要素の検索確率を取得する（Ｓ２３）。具体的には、検索確率取得部３３は、各要素の要素種別特定情報を検索キーとして、要素確率テーブル１３または要素情報テーブル１４から検索確率を取得する。もし、双方のテーブルから異なる値の検索確率が取得できたときには、要素確率テーブル１３の検索確率を優先する。このような優先順位として理由は、要素確率テーブル１３の検索確率がユーザから明示的に与えられた値であるのに対し、要素情報テーブル１４の検索確率が過去の検索履歴から求められた推測値であるからである。
【００５３】
処理時間見積もり部３４は、Ｓ２２で作成した文書情報テーブル１６の検索対象データサイズ、および、Ｓ２３で取得した検索確率をもとに、格納する構造化文書の検索に要する処理時間を見積もる（Ｓ２４）。データサイズだけでなく、検索確率を考慮することにより、運用時に想定される検索要求に対する検索処理時間に近い見積もりを得ることができる。
【００５４】
ＢＥＳ情報更新部３５は、格納先となるＢＥＳ４ｃ，４ｄの処理時間見積もり合計値を更新する（Ｓ２５）。具体的には、格納先となるＢＥＳ４ｃ，４ｄの処理時間見積もり合計値に、Ｓ２４で見積もった処理時間を加算し、ＢＥＳ情報テーブル１５に格納する。
【００５５】
文書格納要求部３６は、構造化文書を格納する旨のアクセス要求を、Ｓ２１でＢＥＳ決定部３１が決定した格納先となるＢＥＳ４ｃ，４ｄへと送信する（Ｓ２６）。例えば、格納先となるＢＥＳ４ｃ，４ｄがＢＥＳ４ｄであるときには、ＢＥＳ４ｂは、アクセス要求を受け取り、ＤＢ格納領域５ｄに構造化文書を格納する。
【００５６】
図５は、具体例を用いて格納要求の処理（図４を適宜参照）を説明する説明図である。
【００５７】
Ｓ１３で、以下のＸＭＬ形式の構造化文書を、格納対象として受け付けたとする。
＜ｒｏｏｔ＞
＜氏名＞○○＜／氏名＞
＜概要＞○○＜／概要＞
＜本文＞○○＜／本文＞
＜図  ＞○○＜／図  ＞
＜／ｒｏｏｔ＞
【００５８】
Ｓ２１で、ＢＥＳ情報テーブル１５（追加前）の処理時間見積もり合計値が最小となるＢＥＳ「２」を、Ｓ１３で今回受け付けた構造化文書の格納先として決定する。次に、Ｓ２２で、今回受け付けた構造化文書を解析し、その結果として文書内要素情報テーブル１７を作成する。そして、Ｓ２３で、文書内要素情報テーブル１７に属する各要素の検索確率を、要素情報テーブル１４から取得する。
【００５９】
さらに、Ｓ２４で、文書内要素情報テーブル１７の要素サイズ合計値と、要素情報テーブル１４の検索確率との重み付け（積）を要素ごとに計算し（例えば、氏名なら、１５［ｂｙｔｅ］×２０［％］／１００＝３［ｂｙｔｅ］）、それらの積の総和をとる。その結果、今回受け付けた構造化文書の処理サイズ見積もり合計値である０．０３［ＭＢ］が求まる。
【００６０】
そして、Ｓ２５で、Ｓ２４で求めた処理サイズ見積もり合計値と、その値を処理性能で除算した商である処理時間見積もり合計値（０．００３［ｓｅｃ］）とを、ＢＥＳ情報テーブル１５（追加前）の格納先のＢＥＳ「２」の行に、それぞれ加算する。その結果、ＢＥＳ情報テーブル１５（追加前）は、ＢＥＳ情報テーブル１５（追加後）に更新される。なお、次回の構造化文書の格納先は、処理時間見積もり合計値が最小となるＢＥＳ「１」となる。
【００６１】
以上図５を参照して、構造化文書を格納する処理を説明した。その後、格納された構造化文書への削除要求を受けたときには、ＢＥＳ情報テーブル１５（追加後）からＢＥＳ情報テーブル１５（追加前）に戻すことにより、見積もりの精度を保つ。そのため、Ｓ２４で求めた処理サイズ見積もり合計値を履歴として記憶しておき、その処理サイズ見積もり合計値を、ＢＥＳ情報テーブル１５に記憶されている処理サイズ見積もり合計値から減算する。
【００６２】
図６は、処理性能測定部２３がＢＥＳ４ｃ，４ｄの性能を測定する処理（Ｓ１１）を示すフローチャートである。
【００６３】
まず、ＢＥＳ情報テーブル１５の処理性能が格納されていないＢＥＳ４ｃ，４ｄを順に選択するループを実行する（Ｓ１０１〜Ｓ１０６）。選択したＢＥＳ４ｃ，４ｄに対して、性能測定用データ１８を送信する（Ｓ１０２）。性能測定用データ１８を受信したＢＥＳ４ｃ，４ｄは、性能測定用の検索処理ベンチマークを実行し、検索結果を得るまでに要した処理時間を計測する（Ｓ１０３）。
【００６４】
そして、性能測定用データ１８のサイズを、Ｓ１０３で計測した処理時間で除算することで、ＢＥＳ４ｃ，４ｄが単位時間あたりに検索することができるデータサイズを、処理性能として計算する（Ｓ１０４）。さらに、計算した処理性能を、ＢＥＳ情報テーブル１５の選択したＢＥＳ４ｃ，４ｄに対応する処理性能に設定し（Ｓ１０５）、ループを閉じる（Ｓ１０６）。
【００６５】
以上図６で説明したＢＥＳ４ｃ，４ｄの性能を測定する処理は、ＢＥＳ４ｃ，４ｄの性能が全て同じときには、省略が可能である。このときには、ＢＥＳ４ｃ，４ｄの処理性能を示す値を所定値（１）で設定する。
【００６６】
図７は、要素種別取得部２４が構造化文書の要素を特定するための要素種別特定情報を取得する処理（Ｓ１２）を示すフローチャートである。
【００６７】
要素種別取得部２４は、スキーマ定義ファイル１１が存在するか否かを判断し（Ｓ２０１）、Ｓ２０１でＹｅｓならスキーマ定義ファイル１１の要素種別特定情報を取得し（Ｓ２０２）、Ｓ２０１でＮｏならＳ２０３に進む。
【００６８】
要素種別取得部２４は、要素特定参照テーブル１２が存在するか否かを判断し（Ｓ２０３）、Ｓ２０３でＹｅｓなら要素特定参照テーブル１２の要素種別特定情報を取得し（Ｓ２０４）、Ｓ２０３でＮｏならＳ２０５に進む。
【００６９】
要素種別取得部２４は、要素確率テーブル１３が存在するか否かを判断し（Ｓ２０５）、Ｓ２０５でＹｅｓなら要素確率テーブル１３の要素種別特定情報を取得し（Ｓ２０６）、Ｓ２０５でＮｏならＳ２０７に進む。
【００７０】
要素種別取得部２４は、取得した全ての要素種別特定情報を、要素情報テーブル１４の要素種別特定情報に設定する（Ｓ２０７）。
【００７１】
図８は、文書解析部３２が格納する対象となる構造化文書を解析する処理（Ｓ２２）を示すフローチャートである。
【００７２】
まず、ＸＭＬパーサなどの構造化文書解析ツールによって構造化文書を走査し、構造情報（親子関係や兄弟関係など）を取得する（Ｓ３０１）。構造情報とは、例えば、木構造データとして表現される。木構造データは、Ｗ３Ｃ ＤＯＭ(Document Object Model)やＷ３Ｃ ＸＤＭ(XQuery Data Model)で定められているような、構造化文書内の情報を保持したデータである。
【００７３】
一方、Ｓ３０１で解析する構造情報の別の一例として、行列で各要素を区切る２次元の表形式が挙げられる。表形式では、各要素は、ｍ行ｎ列で特定され、要素を示すタグ名は、ｎ列のフィールド名となる。
【００７４】
次に、抽出した構造情報をもとに構造化文書から要素ｅｌｅｍを１種類ずつ抽出するループを実行する（Ｓ３０２〜Ｓ３１０）。
【００７５】
そして、文書解析部３２は、要素ｅｌｅｍを示すタグが、スキーマ定義ファイル１１のスキーマ定義に一致するか否かを判断する（Ｓ３０３）。なお、Ｓ３０３の判定処理は、一致だけでなく、類似も含めて対応付けを行ってもよい。類似であるとは、例えば、要素ｅｌｅｍを示すタグ名の一部と、スキーマ定義とが一致することや、要素ｅｌｅｍからみて親要素を示すタグ名と、スキーマ定義とが一致することが挙げられる。
【００７６】
Ｓ３０３でＹｅｓの場合、一致したスキーマ定義に対応するスキーマ定義ファイル１１の要素種別特定情報を、要素ｅｌｅｍに対応づけ（Ｓ３０４）、Ｓ３０９に進む。
【００７７】
Ｓ３０３でＮｏの場合、文書解析部３２は、要素ｅｌｅｍの内容が要素特定参照テーブル１２の内容特徴情報に該当するか否かを判断し（Ｓ３０５）、Ｓ３０５でＹｅｓなら該当した内容特徴情報に対応する要素特定参照テーブル１２の要素種別特定情報を、要素ｅｌｅｍに対応づけ（Ｓ３０６）、Ｓ３０５でＮｏなら要素ｅｌｅｍの要素サイズ平均値と、要素特定参照テーブル１２のサイズ特徴情報または要素情報テーブル１４の要素サイズ平均値とを照合し、最も値の近い要素種別特定情報を特定する（Ｓ３０７）。Ｓ３０７の後、特定した要素種別特定情報を、要素ｅｌｅｍに対応づける（Ｓ３０８）。
【００７８】
Ｓ３０４、Ｓ３０６、または、Ｓ３０８で対応付けられた要素ｅｌｅｍについて、文書内要素情報テーブル１７の格納要素情報の各値を、要素ｅｌｅｍの分だけ追加する（Ｓ３０９）。具体的には、要素ｅｌｅｍの要素種別特定情報と一致するレコードを選択し、そのレコードの要素数に要素ｅｌｅｍの合計数を加算し、そのレコードの要素サイズ合計値に要素ｅｌｅｍの合計サイズ分を加算し、要素サイズ合計値／要素数＝要素サイズ平均値を計算する。そして、ループを閉じる（Ｓ３１０）。
【００７９】
図９（ａ）は、処理時間見積もり部３４が格納する構造化文書の検索に要する処理時間を見積もる処理（Ｓ２４）を示すフローチャートである。
【００８０】
まず、文書情報テーブル１６の検索対象データサイズを値「０」で初期化する（Ｓ４０１）。そして、文書内要素情報テーブル１７の各要素を順に１つずつ選択し、要素ｅとするループを実行する（Ｓ４０２〜Ｓ４０５）。
【００８１】
処理時間見積もり部３４は、要素ｅが検索対象外データであるか否かを判断し（Ｓ４０３）、Ｓ４０３でＹｅｓならＳ４０２で選択した要素ｅのデータサイズを検索対象データサイズに含めずにＳ４０５に進み、Ｓ４０３でＮｏならＳ４０４に進む。なお、検索対象外データとは、データベース管理システム側で定めた規則またはユーザが定めた規則であり、要素確率テーブル１３の検索確率＝０［％］となる要素種別特定情報としてあらかじめ指定されている。例えば、要素確率テーブル１３を参照すると、検索対象外データの要素種別特定情報は、バイナリの図や、要素種別が不定である場合が挙げられる。
【００８２】
Ｓ４０３でＮｏなら、要素ｅの要素サイズ合計値（文書内要素情報テーブル１７から取得）と、要素ｅの検索確率（要素確率テーブル１３または要素情報テーブル１４から取得）とを乗算して、要素ｅの重み付けサイズを計算する。そして、計算した要素ｅの重み付けサイズを、検索対象データサイズに加算する（Ｓ４０４）。
【００８３】
要素ｅのループを終了（Ｓ４０５）した後、文書情報テーブル１６から取得した検索対象データサイズを、ＢＥＳ情報テーブル１５の格納先の処理性能で除算することで、処理時間を見積もる（Ｓ４０６）。なお、ＢＥＳ４ｃ，４ｄの性能が全て同じときには、除算を省略し、検索対象データサイズを処理時間の代わりに見積もり値としてもよい。
【００８４】
以上、図９（ａ）で説明した処理は、以下の２つの形態として変形実施することも可能である。
【００８５】
変形実施（１）：Ｓ４０３の分岐を省略する形態とする。Ｓ４０３の分岐を省略すると、検索対象外データである要素ｅのデータサイズと、検索確率＝０との乗算（重み付け演算）が実施されるが、この積は０となる。よって、この積である０を加算しても検索対象データサイズは増加せず、Ｓ４０３の分岐を省略しない処理と同じ結果になる。
【００８６】
変形実施（２）：Ｓ４０４の重み付け演算の代わりに、要素ｅのデータサイズそのものを検索対象データサイズに加算する。これは、検索確率＝１００または０という２通りの簡易的な値が設定されているケースである。重み付け演算を行わないので、計算速度を向上することができる。
【００８７】
図９（ｂ）は、ＢＥＳ情報更新部３５が処理時間見積もり合計値を更新する処理（Ｓ２５）を示すフローチャートである。
【００８８】
まず、ＢＥＳ情報テーブル１５から、格納先のＢＥＳ４ｃ，４ｄに対応する処理サイズ見積もり合計値および処理時間見積もり合計値を取得する（Ｓ４１１）。次に、取得した処理サイズ見積もり合計値に、検索対象データサイズ（文書情報テーブル１６から取得）を加算する（Ｓ４１２）。そして、取得した処理時間見積もり合計値に、見積もった処理時間見積もりを加算する（Ｓ４１３）。さらに、加算した各データ値を、ＢＥＳ情報テーブル１５に書き込む（Ｓ４１４）。
【００８９】
図１０は、検索要求制御部２５が受け付けた検索要求をＢＥＳ４ｃ，４ｄに送信する処理（Ｓ１５）を示すフローチャートである。
【００９０】
まず、ＢＥＳ４ｃ，４ｄに対して、検索要求を送信した（Ｓ５０１）後に、要素情報テーブル１４の更新処理を行う。具体的には、ユーザから構造化文書に対する検索要求を受け付けたので、検索回数合計値に１を加算する（Ｓ５０２）。次に、Ｓ３０１と同様に、検索要求を構文解析および意味解析し、検索対象となった構造化文書の要素種別を特定する（Ｓ５０３）。
【００９１】
ここで、Ｓ５０３で特定した要素Ｅを１つずつ選択するループを実行する（Ｓ５０４〜Ｓ５０７）。要素情報テーブル１４の検索処理情報について、要素Ｅの検索回数の値をインクリメント（１を加算）する（Ｓ５０５）。Ｓ５０５で加算された検索回数を、検索回数合計値で除算することで要素Ｅの検索確率を再計算し、その検索確率を要素情報テーブル１４の検索処理情報に更新する（Ｓ５０６）。そして、選択した要素Ｅについてのループを閉じる（Ｓ５０７）。
【図面の簡単な説明】
【００９２】
【図１】本発明の一実施形態に関するＤＢシステムのハードウェア構成を示す構成図である。
【図２】本発明の一実施形態に関する情報処理装置のハードウェア構成を示す構成図である。
【図３】本発明の一実施形態に関するＤＢシステムの機能概略を示す構成図である。
【図４】本発明の一実施形態に関するＤＢシステムのメイン処理を示すフローチャートである。
【図５】本発明の一実施形態に関する格納要求の処理を示す説明図である。
【図６】本発明の一実施形態に関するＢＥＳ４ｃ，４ｄの性能を測定する処理を示すフローチャートである。
【図７】本発明の一実施形態に関する構造化文書の要素を特定するための要素種別特定情報を取得する処理を示すフローチャートである。
【図８】本発明の一実施形態に関する格納する対象となる構造化文書を解析する処理を示すフローチャートである。
【図９】本発明の一実施形態に関する格納する構造化文書の検索に要する処理時間を見積もり、その合計値を更新する処理を示すフローチャートである。
【図１０】本発明の一実施形態に関する受け付けた検索要求をＢＥＳ４ｃ，４ｄに送信する処理を示すフローチャートである。
【符号の説明】
【００９３】
１      アプリケーション処理部
３      ＦＥＳ（構造化文書処理装置、コンピュータ）
４ｃ，４ｄ  ＢＥＳ（アクセスサーバ）
５ｂ，５ｃ，５ｄ  データベース
１１    スキーマ定義ファイル
１２    要素特定参照テーブル
１３    要素確率テーブル（要素情報）
１４    要素情報テーブル（要素情報）
１５    ＢＥＳ情報テーブル（アクセスサーバ情報）
１６    文書情報テーブル
１７    文書内要素情報テーブル
１８    性能測定用データ
２１    処理要求制御部
２２    基礎情報取得部
２３    処理性能測定部
２４    要素種別取得部
２５    検索要求制御部
３０    格納要求制御部
３１    ＢＥＳ決定部
３２    文書解析部
３３    検索確率取得部
３４    処理時間見積もり部
３５    ＢＥＳ情報更新部
３６    文書格納要求部
１２１ｂ，１２１ｄ  ＤＢＭＳ（データベース管理システム）
【図１】
2009064392.tif 000010
【図２】
2009064392.tif 000011
【図３】
2009064392.tif 000012
【図４】
2009064392.tif 000013
【図５】
2009064392.tif 000014
【図６】
2009064392.tif 000015
【図７】
2009064392.tif 000016
【図８】
2009064392.tif 000017
【図９】
2009064392.tif 000018
【図１０】
2009064392.tif 000019