(57)【要約】【課題】データベースへのアクセスを減らし、データベースの負荷を軽減することが可能な技術を提供する。【解決手段】データベースへのアクセス処理で要求されたデータに対する処理を行うデータ処理方法において、データのアクセス要求を受信して、その受信したアクセス要求によって要求されたデータの取得を指示するステップと、前記データの取得指示を受け付けて、前記アクセス要求によりアクセスされるアクセス対象のデータを識別する為の管理ＩＤを当該アクセス要求の内容に応じて生成し、その生成された管理ＩＤで識別されるデータをキャッシュ管理装置から取得するステップと、前記取得されたデータへのアクセスを行うステップとを有するものである。【選択図】        図１
2004240575.tif 000002
【特許請求の範囲】
【請求項１】
データベースへのアクセス処理で要求されたデータに対する処理を行うデータ処理方法において、
データのアクセス要求を受信して、その受信したアクセス要求によって要求されたデータの取得を指示するステップと、前記データの取得指示を受け付けて、前記アクセス要求によりアクセスされるアクセス対象のデータを識別する為の管理ＩＤを当該アクセス要求の内容に応じて生成し、その生成された管理ＩＤで識別されるデータをキャッシュ管理装置から取得するステップと、前記取得されたデータへのアクセスを行うステップとを有することを特徴とするデータ処理方法。
【請求項２】
データベースへのアクセス処理でアクセスされたデータを記憶装置上へ格納して管理するデータ処理方法において、
アクセス処理の内容に応じて生成された管理ＩＤを受信して、その受信した管理ＩＤで識別されるデータの記憶装置からの抽出を指示するステップと、前記データの抽出指示を受け付けて、前記管理ＩＤで識別されるデータを記憶装置から抽出するステップと、前記抽出されたデータを当該データの取得要求元へ送信するステップとを有することを特徴とするデータ処理方法。
【請求項３】
データベースへのアクセス処理で要求されたデータに対する処理を行うデータ処理方法において、
データのアクセス要求を受信して、その受信したアクセス要求によって要求されたデータの取得を指示するステップと、前記データの取得指示を受け付けて、前記アクセス要求によりアクセスされるアクセス対象のデータを識別する為の管理ＩＤを当該アクセス要求の内容に応じて生成し、その生成された管理ＩＤで識別されるデータの取得を要求するステップと、
前記取得要求により送信された管理ＩＤを受信して、その受信した管理ＩＤで識別されるデータの記憶装置からの抽出を指示するステップと、前記データの抽出指示を受け付けて、前記管理ＩＤで識別されるデータを記憶装置から抽出するステップと、前記抽出されたデータへのアクセスを行うステップとを有することを特徴とするデータ処理方法。
【請求項４】
アクセス要求元で入力されたアクセス条件がアクセス要求中に含まれている場合に、そのアクセス条件の入力が行われたセッションを識別する為の端末ＩＤを用いて前記管理ＩＤを生成することを特徴とする請求項１乃至請求項３のいずれか１項に記載されたデータ処理方法。
【請求項５】
予め指定されたアクセス条件がアクセス要求中に含まれている場合に、そのアクセス条件を識別する為の識別情報を用いて前記管理ＩＤを生成することを特徴とする請求項１乃至請求項３のいずれか１項に記載されたデータ処理方法。
【請求項６】
前記管理ＩＤで識別されるデータが記憶装置に格納されてから所定の生存期間が経過している場合に、データベースから最新のデータを取得して当該管理ＩＤに対応する記憶装置の内容を更新することを特徴とする請求項２乃至請求項５のいずれか１項に記載されたデータ処理方法。
【請求項７】
データベースへのアクセス処理で要求されたデータに対する処理を行うデータ処理装置において、
データのアクセス要求を受信して、その受信したアクセス要求によって要求されたデータの取得を指示し、その指示により取得されたデータへのアクセスを行うデータ取得制御部と、
前記データの取得指示を受け付けて、前記アクセス要求によりアクセスされるアクセス対象のデータを識別する為の管理ＩＤを当該アクセス要求の内容に応じて生成し、その生成された管理ＩＤで識別されるデータをキャッシュ管理装置から取得するデータ取得処理部とを備えることを特徴とするデータ処理装置。
【請求項８】
データベースへのアクセス処理でアクセスされたデータを記憶装置上へ格納して管理するキャッシュ管理装置において、
アクセス処理の内容に応じて生成された管理ＩＤを受信して、その受信した管理ＩＤで識別されるデータの記憶装置からの抽出を指示し、その指示により抽出されたデータを当該データの取得要求元へ送信するキャッシュ管理処理部と、
前記データの抽出指示を受け付けて、前記管理ＩＤで識別されるデータを記憶装置から抽出するキャッシュデータ抽出処理部とを備えることを特徴とするキャッシュ管理装置。
【請求項９】
データベースへのアクセス処理で要求されたデータに対する処理を行うデータ処理システムにおいて、
データのアクセス要求を受信して、その受信したアクセス要求によって要求されたデータの取得を指示し、その指示により取得されたデータへのアクセスを行うデータ取得制御部と、前記データの取得指示を受け付けて、前記アクセス要求によりアクセスされるアクセス対象のデータを識別する為の管理ＩＤを当該アクセス要求の内容に応じて生成し、その生成された管理ＩＤで識別されるデータをキャッシュ管理装置から取得するデータ取得処理部と、
前記管理ＩＤを受信して、その受信した管理ＩＤで識別されるデータの記憶装置からの抽出を指示し、その指示により抽出されたデータを当該データの取得要求元へ送信するキャッシュ管理処理部と、前記データの抽出指示を受け付けて、前記管理ＩＤで識別されるデータを記憶装置から抽出するキャッシュデータ抽出処理部とを備えることを特徴とするデータ処理システム。
【請求項１０】
アクセス要求元で入力されたアクセス条件がアクセス要求中に含まれている場合に、そのアクセス条件の入力が行われたセッションを識別する為の端末ＩＤを用いて前記管理ＩＤを生成することを特徴とする請求項７乃至請求項９のいずれか１項に記載された情報処理装置。
【請求項１１】
予め指定されたアクセス条件がアクセス要求中に含まれている場合に、そのアクセス条件を識別する為の識別情報を用いて前記管理ＩＤを生成することを特徴とする請求項７乃至請求項９のいずれか１項に記載された情報処理装置。
【請求項１２】
前記管理ＩＤで識別されるデータが記憶装置に格納されてから所定の生存期間が経過している場合に、データベースから最新のデータを取得して当該管理ＩＤに対応する記憶装置の内容を更新することを特徴とする請求項８乃至請求項１１のいずれか１項に記載された情報処理装置。
【請求項１３】
データベースへのアクセス処理で要求されたデータに対する処理を行うデータ処理装置としてコンピュータを機能させる為のプログラムにおいて、
データのアクセス要求を受信して、その受信したアクセス要求によって要求されたデータの取得を指示し、その指示により取得されたデータへのアクセスを行うデータ取得制御部と、
前記データの取得指示を受け付けて、前記アクセス要求によりアクセスされるアクセス対象のデータを識別する為の管理ＩＤを当該アクセス要求の内容に応じて生成し、その生成された管理ＩＤで識別されるデータをキャッシュ管理装置から取得するデータ取得処理部としてコンピュータを機能させることを特徴とするプログラム。
【請求項１４】
データベースへのアクセス処理でアクセスされたデータを記憶装置上へ格納して管理するキャッシュ管理装置としてコンピュータを機能させる為のプログラムにおいて、
アクセス処理の内容に応じて生成された管理ＩＤを受信して、その受信した管理ＩＤで識別されるデータの記憶装置からの抽出を指示し、その指示により抽出されたデータを当該データの取得要求元へ送信するキャッシュ管理処理部と、
前記データの抽出指示を受け付けて、前記管理ＩＤで識別されるデータを記憶装置から抽出するキャッシュデータ抽出処理部としてコンピュータを機能させることを特徴とするプログラム。
【請求項１５】
データベースへのアクセス処理で要求されたデータに対する処理を行うデータ処理システムとしてコンピュータを機能させる為のプログラムにおいて、
データのアクセス要求を受信して、その受信したアクセス要求によって要求されたデータの取得を指示し、その指示により取得されたデータへのアクセスを行うデータ取得制御部と、前記データの取得指示を受け付けて、前記アクセス要求によりアクセスされるアクセス対象のデータを識別する為の管理ＩＤを当該アクセス要求の内容に応じて生成し、その生成された管理ＩＤで識別されるデータをキャッシュ管理装置から取得するデータ取得処理部と、
前記管理ＩＤを受信して、その受信した管理ＩＤで識別されるデータの記憶装置からの抽出を指示し、その指示により抽出されたデータを当該データの取得要求元へ送信するキャッシュ管理処理部と、前記データの抽出指示を受け付けて、前記管理ＩＤで識別されるデータを記憶装置から抽出するキャッシュデータ抽出処理部としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はデータベース上のデータへのアクセスを行うデータ処理システムに関し、特にインターネット等のネットワークを介してＤＢサーバ上の商品情報等のデータを検索してユーザ側のクライアント装置へ表示するデータ処理システムに適用して有効な技術に関するものである。
【０００２】
【従来の技術】
従来、インターネット等のネットワークを介してユーザ側のクライアント装置と、電子ショッピングシステムを構成するＷｅｂサーバ、コマースサーバ及びＤＢサーバとを接続し、ＤＢサーバで検索された商品情報をクライアント装置上に表示してユーザからの注文を受け付け、商品を販売する処理が行われており、インターネットショッピングで、ユーザが掲載しているサイトを知らなくても、希望する商品を素早く探し出して購入することのできる商品情報検索システム等が提案されている（例えば特許文献１参照）。
【０００３】
この様な電子ショッピングシステムにおける商品データの検索では、ヒット件数が数１００件以上となる場合等、ヒット件数が多い場合に１ページに表示する件数を数十件に限定し、複数ページで商品データを表現させることが多い。この場合、１ページ目を表示する為に、一度、ＤＢサーバから商品情報を取得した後、２ページ以降の表示を行う際にも１ページ目と同様にＤＢアクセスを行い、ｎページ目のデータを作成している。
【０００４】
また前記電子ショッピングシステムでは、お勧め商品の検索等を行う為の所定の検索条件を登録しておき、ユーザからのアクセス時に自動的に所定の検索結果を表示してユーザに購入を勧める処理も行われているが、この様な機能を複数のユーザが利用し、複数のユーザが同一検索条件での検索を行った場合、ユーザ毎にＤＢアクセスを行い、それぞれが検索結果を得ている。
【０００５】
【特許文献１】
特開２００２−３４２３５４号公報
【０００６】
【発明が解決しようとする課題】
前記の様に従来の電子ショッピングシステムでは、多くの商品データを複数ページで表示する場合に、各ページの表示毎にＤＢサーバで検索処理を行って商品情報を取得している。この際、１ページ目を作成するときに、既にｎページ目のデータも取得しているが、１ページ目のデータ以外を破棄しており無駄が多い。
【０００７】
また前記電子ショッピングシステムでは、複数のユーザが同一検索条件での利用を行った場合でも、ユーザ毎にＤＢアクセスを行って、それぞれが検索結果を得ているが、この様な検索ではユーザによって検索条件を変更することができない為、どのユーザの検索結果も同じであり、２番目以降のユーザ操作によるＤＢアクセスは、１番目の検索結果を保持していれば無駄であると言える。
【０００８】
本発明の目的は上記問題を解決し、データベースへのアクセスを減らし、データベースの負荷を軽減することが可能な技術を提供することにある。
【０００９】
【課題を解決するための手段】
本発明は、データベースへのアクセス処理で要求されたデータに対する処理を行うデータ処理システムにおいて、データベースへのアクセス処理の内容に対応する管理ＩＤで識別されるデータを記憶装置から抽出して要求された処理を行うものである。
【００１０】
本発明では、インターネット等のネットワークで接続されたクライアント装置から商品データの検索等のデータベースへのアクセス処理が要求されると、クライアントへのＷｅｂページを作成するデータ処理装置であるＷｅｂサーバは、データ取得制御部によりネットワークを介して前記アクセス要求を受信し、その受信したアクセス要求によって要求されているデータの取得をデータ取得処理部へ指示する。
【００１１】
データ取得処理部は、前記データの取得指示を受け付けて、前記アクセス要求によりアクセスされる対象データを識別する為の管理ＩＤを当該アクセス要求の内容に応じて生成し、その生成された管理ＩＤで識別されるデータの取得を、キャッシュ管理装置として機能しているコマースサーバへ要求する。
【００１２】
この際、データ取得処理部は、アクセス要求元のクライアント装置で入力されたアクセス条件が前記アクセス要求中に含まれている場合には、そのアクセス条件の入力が行われたセッションを識別する為の端末ＩＤを用いて前記管理ＩＤを生成し、また、予めＷｅｂサーバによって指定されたアクセス条件がアクセス要求中に含まれている場合には、そのアクセス条件を識別する為の識別情報を用いて前記管理ＩＤを生成する。
【００１３】
例えば、前記アクセス要求が、ユーザによって入力された検索条件による商品データの検索要求である場合には、そのセッションを識別する為の端末ＩＤを用いて前記管理ＩＤを生成し、また、予めＷｅｂサーバによって指定されたお勧め商品等の検索である場合には、その検索条件を識別する為の識別情報として、お勧め商品の検索であることを示す目的コードや、検索対象の商品を示すカテゴリコード等を用いて前記管理ＩＤを生成する。
【００１４】
コマースサーバのキャッシュ管理処理部は、前記取得要求により送信された管理ＩＤを受信して、その受信した管理ＩＤで識別されるデータの記憶装置からの抽出をキャッシュデータ抽出処理部に指示する。
【００１５】
キャッシュデータ抽出処理部は、前記データの抽出指示を受け付けた後、前記管理ＩＤで識別されるデータを記憶装置上のメモリキャッシュから抽出し、その抽出されたデータをＷｅｂサーバへ送信する。ここでキャッシュ管理処理部は、前記管理ＩＤで識別されるデータがメモリキャッシュから抽出されなかった場合に、ＤＢサーバのデータベースに対するアクセス処理を実行して前記データを含む処理結果をＤＢサーバから取得し、キャッシュデータ格納処理部により、前記処理結果中のデータを前記管理ＩＤと対応付けてメモリキャッシュ中に格納する。
【００１６】
Ｗｅｂサーバのデータ取得処理部は、コマースサーバから送信されたデータを受信してデータ取得制御部へ渡し、データ取得制御部は、クライアント装置からのアクセス要求の内容に従ってそのデータに対する処理を実行する。例えば、データの検索要求である場合には、そのデータを表示する為のＷｅｂページの作成等の処理を行った後、作成したページデータをアクセス要求元のクライアント装置へ送信する。
【００１７】
前記の様に本発明では、前記アクセス要求によりアクセスされるデータの数が多く、複数のページにより表示が行われる場合に、従来の処理で破棄していたデータをコマースサーバ上のメモリキャッシュに保持し、２ページ目以降を表示する場合には、ＤＢサーバへのアクセスを行わずに、メモリキャッシュからｎページ目のデータを取得してクライアント装置へ送信するので、ＤＢサーバへのアクセスを減らすことができる。
【００１８】
また本発明では、複数のユーザによって同一のアクセス条件で処理されるデータを、１番目のユーザがアクセス要求を行った際にメモリキャッシュに保持するので、２番目以降のユーザが同一のアクセス処理を行った場合に、ＤＢサーバへのアクセスを行わずにメモリキャッシュ上のデータを用いてその処理を実行し、ＤＢサーバへの負荷を軽減することができる。
【００１９】
以上の様に本発明のデータ処理システムによれば、データベースへのアクセス処理の内容に対応する管理ＩＤで識別されるデータを記憶装置から抽出して要求された処理を行うので、データベースへのアクセスを減らし、データベースの負荷を軽減することが可能である。
【００２０】
【発明の実施の形態】
以下にクライアント装置からの検索処理で要求された商品データをコマースサーバ上のメモリキャッシュから取得する電子ショッピングシステム一実施形態のデータ処理システムについて説明する。
【００２１】
図１は本実施形態の電子ショッピングシステムの概略構成を示す図である。図１に示す様に本実施形態の電子ショッピングシステムは、Ｗｅｂサーバ１０１と、コマースサーバ１０２と、ＤＢサーバ１０３と、クライアント装置１１１〜１１４と、ネットワーク１２０とを有している。
【００２２】
Ｗｅｂサーバ１０１は、クライアント装置１１１〜１１４から要求されたデータをキャッシュ管理装置であるコマースサーバ１０２から取得して要求元へ送信するデータ処理装置であり、この電子ショッピングシステムでの商品購入の際に用いられるＷｅｂページを作成してクライアント装置１１１〜１１４へ送信する情報処理装置である。
【００２３】
コマースサーバ１０２は、ＤＢサーバ１０３のデータベースへのアクセス処理でアクセスされたデータを記憶装置上のメモリキャッシュへ格納して管理するキャッシュ管理装置であり、この電子ショッピングシステムでの商品の販売に伴うＤＢサーバ１０３へのアクセスや、購入商品のバスケット処理、購入代金支払い時の与信処理等を行う情報処理装置である。
【００２４】
図１の様に本実施形態の電子ショッピングシステムでは、複数のコマースサーバ１０２のそれぞれに複数のＷｅｂサーバ１０１が接続されており、各Ｗｅｂサーバがどのコマースサーバを使用するかは予め設定されているものとする。
【００２５】
ＤＢサーバ１０３は、商品データや在庫データを格納しているデータベースを管理する情報処理装置である。クライアント装置１１１〜１１４は、ユーザからの商品データの検索条件や購入指示等の入力を受け付けてＷｅｂサーバ１０１へ送信し、商品データの検索結果や商品の購入状況等を示すページデータを受信して表示する処理装置である。ネットワーク１２０は、クライアント装置１１１〜１１４とＷｅｂサーバ１０１とを接続するインターネット等の通信回線である。
【００２６】
図２は本実施形態のメモリキャッシュを用いたデータ処理の処理概要を示す図である。図２に示すように本実施形態のメモリキャッシュは、ＤＢサーバ１０３のデータベースより取得した検索結果を、コマースサーバ１０２のメモリ上に展開し、保持しているメモリ領域であり、検索結果と管理情報全てのメモリ領域を指すものとする。
【００２７】
セッションキャッシュは、上記のメモリキャッシュの内、ユーザ（セッション）単位に管理されることを想定したメモリ領域であり、グローバルキャッシュは、上記のメモリキャッシュの内、ユーザ単位ではなく、電子ショッピングシステム全体で管理されることを想定したメモリ領域である。また本実施形態では、検索結果と管理情報からなる、１検索結果をメモリ上に保持する単位として「キャッシュ面」という用語を用いるものとする。
【００２８】
図３は本実施形態のＷｅｂサーバ１０１の概略構成を示す図である。図３に示す様に本実施形態のＷｅｂサーバ１０１は、ＣＰＵ３０１と、メモリ３０２と、磁気ディスク装置３０３と、入力装置３０４と、出力装置３０５と、ＣＤ−ＲＯＭ装置３０６と、通信装置３０７とを有している。
【００２９】
ＣＰＵ３０１は、Ｗｅｂサーバ１０１全体の動作を制御する装置である。メモリ３０２は、Ｗｅｂサーバ１０１全体の動作を制御する際にその為の各種処理プログラムやデータをロードする記憶装置である。
【００３０】
磁気ディスク装置３０３は、前記各種処理プログラムやデータを格納しておく記憶装置である。入力装置３０４は、作成するＷｅｂページの定義情報や、予めＷｅｂサーバ１０１によって指定された検索条件を識別する為の目的コードやカテゴリコード等の各種入力を行う装置である。
【００３１】
出力装置３０５は、Ｗｅｂページの作成に伴う各種出力を行う装置である。ＣＤ−ＲＯＭ装置３０６は、前記各種処理プログラムを記録したＣＤ−ＲＯＭの内容を読み出す装置である。通信装置３０７は、インターネットやイントラネット等のネットワーク１２０を介して他の処理装置との通信を行う装置である。
【００３２】
またＷｅｂサーバ１０１は、ページ作成処理部３１１と、セッションデータ取得処理部３１２と、グローバルデータ取得処理部３１３とを有している。
【００３３】
ページ作成処理部３１１は、データの検索要求をクライアント装置１１１〜１１４から受信して、その受信した検索要求によって要求されたデータの取得を指示し、その指示により取得されたデータを検索要求元へ送信するデータ取得制御部であり、要求された商品データを表示する為のＷｅｂページを作成してクライアント装置１１１〜１１４に送信する処理部である。
【００３４】
セッションデータ取得処理部３１２は、前記データの取得指示を受け付けて、前記検索要求により検索される検索対象のデータを識別する為の管理ＩＤを当該検索要求の内容に応じて生成し、その生成された管理ＩＤで識別されるデータをコマースサーバ１０２から取得するデータ取得処理部であり、検索要求元で入力された検索条件が検索要求中に含まれている場合に、その検索条件の入力が行われたセッションを識別する為の端末ＩＤを用いて前記管理ＩＤを生成し、データを取得する処理部である。
【００３５】
グローバルデータ取得処理部３１３は、セッションデータ取得処理部３１２と同様に管理ＩＤで識別されるデータをコマースサーバ１０２から取得するデータ取得処理部であり、予め指定された検索条件が検索要求中に含まれている場合に、その検索条件を識別する為の目的コードやカテゴリコード等の識別情報を用いて前記管理ＩＤを生成し、データを取得する処理部である。
【００３６】
Ｗｅｂサーバ１０１をページ作成処理部３１１、セッションデータ取得処理部３１２及びグローバルデータ取得処理部３１３として機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【００３７】
図４は本実施形態のコマースサーバ１０２の概略構成を示す図である。図４に示す様に本実施形態のコマースサーバ１０２は、ＣＰＵ４０１と、メモリ４０２と、磁気ディスク装置４０３と、入力装置４０４と、出力装置４０５と、ＣＤ−ＲＯＭ装置４０６と、通信装置４０７と、メモリキャッシュ４０８とを有している。
【００３８】
ＣＰＵ４０１は、コマースサーバ１０２全体の動作を制御する装置である。メモリ４０２は、コマースサーバ１０２全体の動作を制御する際にその為の各種処理プログラムやデータをロードする記憶装置である。
【００３９】
磁気ディスク装置４０３は、前記各種処理プログラムやデータを格納しておく記憶装置である。入力装置４０４は、メモリキャッシュ４０８の管理、商品の販売に伴うＤＢサーバ１０３へのアクセス、購入商品のバスケット処理や、購入代金支払い時の与信処理等に関する各種入力を行う装置である。
【００４０】
出力装置４０５は、メモリキャッシュ４０８の管理状況や商品の売買状況の表示等、キャッシュ管理処理及び電子ショッピング処理の実行に伴う各種出力を行う装置である。ＣＤ−ＲＯＭ装置４０６は、前記各種処理プログラムを記録したＣＤ−ＲＯＭの内容を読み出す装置である。
【００４１】
通信装置４０７は、インターネットやイントラネット等のネットワーク１２０を介して他の処理装置との通信を行う装置である。メモリキャッシュ４０８は、ＤＢサーバ１０３のデータベースへの検索処理で検索されたレコードデータを格納したキャッシュデータと、それらを管理する為の管理情報を格納したキャッシュテーブル及びマップを保持するメモリ領域である。
【００４２】
またコマースサーバ１０２は、キャッシュ管理処理部４１１と、キャッシュデータ抽出処理部４１２と、キャッシュデータ格納処理部４１３とを有している。
【００４３】
キャッシュ管理処理部４１１は、メモリキャッシュ４０８中のデータを識別する為の管理ＩＤを受信して、その受信した管理ＩＤで識別されるデータのメモリキャッシュ４０８からの抽出を指示し、その指示により抽出されたデータを当該データの取得要求元へ送信する処理部であり、前記管理ＩＤで識別されるデータがメモリキャッシュ４０８から抽出されなかった場合には、ＤＢサーバ１０３のデータベースに対する検索処理を実行して前記データを含む検索結果をデータベースから取得してメモリキャッシュ４０８への格納を指示する処理部である。
【００４４】
キャッシュデータ抽出処理部４１２は、前記データの抽出指示を受け付けて、前記管理ＩＤで識別されるデータをメモリキャッシュ４０８から抽出する処理部である。キャッシュデータ格納処理部４１３は、前記検索結果中のデータを前記管理ＩＤと対応付けてメモリキャッシュ４０８中に格納する処理部である。
【００４５】
コマースサーバ１０２をキャッシュ管理処理部４１１、キャッシュデータ抽出処理部４１２及びキャッシュデータ格納処理部４１３として機能させる為のプログラムは、ＣＤ−ＲＯＭ等の記録媒体に記録され磁気ディスク等に格納された後、メモリにロードされて実行されるものとする。なお前記プログラムを記録する記録媒体はＣＤ−ＲＯＭ以外の他の記録媒体でも良い。また前記プログラムを当該記録媒体から情報処理装置にインストールして使用しても良いし、ネットワークを通じて当該記録媒体にアクセスして前記プログラムを使用するものとしても良い。
【００４６】
図５は本実施形態のメモリキャッシュ４０８の構成例を示す図である。図５に示す様に本実施形態のメモリキャッシュ４０８は、キャッシュテーブル５００と、キャッシュデータ５１０と、マップ５２０とを有している。
【００４７】
キャッシュテーブル５００は、キャッシュデータ５１０の管理ＩＤや作成された日時等を示すメモリキャッシュ情報を格納するテーブルである。キャッシュデータ５１０は、ＤＢサーバ１０３のデータベースへの検索処理で検索されたレコードデータである。マップ５２０は、管理ＩＤに対応したキャッシュデータ５１０の情報を格納しているキャッシュテーブル５００の位置情報を格納するテーブルである。
【００４８】
キャッシュテーブル５００は、キャッシュＩＤ５０１と、作成日時５０２と、ＤＢヒット件数５０３と、キャッシュレコード数５０４と、キャッシュデータポインタ５０５とを有している。
【００４９】
キャッシュＩＤ５０１は、キャッシュデータポインタ５０５で示されるキャッシュデータ５１０を識別する為の識別情報であり、そのレコードデータが検索されたときに用いられた管理ＩＤと同じものである。
【００５０】
作成日時５０２は、データベース検索が行われ、キャッシュＩＤ５０１で識別されるキャッシュデータ５１０が作成された日時を示す情報である。ＤＢヒット件数５０３は、キャッシュＩＤ５０１で識別されるキャッシュデータ５１０が検索された際にＤＢサーバ１０３でヒットしたレコードの件数を示す情報である。
【００５１】
キャッシュレコード数５０４は、前記ヒットしたレコードの内でメモリキャッシュ４０８内に格納されているレコードの数を示す情報である。キャッシュデータポインタ５０５は、キャッシュＩＤ５０１で識別されるキャッシュデータ５１０が格納されているメモリキャッシュ４０８内の位置を示す情報である。
【００５２】
マップ５２０は、キャッシュＩＤ５２１と、格納位置５２２とを有している。キャッシュＩＤ５２１は、キャッシュテーブル５００に格納されているキャッシュＩＤ５０１と同じ識別情報である。格納位置５２２は、キャッシュＩＤ５２１で識別されるメモリキャッシュ情報が格納されているキャッシュテーブル５００内の位置を示す情報である。
【００５３】
また、図５の最大キャッシュ面数、最大キャッシュレコード件数、自動キャッシュリフレッシュフラグ、キャッシュ生存期間、新規キャッシュ格納位置は、それぞれメモリキャッシュ４０８中に設定されるキャッシュ面の最大値、各キャッシュ面に格納される最大レコード件数、所定の生存期間経過後にレコードデータ５１０の更新を行うかどうかを示すフラグ、前記生存期間の秒数、新規のキャッシュデータを格納する際にメモリキャッシュ情報を格納するキャッシュテーブル５００内の位置を示している。
【００５４】
図５に示すキャッシュＩＤ５０１やキャッシュＩＤ５２１は、前記管理ＩＤと同じもので、メモリキャッシュ４０８で管理される検索結果をユニークに特定する為のＩＤであり、メモリキャッシュ毎にユニークであるものとする。
【００５５】
このＩＤとしては、セッションキャッシュでは、「端末ＩＤ＋ｎ」を想定し、グローバルキャッシュでは、Ｗｅｂサーバ１０１の上位ユーザプログラムで採番した「目的コード＋カテゴリコード」等のユニークとなるＩＤを想定するものとする。ここで、「セッションＩＤ＋ｎ」の「ｎ」は、Ｗｅｂブラウザの「検索」ボタンが押された場合のカウント数であるものとする。
【００５６】
本実施形態のキャッシュデータ５１０は、キャッシュテーブル５００で管理され、管理ＩＤ（キャッシュＩＤ５２１）とそのメモリキャッシュ情報の格納位置５２２はマップ５２０で管理される。
【００５７】
キャッシュデータ５１０を取得する際、マップ５２０からからキャッシュＩＤ５２１をキーにしてメモリキャッシュ情報の格納位置５２２を求め、その格納位置５２２が指すキャッシュテーブル５００のキャッシュ面から指定された件数分のレコードを取得する。
【００５８】
キャッシュデータ５１０を登録する際には、図５の新規キャッシュ格納位置が指すキャッシュテーブル５００のキャッシュ面にそのメモリキャッシュ情報が必ず登録され、新規キャッシュ格納位置の値がインクリメントされる。
【００５９】
次に、本実施形態のデータ処理システムである電子ショッピング処理システムにおいて、インターネット等のネットワーク１２０で接続されたクライアント装置１１１〜１１４から商品データの検索等のデータベースへのアクセス処理が要求された場合の処理手順についてＰＡＤ（Ｐｒｏｂｌｅｍ  Ａｎａｌｙｓｉｓ  Ｄｉａｇｒａｍ）を参照して説明する。なお本実施形態では、クライアント装置１１１〜１１４からの検索要求時にメモリキャッシュ４０８からデータを取得する処理について説明するが、検索以外の更新等の処理にメモリキャッシュ４０８を用いるものとしても良い。
【００６０】
図６は本実施形態のページ作成処理の処理内容を示す図である。図６に示す様にＷｅｂサーバ１０１のページ作成処理部３１１は、データの検索要求をクライアント装置１１１〜１１４から受信して、その受信した検索要求によって要求されたデータの取得を指示し、要求された商品データを表示する為のＷｅｂページを作成してクライアント装置１１１〜１１４に送信する処理を行う。
【００６１】
ステップ６０１でＷｅｂサーバ１０１のページ作成処理部３１１は、インターネット等のネットワーク１２０で接続されたクライアント装置１１１〜１１４から、商品データの検索等のデータベースへのアクセス処理を要求するリクエストを受信しているかどうかを調べ、前記リクエストを受信している場合にはステップ６０２へ進む。
【００６２】
ステップ６０２では、前記受信したリクエストの内容を読み出して、検索要求元のクライアント側で入力された検索条件がそのリクエスト中に含まれているかどうかを調べ、クライアント側で入力された検索条件が含まれている場合にはステップ６０３へ進む。ステップ６０３では、前記読み出した検索条件を引数として指定し、セッションデータ取得処理部３１２を呼び出して、コマースサーバ１０２のセッションキャッシュからのデータの取得を指示し、コマースサーバ１０２から取得したレコードデータをセッションデータ取得処理部３１２から受け取る。
【００６３】
ステップ６０４では、前記受信したリクエストの内容を読み出して、予めＷｅｂサーバ１０１で指定された検索条件がそのリクエスト中に含まれているかどうかを調べ、Ｗｅｂサーバ１０１で指定された検索条件が含まれている場合にはステップ６０５へ進む。ステップ６０５では、前記読み出した検索条件を引数として指定し、グローバルデータ取得処理部３１３を呼び出して、コマースサーバ１０２のグローバルキャッシュからのデータの取得を指示し、コマースサーバ１０２から取得したレコードデータをグローバルデータ取得処理部３１３から受け取る。
【００６４】
ステップ６０６では、クライアント装置１１１〜１１４から要求された商品データを表示する為の商品一覧画面等のＷｅｂページを前記受け取ったレコードデータを基に作成し、ステップ６０７では、前記作成したＷｅｂページのページデータを要求元のクライアント装置１１１〜１１４に送信する。
【００６５】
図７は本実施形態の商品一覧画面の一例を示す図である。図７に示す様に、クライアント側で商品一覧画面７００の検索条件入力欄７０１〜７０４に検索条件が入力され、検索ボタン７０５が押されると、コマースサーバ１０２のセッションキャッシュ中のレコードデータを取得し、検索結果リスト７２０として表示する。
【００６６】
また、お勧め商品表示欄７１１〜７１３の様に、Ｗｅｂサーバ１０１で指定された検索条件がＷｅｂページに予め埋め込まれている場合には、当該Ｗｅｂページの表示指示の際に、その指定されている検索条件により、コマースサーバ１０２のグローバルキャッシュ中のレコードデータを取得し、お勧め商品表示欄７１１〜７１３にお勧め商品のデータを表示する。
【００６７】
図８は本実施形態のセッションデータ取得処理の処理内容を示す図である。図８に示す様にＷｅｂサーバ１０１のセッションデータ取得処理部３１２は、検索要求元のクライアント装置１１１〜１１４で入力された検索条件が検索要求中に含まれている場合に、その検索条件の入力が行われたセッションを識別する為の端末ＩＤを用いて前記管理ＩＤを生成し、セッションキャッシュ中のレコードデータをコマースサーバ１０２から取得する処理を行う。
【００６８】
ステップ８０１でＷｅｂサーバ１０１のセッションデータ取得処理部３１２は、前記検索要求が送信された際のＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）セッションのセッションＩＤを取得した後、これまでに検索要求を受け付けたクライアントの端末ＩＤを格納しているメモリ領域中の端末ＩＤと比較し、前記検索要求が新たなクライアントからの最初のアクセスであるかどうかを調べる。
【００６９】
前記比較を行った結果、新たなクライアントによる最初のアクセスである場合にはステップ８０２に進み、そのクライアントのセッションＩＤを端末ＩＤとしてメモリ３０２中に格納した後、その端末ＩＤに対応するカウント値ｎを初期化する。
【００７０】
また前記比較を行った結果、これまでに検索要求を受け付けているクライアントからのアクセスである場合にはステップ８０３に進み、そのクライアントの端末ＩＤと当該端末ＩＤに対応するカウント値ｎをメモリ３０２から読み出す。
【００７１】
ステップ８０４では、ページ作成処理部３１１から受け取っている検索条件の内容を参照し、検索ボタン７０５の押下による検索指示であるかまたは前ページボタン７２１や次ページボタン７２２の押下による検索指示であるかを調べる。その結果、検索ボタン７０５の押下による検索指示である場合には、検索条件の変更を伴うものであると見做してステップ８０５へ進み、カウント値ｎに「１」を加算する。ここで、ボタンの種類によらず、前記検索条件から検索条件入力欄７０１〜７０４に入力された内容を抽出してメモリ３０２に格納しておき、その内容の変化を検出することにより検索条件の変更の有無を検出するものとしても良い。
【００７２】
ステップ８０６では、前記端末ＩＤとカウント値ｎの値を組み合わせて管理ＩＤを生成する。例えば、前記端末ＩＤとカウント値ｎを文字型として結合して文字型の管理ＩＤを生成する。
【００７３】
ステップ８０７では、前記検索条件からレコードデータの取得開始位置と取得件数を示す情報を抽出した後、前記生成した管理ＩＤ、前記検索条件、前記抽出した取得開始位置及び取得件数等の情報を引数として指定してセッションキャッシュ中のレコードデータの取得をコマースサーバ１０２へ要求し、前記取得開始位置から取得件数までのレコードデータをコマースサーバ１０２から受信してページ作成処理部３１１へ渡す。
【００７４】
前記の様に本実施形態では、取得開始位置及び取得件数で指定した必要なレコードデータのみを受信しているので、セッションキャッシュ中のレコードデータの取得の際に、Ｗｅｂサーバ１０１とコマースサーバ１０２とのデータ転送量を抑えることができる。
【００７５】
また前記の様にセッションデータ取得処理部３１２では、端末ＩＤとカウント値ｎを用いて管理ＩＤを生成しているが、検索条件から検索条件入力欄７０１〜７０４に入力された内容を抽出してこれを管理ＩＤとしても良い。端末ＩＤを用いて管理ＩＤを生成した場合には、その管理ＩＤに対応するセッションキャッシュ中のレコードデータは当該端末ＩＤで識別されるクライアントのみで使われることになるが、検索条件から管理ＩＤを生成した場合には、同じ検索条件を入力した複数のクライアント間でセッションキャッシュ中のレコードデータを共有することが可能である。
【００７６】
図９は本実施形態のグローバルデータ取得処理の処理内容を示す図である。図９に示す様にＷｅｂサーバ１０１のグローバルデータ取得処理部３１３は、予めＷｅｂサーバ１０１で指定された検索条件が検索要求中に含まれている場合に、その検索条件を識別する為の目的コードやカテゴリコード等の識別情報を用いて前記管理ＩＤを生成し、グローバルキャッシュ中のレコードデータをコマースサーバ１０２から取得する処理を行う。
【００７７】
ステップ９０１でＷｅｂサーバ１０１のグローバルデータ取得処理部３１３は、ページ作成処理部３１１から受け取っている検索条件の内容を参照し、Ｗｅｂサーバ１０１で指定された検索条件を識別する為の目的コードやカテゴリコード等の識別情報を読み出す。例えば、目的コードとしては、お勧め商品の検索、タイムセール品の検索や予約品の検索を識別する為の番号が用いられ、また、それらの商品の「カメラ」や「家電品」等を示すカテゴリコード、その商品が属するジャンルを示すジャンルコード等を前記識別情報として読み出す。
【００７８】
ステップ９０２では、前記目的コードやカテゴリコード等の識別情報を組み合わせて管理ＩＤを生成する。例えば、前記目的コードやカテゴリコードを文字型として結合して文字型の管理ＩＤを生成する。
【００７９】
ステップ９０３では、前記検索条件からレコードデータの取得開始位置と取得件数を示す情報を抽出した後、前記生成した管理ＩＤ、前記検索条件、前記抽出した取得開始位置及び取得件数等の情報を引数として指定してグローバルキャッシュ中のレコードデータの取得をコマースサーバ１０２へ要求し、前記取得開始位置から取得件数までのレコードデータをコマースサーバ１０２から受信してページ作成処理部３１１へ渡す。
【００８０】
前記の様に本実施形態では、取得開始位置及び取得件数で指定した必要なレコードデータのみを受信しているので、グローバルキャッシュ中のレコードデータの取得の際にも、Ｗｅｂサーバ１０１とコマースサーバ１０２とのデータ転送量を抑えることができる。
【００８１】
また前記の様にグローバルデータ取得処理部３１３では、検索条件に対応する目的コードやカテゴリコード等の識別情報を用いて管理ＩＤを生成しているので、同じ検索条件を含むＷｅｂページを参照した複数のクライアント間でグローバルキャッシュ中のレコードデータを共有することが可能である。
【００８２】
図１０は本実施形態のキャッシュ管理処理の処理内容を示す図である。図１０に示す様にコマースサーバ１０２のキャッシュ管理処理部４１１は、メモリキャッシュ４０８中のデータを識別する為の管理ＩＤを受信して、その受信した管理ＩＤで識別されるデータのメモリキャッシュ４０８からの抽出を指示し、その指示により抽出されたデータを当該データの取得要求元へ送信する処理や、前記管理ＩＤで識別されるデータがメモリキャッシュ４０８から抽出されなかった場合に、ＤＢサーバ１０３のデータベースに対する検索処理を実行して前記データを含む検索結果をデータベースから取得してメモリキャッシュ４０８への格納を指示する処理を行う。
【００８３】
ステップ１００１でコマースサーバ１０２のキャッシュ管理処理部４１１は、Ｗｅｂサーバ１０１からメモリキャッシュ４０８中のキャッシュデータ５１０の取得要求を受信すると、その取得要求から管理ＩＤ、取得開始位置及び取得件数を読み出してステップ１００２へ進む。
【００８４】
ステップ１００２では、前記読み出した管理ＩＤ、取得開始位置及び取得件数等の情報を引数として指定してキャッシュデータ抽出処理部４１２を呼び出し、前記管理ＩＤで識別されるレコードデータのメモリキャッシュ４０８からの抽出をキャッシュデータ抽出処理部４１２に指示する。そして、その管理ＩＤで識別されるキャッシュデータ５１０中の前記取得開始位置から取得件数までのレコードデータと、キャッシュデータ抽出処理の処理結果を示す戻り値をキャッシュデータ抽出処理部４１２から受け取る。
【００８５】
ステップ１００３では、前記受け取った戻り値の値を調べ、戻り値がＮＵＬＬである場合には、キャッシュデータ抽出処理に失敗したものとしてステップ１００４へ進む。
【００８６】
ステップ１００４では、ステップ１００１でＷｅｂサーバ１０１から受信した取得要求から検索条件を読み出してＤＢサーバ１０３へ送信し、前記検索条件による検索処理で得られた検索結果をＤＢサーバ１０３から受信する。
【００８７】
ステップ１００５では、ＤＢサーバ１０３から受信した検索結果から、前記取得開始位置から取得件数までのレコードデータを抽出する。
【００８８】
ステップ１００６では、検索されたレコードデータとＤＢヒット件数を前記検索結果から読み出した後、前記管理ＩＤ、前記読み出したレコードデータ及びＤＢヒット件数等の情報を引数として指定してキャッシュデータ格納処理部４１３を呼び出し、ＤＢサーバ１０３で検索されたレコードデータのメモリキャッシュ４０８中への格納をキャッシュデータ格納処理部４１３に指示する。
【００８９】
ステップ１００７では、ステップ１００２でキャッシュデータ抽出処理部４１２から受け取ったレコードデータ、または、ステップ１００５でＤＢサーバ１０３から受信した検索結果から抽出したレコードデータをＷｅｂサーバ１０１へ送信する。
【００９０】
図１１は本実施形態のキャッシュデータ抽出処理の処理内容を示す図である。図１１に示す様にコマースサーバ１０２のキャッシュデータ抽出処理部４１２は、前記データの抽出指示を受け付けて、前記管理ＩＤで識別されるデータをメモリキャッシュ４０８から抽出する処理を行う。
【００９１】
ステップ１１０１でコマースサーバ１０２のキャッシュデータ抽出処理部４１２は、キャッシュ管理処理部４１１から渡された引数をチェックし、引数として渡された管理ＩＤがＮＵＬＬである場合等のエラーが検出されなかった場合にはステップ１１０２へ進み、現在日時を示す情報を取得する。
【００９２】
ステップ１１０３では、マップ５２０を参照して、前記管理ＩＤと一致するキャッシュＩＤ５２１がマップ５２０に存在しているかどうかを調べ、存在していない場合にはステップ１１０４に進み、キャッシュ管理処理部４１１へ返すアウトパラメータに「−１」を設定した後、戻り値にＮＵＬＬを設定して処理を終了する。
【００９３】
一方、前記管理ＩＤと一致するキャッシュＩＤ５２１がマップ５２０に存在している場合にはステップ１１０５に進み、そのキャッシュＩＤ５２１に対応する格納位置５２２で示されたキャッシュテーブル５００のメモリキャッシュ情報を参照し、ＤＢヒット件数５０３を読み出してアウトパラメータに設定する。
【００９４】
ステップ１１０６では、前記対応する格納位置５２２のキャッシュテーブル５００から作成日時５０２を読み出して前記現在日時と比較し、対応するキャッシュデータ５１０が作成されてから所定の生存期限が経過しているかどうかを調べる。前記所定の生存期間が経過している場合には対応するキャッシュデータ５１０が期限切れであるものとして、戻り値にＮＵＬＬを設定して処理を終了する。
【００９５】
ステップ１１０７では、前記対応する格納位置５２２のキャッシュテーブル５００からキャッシュレコード数５０４を読み出して、前記読み出したＤＢヒット件数５０３と比較し、キャッシュレコード数５０４がＤＢヒット件数５０３よりも小さい場合にはステップ１１０８へ進む。
【００９６】
ステップ１１０８では、キャッシュ管理処理部４１１から渡された取得開始位置とＤＢヒット件数５０３とを比較し、前記取得開始位置がＤＢヒット件数５０３以下である場合にはステップ１１０９へ進む。
【００９７】
ステップ１１０９では、前記取得開始位置がキャッシュレコード数５０４よりも大きいか、キャッシュ管理処理部４１１から渡された取得件数が無制限であるか、キャッシュレコード数５０４が取得終了位置（取得開始位置＋取得件数−１）よりも小さいかどうかを判定し、何れかに該当する場合には、キャッシュデータ５１０に保持されていないレコードが取得対象に含まれているものとして、戻り値にＮＵＬＬを設定して処理を終了する。
【００９８】
ステップ１１１０では、前記対応する格納位置５２２のキャッシュテーブル５００からキャッシュデータポインタ５０５を読み出して、そのポインタで示されるキャッシュデータ５１０から、前記取得開始位置から取得件数までのレコードデータを抽出し、その抽出したレコードデータを戻り値に設定して処理を終了する。
【００９９】
前記の様に本実施形態のキャッシュデータ抽出処理では、キャッシュデータ５１０からのレコードの抽出に失敗した場合に戻り値にＮＵＬＬが設定される。なお、取得開始位置がＤＢヒット件数５０３よりも大きい場合は、レコードの抽出失敗ではなく、０件のレコードが抽出されるものとして扱う。
【０１００】
図１２は本実施形態のキャッシュデータ格納処理の処理内容を示す図である。図１２に示す様にコマースサーバ１０２のキャッシュデータ格納処理部４１３は、前記検索結果中のデータを前記管理ＩＤと対応付けてメモリキャッシュ４０８中に格納する処理を行う。
【０１０１】
ステップ１２０１でコマースサーバ１０２のキャッシュデータ格納処理部４１３は、キャッシュ管理処理部４１１から渡された引数をチェックし、引数として渡された管理ＩＤがＮＵＬＬである場合等のエラーが検出されなかった場合にはステップ１２０２へ進み、現在日時を示す情報を取得する。
【０１０２】
ステップ１２０３では、ＤＢサーバ１０３で検索され、キャッシュ管理処理部４１１から渡されたレコードデータから、起動時に設定されている最大キャッシュレコード件数に該当するレコードを抽出してキャッシュデータ５１０の空き領域へ格納する。
【０１０３】
ステップ１２０４では、新規キャッシュ格納位置で示されるキャッシュテーブル５００のメモリキャッシュ情報を参照して、その位置にデータが格納されているかどうかを調べ、データが格納されている場合にはステップ１２０５へ進む。
【０１０４】
ステップ１２０５では、新規キャッシュ格納位置で示されるキャッシュテーブル５００からキャッシュＩＤ５０１を読み出した後、そのキャッシュＩＤ５０１とマップ５２０中のキャッシュＩＤ５２１とを比較して、キャッシュＩＤ５０１がマップ５２０に登録されているかどうかを調べ、登録されている場合にはステップ１２０６へ進み、そのキャッシュＩＤ５２１及び格納位置５２２をマップ５２０から削除する。
【０１０５】
ステップ１２０７では、新規キャッシュ格納位置で示されるキャッシュテーブル５００からキャッシュデータポインタ５０５を読み出した後、そのキャッシュデータポインタ５０５がＮＵＬＬであるかどうかを調べ、ＮＵＬＬでない場合にはステップ１２０８へ進む。
【０１０６】
ステップ１２０８では、前記読み出したキャッシュデータポインタ５０５で示される格納位置に格納されているキャッシュデータ５１０クリアして削除し、ステップ１２０９では、新規キャッシュ格納位置で示されるキャッシュテーブル５００のキャッシュデータポインタ５０５にＮＵＬＬを格納する。
【０１０７】
ステップ１２１０では、新規キャッシュ格納位置で示されるキャッシュテーブル５００のキャッシュＩＤ５０１、作成日時５０２、ＤＢヒット件数５０３、キャッシュレコード数５０４及びキャッシュデータポインタ５０５に、キャッシュ管理処理部４１１から渡された管理ＩＤ、ステップ１２０２で取得した現在日時の情報、キャッシュ管理処理部４１１から渡されたＤＢヒット件数、起動時に設定されている最大キャッシュレコード件数、ステップ１２０３で抽出して格納した先頭レコードへのポインタをそれぞれ格納し、キャッシュテーブル５００への登録を行う。
【０１０８】
ステップ１２１１では、マップ５２０を参照し、前記登録したキャッシュＩＤ５０１がキャッシュテーブル５００の他の位置に格納されているかどうかを調べ、他の位置に存在する場合にはステップ１２１２へ進む。
【０１０９】
ステップ１２１１では、その位置のキャッシュテーブル５００からキャッシュデータポインタ５０５を読み出した後、そのキャッシュデータポインタ５０５がＮＵＬＬであるかどうかを調べ、ＮＵＬＬでない場合にはステップ１２１３へ進む。
【０１１０】
ステップ１２１３では、前記読み出したキャッシュデータポインタ５０５で示される格納位置に格納されているキャッシュデータ５１０クリアして削除し、ステップ１２１４では、前記位置のキャッシュテーブル５００のキャッシュデータポインタ５０５にＮＵＬＬを格納する。
【０１１１】
ステップ１２１５では、その位置のキャッシュテーブル５００の内容を初期化した後、ステップ１２１６では、その位置を示していたキャッシュＩＤ５２１と格納位置５２２をマップ５２０から削除する。
【０１１２】
ステップ１２１７では、ステップ１２１０で登録したキャッシュＩＤ５０１とキャッシュテーブル５００の位置をマップ５２０へ登録する。またステップ１２１８では、新規キャッシュ格納位置に「１」を加算して更新し、加算後の値がキャッシュテーブル５００の最後尾（最大キャッシュ面数−１）の位置を超える場合には、新規キャッシュ格納位置に「０」を設定する。
【０１１３】
以上説明した様に本実施形態のデータ処理システムによれば、データベースへのアクセス処理の内容に対応する管理ＩＤで識別されるデータを記憶装置から抽出して要求された処理を行うので、データベースへのアクセスを減らし、データベースの負荷を軽減することが可能である。
【０１１４】
【発明の効果】
本発明によればデータベースへのアクセス処理の内容に対応する管理ＩＤで識別されるデータを記憶装置から抽出して要求された処理を行うので、データベースへのアクセスを減らし、データベースの負荷を軽減することが可能である。
【図面の簡単な説明】
【図１】本実施形態の電子ショッピングシステムの概略構成を示す図である。
【図２】本実施形態のメモリキャッシュを用いたデータ処理の処理概要を示す図である。
【図３】本実施形態のＷｅｂサーバ１０１の概略構成を示す図である。
【図４】本実施形態のコマースサーバ１０２の概略構成を示す図である。
【図５】本実施形態のメモリキャッシュ４０８の構成例を示す図である。
【図６】本実施形態のページ作成処理の処理内容を示す図である。
【図７】本実施形態の商品一覧画面の一例を示す図である。
【図８】本実施形態のセッションデータ取得処理の処理内容を示す図である。
【図９】本実施形態のグローバルデータ取得処理の処理内容を示す図である。
【図１０】本実施形態のキャッシュ管理処理の処理内容を示す図である。
【図１１】本実施形態のキャッシュデータ抽出処理の処理内容を示す図である。
【図１２】本実施形態のキャッシュデータ格納処理の処理内容を示す図である。
【符号の説明】
１０１…Ｗｅｂサーバ、１０２…コマースサーバ、１０３…ＤＢサーバ、１１１〜１１４…クライアント装置、１２０…ネットワーク、３０１…ＣＰＵ、３０２…メモリ、３０３…磁気ディスク装置、３０４…入力装置、３０５…出力装置、３０６…ＣＤ−ＲＯＭ装置、３０７…通信装置、３１１…ページ作成処理部、３１２…セッションデータ取得処理部、３１３…グローバルデータ取得処理部、４０１…ＣＰＵ、４０２…メモリ、４０３…磁気ディスク装置、４０４…入力装置、４０５…出力装置、４０６…ＣＤ−ＲＯＭ装置、４０７…通信装置、４０８…メモリキャッシュ、４１１…キャッシュ管理処理部、４１２…キャッシュデータ抽出処理部、４１３…キャッシュデータ格納処理部、５００…キャッシュテーブル、５１０…キャッシュデータ、５２０…マップ、５０１…キャッシュＩＤ、５０２…作成日時、５０３…ＤＢヒット件数、５０４…キャッシュレコード数、５０５…キャッシュデータポインタ、５２１…キャッシュＩＤ、５２２…格納位置、７００…商品一覧画面、７０１〜７０４…検索条件入力欄、７０５…検索ボタン、７１１〜７１３…お勧め商品表示欄、７２０…検索結果リスト、７２１…前ページボタン、７２２…次ページボタン。
【図１】
2004240575.tif 000003
【図２】
2004240575.tif 000004
【図３】
2004240575.tif 000005
【図４】
2004240575.tif 000006
【図５】
2004240575.tif 000007
【図６】
2004240575.tif 000008
【図７】
2004240575.tif 000009
【図８】
2004240575.tif 000010
【図９】
2004240575.tif 000011
【図１０】
2004240575.tif 000012
【図１１】
2004240575.tif 000013
【図１２】
2004240575.tif 000014