(57)【要約】      （修正有）【課題】データベースを備える通信端末装置の管理負荷を減少し、通信端末装置のデータ送信量を節約する。【解決手段】通信端末装置は、リクエスト受信部と、記憶部と、データ送信部と、を備える。リクエスト受信部は、クエリ情報を含むリクエストを受信する。記憶部は、登録クエリ情報と登録更新検証データとを関連付けて記憶する。データ送信部は、クエリ情報と一致する登録クエリ情報が、記憶部に記憶されているという第１条件を満たし、かつ、クエリ情報と一致する登録クエリ情報に関連付けられた過去のデータベース検索結果に基づく登録更新検証データの内容が、今回のデータベース検索結果に基づく更新検証データの内容と一致するという第２条件を満たす場合に、キャッシュ使用を指示する情報を含む第１送信データを送信する。【選択図】図７ａ
2014110022.tif 000002
【特許請求の範囲】
【請求項１】
クエリ情報を含むリクエストを受信するリクエスト受信部と、
過去のデータベース検索の前記クエリ情報である登録クエリ情報と、前記登録クエリ情報に基づくデータベース検索の検索結果に基づいた内容を含む登録更新検証データとを関連付けて記憶する記憶部と、
前記クエリ情報と一致する前記登録クエリ情報が、前記記憶部に記憶されているという第１条件を満たし、かつ、
前記クエリ情報と一致する前記登録クエリ情報に関連付けられた前記登録更新検証データの内容が、前記クエリ情報に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致するという第２条件を満たす場合に、
キャッシュ使用を指示する情報を含む第１送信データを送信するデータ送信部と、
を備える通信端末装置。
【請求項２】
前記クエリ情報に基づいて行われた前記データベース検索の検索結果に基づいて、レスポンスデータを生成するレスポンスデータ生成部をさらに備える、請求項１に記載の通信端末装置。
【請求項３】
前記更新検証データが、前記レスポンスデータ生成部により生成された前記レスポンスデータであり、前記登録更新検証データが、前記登録クエリ情報に基づく検索結果に基づいて生成された登録レスポンスデータである、請求項２に記載の通信端末装置。
【請求項４】
前記更新検証データが、前記クエリ情報に基づいて行われた前記データベース検索の検索結果であり、前記登録更新検証データが、前記登録クエリ情報に基づく検索結果である、請求項１又は２に記載の通信端末装置。
【請求項５】
前記リクエストには、検索リクエスト識別情報がさらに含まれる、請求項１から４のいずれかに記載の通信端末装置。
【請求項６】
前記記憶部は複数のサブ記憶部を有し、前記データ送信部は、前記検索リクエスト識別情報に基づいて前記記憶部から適切な前記サブ記憶部を選択し、前記第１条件及び前記第２条件の真偽判定を行う、請求項５に記載の通信端末装置。
【請求項７】
前記第１条件を満たさない、又は、前記第２条件を満たさない場合、前記データ送信部は、前記レスポンスデータを含む第２送信データを送信する、請求項２から６のいずれかに記載の通信端末装置。
【請求項８】
前記第１条件を満たし、かつ、前記第２条件を満たさない場合、前記データ送信部は、前記レスポンスデータを含む第２送信データを送信する、請求項２から７のいずれかに記載の通信端末装置。
【請求項９】
前記データ送信部が前記第２送信データを送信したとき、前記記憶部の内容を更新する、記憶部更新部をさらに有する、請求項７又は８に記載の通信端末装置。
【請求項１０】
前記登録更新検証データが、ハッシュ値、又は、チェックサム値として前記記憶部に記憶されている、請求項１から９のいずれかに記載の通信端末装置。
【請求項１１】
クエリ情報を含むリクエストを受信するリクエスト受信ステップと、
前記クエリ情報と一致する、過去のデータベース検索の前記クエリ情報である登録クエリ情報が存在するという第１条件と、
前記クエリ情報と一致する前記登録クエリ情報に関連付けられた、前記登録クエリ情報に基づく検索結果に基づいた内容を含む登録更新検証データの内容が、前記クエリ情報に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致するという第２条件と、の真偽判定を行う更新検証ステップと、
前記更新検証ステップにおいて前記第１条件が真であり、かつ、前記第２条件が真であると判定された場合、キャッシュ使用を指示する情報を含む第１送信データを送信する、データ送信ステップと、
を含有するデータ送信方法。
【請求項１２】
前記クエリ情報に基づいて行われた前記データベース検索の検索結果に基づいて、レスポンスデータを生成するレスポンスデータ生成ステップをさらに含有する、請求項１１に記載のデータ送信方法。
【請求項１３】
前記更新検証データが、前記レスポンスデータ生成ステップにおいて生成された前記レスポンスデータであり、前記登録更新検証データが、前記登録クエリ情報に基づく検索結果に基づいて生成された登録レスポンスデータである、請求項１２に記載のデータ送信方法。
【請求項１４】
前記更新検証データが、前記クエリ情報に基づいて行われた前記データベース検索の検索結果であり、前記登録更新検証データが、前記登録クエリ情報に基づく検索結果である、請求項１１又は１２に記載のデータ送信方法。
【請求項１５】
前記リクエスト情報には、検索リクエスト識別情報がさらに含まれる、請求項１１から１４のいずれかに記載のデータ送信方法。
【請求項１６】
前記更新検証ステップにおいて、前記検索リクエスト識別情報に基づいて、前記登録クエリ情報と前記登録更新検証データとを関連付けて記憶した複数のサブ記憶部から、適切な前記サブ記憶部を選択し、前記第１条件及び前記第２条件の真偽判定を行う、請求項１５に記載のデータ送信方法。
【請求項１７】
前記更新検証ステップにおいて、前記第１条件が偽である、又は、前記第２条件が偽であると判定された場合、前記データ送信ステップにおいて、前記レスポンスデータを含む第２送信データを送信する、請求項１２から１６のいずれかに記載のデータ送信方法。
【請求項１８】
前記更新検証ステップにおいて、前記第１条件が真であり、かつ、前記第２条件が偽であると判定された場合、前記データ送信ステップにおいて、前記レスポンスデータを含む第２送信データを送信する、請求項１２から１７のいずれかに記載のデータ送信方法。
【請求項１９】
前記データ送信ステップにおいて、前記第２送信データを送信した場合、前記登録クエリ情報及び／又は前記登録更新検証データを更新する、登録情報更新ステップをさらに有する、請求項１７又は１８に記載のデータ送信方法。
【請求項２０】
請求項１１から１９のいずれかに記載のデータ送信方法をコンピュータに実行させる、データ送信プログラム。
【請求項２１】
請求項２０に記載のデータ送信プログラムを格納する記憶媒体。
【請求項２２】
クエリ情報を含むリクエストを受信するリクエスト受信手段と
前記リクエストをデータベースサーバに送信し、前記クエリ情報に基づいて前記データベースサーバにおいて行われたデータベース検索の検索結果を前記データベースサーバから受信する、データベース検索結果取得手段と、
過去のデータベース検索の前記クエリ情報である登録クエリ情報と、前記登録クエリ情報に基づく検索結果に基づいた内容を含む登録更新検証データとを関連付けて記憶する記憶部に、前記クエリ情報と一致する前記登録クエリ情報が記憶されているという第１条件を満たし、かつ、前記クエリ情報と一致する前記登録クエリ情報に関連付けられた前記登録更新検証データの内容が、前記クエリ情報に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致するという第２条件を満たす場合、キャッシュ使用を指示する情報を含む第１送信データを送信するデータ送信手段と、
をコンピュータに機能として実現させるためのデータ送信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データベースの監視処理及び／又はキャッシュ情報更新処理及びデータ送信を行う通信端末装置に関する。
【背景技術】
【０００２】
データベースサーバとデータベース検索端末（クライアント）とがネットワークなどにより接続されたシステムにおいて、データベースの検索速度を高速化するための技術が知られている。例えば、過去において検索されたことのあるデータベースの検索については、データベースに直接アクセスすることなく、データベース検索結果をクライアントに送信する技術がある。
【０００３】
例えば、特許文献１に開示された部品検索システムは、クライアントによる検索条件と同一の検索条件が一時記憶部に記憶されているキャッシュ情報に含まれていた場合、一時記憶部は該検索条件に対応する検索結果を検索部に返却する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−３４６３４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記のような従来のデータベースにおいては、データベースのデータの内容と、一時記憶部などに記憶されているキャッシュ情報のデータの内容とを定期的に比較、検証する監視処理が必要となる場合がある。例えば、データベースのデータ更新日時と、一時記憶部などに記憶されているデータの更新日時とを比較するデータベース更新日時監視処理が必要となる。
【０００６】
さらに、上記の両データの内容が一致しない場合は、一時記憶部に記憶されているキャッシュ情報を更新するキャッシュ情報更新処理が必要となる場合もある。
【０００７】
このような、データベース更新日時監視処理又はキャッシュ情報更新処理は、データベースへ高い負荷をかける。さらに、データベースのデータ量が多くなると、これら監視処理及び／又は更新処理に時間がかかり、長時間に亘りデータベースに高い負荷がかかる。その結果、データベースの検索速度を低下させてしまうことがある。
【０００８】
本発明の課題は、データベースの監視処理及び／又はキャッシュ情報更新処理の負荷を軽減することと、リクエストに対して応答するデータ送信量を削減することにある。
【課題を解決するための手段】
【０００９】
以下に、課題を解決するための手段として複数の態様を説明する。これら態様は、必要に応じて任意に組み合せることができる。
【００１０】
本発明の一見地に係る通信端末装置は、リクエスト受信部と、記憶部と、データ送信部と、を備える。
リクエスト受信部は、クエリ情報を含むリクエストを受信する。記憶部は、過去のデータベース検索のクエリ情報である登録クエリ情報と登録クエリ情報に基づく検索結果に基づいた内容を含む登録更新検証データとを関連付けて記憶する。データ送信部は、クエリ情報と一致する登録クエリ情報が、記憶部に記憶されているという第１条件を満たし、かつ、クエリ情報と一致する登録クエリ情報に関連付けられた登録更新検証データの内容が、クエリ情報に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致するという第２条件を満たす場合に、キャッシュ使用を指示する情報を含む第１送信データを送信する。
【００１１】
この通信端末装置では、まず、リクエスト受信部が、クエリ情報を含むリクエストを受信する。次に、データ送信部が以下の２つの条件（第１条件と第２条件）について真偽判定を行う。そして、第１条件が真であり、かつ、第２条件が真である場合、データ送信部は、キャッシュ使用を指示する情報を含む第１データを送信する。
第１条件：クエリ情報と一致する登録クエリ情報が、記憶部に記憶されている。
第２条件：クエリ情報と一致する登録クエリ情報に関連付けられた登録更新検証データの内容が、当該クエリ情報に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致する。
【００１２】
この通信端末装置では、上記のように、記憶部に記憶された登録クエリ情報、及び／又は、登録更新検証データの内容が、それぞれ、クエリ情報、及び／又は、当該クエリ情報に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致するかどうかを検証する。これにより、以下の２つの事項が検証される。
（１）過去に、今回のクエリ情報と同一のクエリ情報（登録クエリ情報）に基づくデータベース検索がなされたか。
（２）過去に今回と同一のクエリ情報に基づいたデータベース検索がなされている場合、今回と同一のクエリ情報に基づいて行われた過去のデータベース検索の検索結果に基づいた内容を含む登録更新検証データは、今回のクエリ情報に基づいて行われたデータベース検索の検索結果に基づいた内容を含む更新検証データと一致するか。
この通信端末装置は、上記（１）及び（２）の両方が「真」である場合に、今回のクエリ情報に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データが、今回のクエリ情報と同一のクエリ情報に基づく過去のデータベース検索の検索結果に基づいた内容を含む更新検証データ（登録更新検証データ）の内容と一致すると判断する。
【００１３】
このようなデータベースの監視処理を採用することにより、データベースの監視処理及び／又はキャッシュ情報更新処理の負荷を軽減することができる。その結果、通信端末装置のデータベースに関する管理負荷を減少できる。
【００１４】
また、データ送信部は、上記（１）及び（２）の両方が「真」である場合に、データベース検索の検索結果に基づいたデータを送信しない。その代わりに、キャッシュ使用を指示する情報を含む第１送信データを送信する。このような第１送信データのデータ量は一般的に小さい。そのため、今回のクエリ情報に基づくデータベース検索の検索結果に基づいた内容を含むデータ（更新検証データ）が、今回のクエリ情報と同一のクエリ情報に基づく過去のデータベース検索の検索結果に基づいた内容を含むデータ（登録更新検証データ）と一致する場合に、大量のデータを送信することを抑制できる。その結果、通信端末装置から送信されるデータのデータ量を節約できる。
【００１５】
通信端末装置は、クエリ情報に基づいて行われたデータベース検索の検索結果に基づいて、レスポンスデータを生成するレスポンスデータ生成部をさらに備えてもよい。レスポンスデータとは、データベース検索結果を必要に応じて加工したデータである。これにより、今回のクエリ情報に基づいて行われたデータベース検索の検索結果に基づいてレスポンスデータを生成できる。
【００１６】
更新検証データが、レスポンスデータ生成部により生成されたレスポンスデータであり、登録更新検証データが、登録クエリ情報に基づく検索結果に基づいて生成された登録レスポンスデータであってもよい。
これにより、特に、通信端末装置が同じデータベース検索結果であっても異なるレスポンスデータを生成する必要がある場合、今回のクエリ情報に基づくデータベース検索の検索結果に基づいて生成されたレスポンスデータが、同一のクエリ情報に基づいて過去に行われた同一のデータベース検索の検索結果に基づいて生成されたレスポンスデータ（登録レスポンスデータ）と同じ場合に、通信端末装置は、正しくキャッシュ使用を指示する情報を含む第１送信データを送信できる。
【００１７】
更新検証データが、クエリ情報に基づいて行われたデータベース検索の検索結果であり、登録更新検証データが、登録クエリ情報に基づく検索結果であってもよい。
これにより、今回のクエリ情報に基づくデータベース検索の検索結果が、同一のクエリ情報に基づいて過去に行われたデータベース検索の検索結果と同じであれば、通信端末装置がキャッシュ使用を指示する場合に、通信端末装置は、第１送信データを正しく送信できる。
【００１８】
リクエストには、検索リクエスト識別情報がさらに含まれていてもよい。検索リクエスト識別情報とは、クエリ情報以外の、データベース検索を識別するための情報である。
【００１９】
記憶部は複数のサブ記憶部を有していてもよく、データ送信部は、検索リクエスト識別情報に基づいて記憶部から適切なサブ記憶部を選択し、第１条件及び第２条件の真偽判定を行ってもよい。これにより、登録クエリ情報及び／又は登録更新検証データと、クエリ情報及び／又は更新検証データとの比較検証を精度良く行える。
【００２０】
上記第１条件を満たさない、又は、上記第２条件を満たさない場合、データ送信部は、レスポンスデータを含む第２送信データを送信してもよい。
これにより、データベース検索の検索結果に応じて、正しいレスポンスデータ（検索結果）を送信できる。
【００２１】
第１条件を満たし、かつ、第２条件を満たさない場合、データ送信部は、レスポンスデータを含む第２送信データを送信してもよい。
これにより、特に、今回のクエリ情報と同一のクエリ情報（登録クエリ情報）に基づいて過去にデータベース検索が行われていた場合でも、今回のクエリ情報に基づくデータベース検索の検索結果に基づいた内容（更新検証データ）と、当該登録クエリ情報に基づく過去のデータベース検索の検索結果に基づいた内容（登録更新検証データ）とが異なる場合、すなわち、特に検索結果の内容が異なる場合にのみ、今回のクエリ情報に基づくデータベース検索の検索結果に基づいて生成されたレスポンスデータ（検索結果）を送信できる。その結果、通信端末装置１から送信されるデータのデータ量を節約できる。
【００２２】
通信端末装置は、データ送信部が第２送信データを送信したとき、記憶部の内容を更新する、記憶部更新部をさらに有していてもよい。
【００２３】
これにより、記憶部に記憶された登録クエリ情報及び登録更新検証データを最新の状態に維持できる。また、キャッシュ情報の定期的な再構築処理のような管理負荷の高い処理が不要となる。これにより、データベースに関する管理負荷を減少できる。
【００２４】
登録更新検証データは、ハッシュ値、又は、チェックサム値として記憶部に記憶されていてもよい。これにより、登録更新検証データのデータサイズを減少できる。
【００２５】
本発明の他の見地に係るデータ送信方法は、以下のステップを有する。
◎クエリ情報を含むリクエストを受信するリクエスト受信ステップ。
◎クエリ情報と一致する、過去のデータベース検索のクエリ情報である登録クエリ情報が存在するという第１条件と、クエリ情報と一致する登録クエリ情報に関連付けられた、登録クエリ情報に基づく検索結果に基づいた内容を含む登録更新検証データの内容が、クエリ情報に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致するという第２条件と、の真偽判定を行う更新検証ステップ。
◎更新検証ステップにおいて第１条件が真であり、かつ、第２条件が真であると判定された場合、キャッシュ使用を指示する情報を含む第１送信データを送信する、データ送信ステップ。
【００２６】
このデータ送信方法では、上記のように、登録クエリ情報、及び／又は、登録更新検証データの内容が、それぞれ、クエリ情報、及び／又は、当該クエリ情報に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致するかどうかを検証する。これにより、以下の２つの事項が検証される。
（１）過去に、今回のクエリ情報と同一のクエリ情報（登録クエリ情報）に基づくデータベース検索がなされたか。
（２）過去に、今回と同一のクエリ情報に基づいたデータベース検索がなされている場合、今回と同一のクエリ情報に基づいて行われた過去のデータベース検索の検索結果に基づいた内容を含む登録更新検証データは、今回のクエリ情報に基づいて行われたデータベース検索の検索結果に基づいた内容を含む更新検証データと一致するか。
このデータ送信方法では、上記（１）及び（２）の両方が「真」である場合に、今回のクエリ情報に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データが、今回のクエリ情報と同一のクエリ情報に基づく過去のデータベース検索の検索結果に基づいた内容を含む更新検証データ（登録更新検証データ）の内容と一致すると判断される。
【００２７】
このようなデータベースの監視処理を採用することにより、データベースの監視処理及び／又はキャッシュ情報更新処理の負荷を軽減できる。その結果、データベースに関する管理負荷を減少できる。
【００２８】
また、データ送信ステップにおいて、上記（１）及び（２）の両方が「真」である場合に、データベース検索の検索結果に基づいたデータを送信しない。その代わりに、キャッシュ使用を指示する情報を含む第１送信データを送信する。このような第１送信データのデータ量は一般的に小さい。そのため、今回のクエリ情報に基づくデータベース検索の検索結果に基づいたデータが、今回のクエリ情報と同一のクエリ情報に基づく過去のデータベース検索の検索結果に基づいたデータと一致する場合に、大量のデータを送信することを抑制できる。その結果、送信されるデータのデータ量を節約できる。
【００２９】
データ送信方法は、クエリ情報に基づいて行われたデータベース検索の検索結果に基づいて、レスポンスデータを生成するレスポンスデータ生成ステップをさらに備えてもよい。これにより、今回のクエリ情報に基づいて行われたデータベース検索の検索結果に基づいてレスポンスデータを生成できる。
【００３０】
更新検証データが、レスポンスデータステップにおいて生成されたレスポンスデータであり、登録更新検証データが、登録クエリ情報に基づく検索結果に基づいて生成された登録レスポンスデータであってもよい。
これにより、特に、同じデータベース検索結果であっても異なるレスポンスデータを生成する必要がある場合、今回のクエリ情報に基づくデータベース検索の検索結果に基づいて生成されたレスポンスデータが、同一のクエリ情報に基づいて過去に行われた同一のデータベース検索の検索結果に基づいて生成されたレスポンスデータ（登録レスポンスデータ）と同じ場合に、データ送信方法は正しくキャッシュ使用を指示する情報を含む第１送信データを送信できる。
【００３１】
更新検証データが、クエリ情報に基づいて行われたデータベース検索の検索結果であり、登録更新検証データが、登録クエリ情報に基づく検索結果であってもよい。
これにより、今回のクエリ情報に基づくデータベース検索の検索結果が、同一のクエリ情報に基づいて過去に行われたデータベース検索結果と同じであれば、キャッシュ使用を指示する場合に、データ送信方法は、第１送信データを正しく送信できる。
【００３２】
リクエストには、検索リクエスト識別情報がさらに含まれていてもよい。
【００３３】
更新検証ステップにおいて、検索リクエスト識別情報に基づいて、登録クエリ情報と登録更新検証データとを関連付けて記憶した複数のサブ記憶部から、適切なサブ記憶部を選択し、第１条件及び前記第２条件の真偽判定を行ってもよい。これにより、過去に行われたデータベース検索の検索結果に基づいた内容を含む登録更新検証データと、今回の検索結果に基づいた内容を含む更新検証データとの比較検証を精度良く行える。
【００３４】
更新検証ステップにおいて、第１条件が偽である、又は、第２条件が偽であると判定された場合、データ送信ステップにおいて、レスポンスデータを含む第２送信データを送信してもよい。
これにより、データベース検索の検索結果に応じて、正しいレスポンスデータを送信できる。
【００３５】
更新検証ステップにおいて、第１条件が真であり、かつ、第２条件が偽であると判定された場合、登録情報更新ステップは、レスポンスデータを含む第２送信データを送信してもよい。
これにより、特に、今回のクエリ情報と同一のクエリ情報に基づいて過去にデータベース検索が行われていた場合でも、今回のデータベース検索の検索結果に基づく内容と、過去のデータベース検索の検索結果に基づく内容が異なる場合、すなわち、特に検索結果が異なる場合にのみ、今回のデータベース検索の検索結果に基づいて生成されたレスポンスデータを送信できる。その結果、送信されるデータのデータ量を節約できる。
【００３６】
データ送信方法は、データ送信ステップにおいて第２送信データが送信された場合、登録クエリ情報及び／又は登録更新検証データを更新する、登録情報更新ステップをさらに有していてもよい。
【００３７】
これにより、登録クエリ情報及び／又は登録更新検証データを最新の状態に維持できる。また、キャッシュ情報の定期的な再構築処理のような管理負荷の高い処理が不要となる。これにより、データベースに関する管理負荷を減少できる。
【００３８】
本発明のさらに他の見地に係るデータ送信プログラムは、上記のデータ送信方法をコンピュータに実行させるプログラムである。
【００３９】
本発明のさらに他の見地に係る記憶媒体は、上記のプログラムを格納する記憶媒体である。
【００４０】
本発明のさらに他の見地に係るデータ送信プログラムは、リクエスト受信手段と、データベース検索結果取得手段と、データ送信手段と、をコンピュータに機能として実現させる。
リクエスト受信手段は、クエリ情報を含むリクエストを受信する。データベース検索結果取得手段は、リクエスト中のクエリ情報をデータベースサーバに送信する。そして、クエリ情報に基づいてデータベースサーバにおいて行われたデータベース検索の検索結果をデータベースサーバから受信する。データ送信手段は、過去のデータベース検索のクエリ情報である登録クエリ情報と、登録クエリ情報に基づく検索結果に基づいた内容を含む登録更新検証データとを関連付けて記憶する記憶部に、クエリ情報と一致する登録クエリ情報が記憶されているという第１条件を満たし、かつ、クエリ情報と一致する登録クエリ情報に関連付けられた登録更新検証データの内容が、今回のクエリ情報に基づくデータベース検索の検索結果の内容を含む更新検証データの内容と一致するという第２条件を満たす場合、キャッシュ使用を指示する情報を含む第１送信データを送信する。
【００４１】
このデータ送信プログラムでは、まず、リクエスト受信手段が、クエリ情報を含むリクエストを受信する。次に、データベース検索結果取得手段が、リクエスト中のクエリ情報をデータベースサーバに送信する。そして、クエリ情報に基づいてデータベースサーバにおいて行われたデータベース検索のデータベース検索結果をデータベースサーバから受信する。そして、データ送信手段が、以下の２つの条件（第１条件と第２条件）について真偽判定を行う。さらに、第１条件が真であり、かつ、第２条件が真である場合、データ送信手段は、キャッシュ使用を指示する情報を含む第１送信データを送信する。
第１条件：クエリ情報と一致する登録クエリ情報が、記憶部に記憶されている。
第２条件：クエリ情報と一致する登録クエリ情報に関連付けられた登録更新検証データの内容が、当該クエリ情報に基づくレスポンスデータの内容と一致する。
【００４２】
このデータ送信プログラムでは、上記のように、記憶部に記憶された登録クエリ情報、及び／又は、登録更新検証データの内容が、それぞれ、クエリ情報、及び／又は、当該クエリ情報に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致するかどうかを検証する。これにより、以下の２つの事項が検証される。
（１）過去に、今回のクエリ情報と同一のクエリ情報（登録クエリ情報）に基づくデータベース検索がなされたか。
（２）過去に、今回と同一のクエリ情報に基づいたデータベース検索がなされている場合、今回と同一のクエリ情報に基づいて行われた過去のデータベース検索の検索結果に基づいた内容を含む登録更新検証データは、今回のクエリ情報に基づいて行われたデータベース検索の検索結果に基づいた内容を含む更新検証データと一致するか。
この通信端末装置は、上記（１）及び（２）の両方が「真」である場合に、今回のクエリ情報に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データが、今回のクエリ情報と同一のクエリ情報に基づく過去のデータベース検索の検索結果に基づいた内容を含む更新検証データ（登録更新検証データ）の内容と一致すると判断する。
【００４３】
このようなデータベースの監視処理を採用することにより、データベースの監視処理及び／又はキャッシュ情報更新処理の負荷を軽減できる。その結果、データベースに関する管理負荷を減少できる。
【００４４】
また、データ送信ステップにおいて、上記（１）及び（２）の両方が「真」である場合に、データベース検索の検索結果に基づいたデータを送信しない。その代わりに、キャッシュ使用を指示する情報を含む第１送信データを送信する。このような第１送信データのデータ量は一般的に小さい。そのため、今回のクエリ情報に基づくデータベース検索の検索結果に基づいたデータが、今回のクエリ情報と同一のクエリ情報に基づく過去のデータベース検索の検索結果に基づいたデータと一致する場合に、大量のデータを送信することを抑制できる。その結果、通信端末装置から送信されるデータのデータ量を節約できる。
【発明の効果】
【００４５】
本発明により、データベースに関する管理負荷を減少できる。また、情報通信端末のデータ送信量を節約できる。
【図面の簡単な説明】
【００４６】
【図１】データベース−クライアントシステムを示す模式図
【図２ａ】データベース検索結果送信部の基本構成を示す図
【図２ｂ】レスポンスデータ生成部を備えたデータベース検索結果送信部を示す図
【図２ｃ】レスポンスデータ生成部と記憶部更新部とを備えたデータベース検索結果送信部を示す図
【図３】リクエストのデータ構成を示す図
【図４】記憶部（サブ記憶部）のデータ構成を示す図
【図５】第１送信データのデータ構成を示す図
【図６】第２送信データのデータ構成を示す図
【図７ａ】データベース検索結果送信部の基本動作を示すフローチャート
【図７ｂ】第２送信データステップを含むデータベース検索結果送信部の動作を示すフローチャート
【図７ｃ】第２送信データステップと記憶部更新ステップとを含むデータベース検索結果送信部の動作を示すフローチャート
【図８】前回アクセス情報存在確認ステップを含むデータベース検索結果送信部の動作を示すフローチャート
【図９】レスポンスデータ生成ステップにおけるレスポンスデータ生成過程を示すフローチャート
【図１０】サブ記憶部を含んだ記憶部を模式的に示した図
【図１１】変形例１の通信端末装置１が用いられたデータベース−クライアントシステムの模式図
【発明を実施するための形態】
【００４７】
（１）第１実施形態
１．第１実施形態の構成
１−１．データベース−クライアントシステムの構成
図１を参照して、第１実施形態の通信端末装置１が用いられるデータベース−クライアントシステム１００の構成について説明する。図１に示すデータベース−クライアントシステム１００は、通信端末装置１と、クライアント２と、ネットワーク３と、を有する。通信端末装置１とクライアント２とは、ネットワーク３を介して互いにデータを送受信可能なように接続されている。
【００４８】
通信端末装置１は、データベースを提供するデータベース部１１を備えており、データベースサーバとして機能する。クライアント２は、通信端末装置１により提供されているデータベースの検索を行うための端末である。
なお、データベース部１１は、通信端末装置１に備えられていなくてもよい。例えば、データベースを提供するデータベース部１１が、通信端末装置１の外部に、通信端末装置１とデータのやり取り可能なように接続されていてもよい。
【００４９】
ネットワーク３は、通信端末装置１とクライアント２とを互いに通信可能に接続する通信線である。通信端末装置１とクライアント２がＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）により接続されている場合、ネットワーク３は、例えば、ＬＡＮケーブルのみにより構成できる。
一方、通信端末装置１とクライアント２がインターネットなどのＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）により接続されている場合、ネットワーク３は、例えば、光ケーブルにより構成できる。
また、通信端末装置１とクライアント２とが、ＷＡＮとＬＡＮにより接続される場合は、ネットワーク３は、例えば、光ケーブルとＬＡＮケーブルにより構成できる。この場合、ＷＡＮとＬＡＮとの接続を行うためのルータなどの中間機器（図示せず）が、ネットワーク３中の、通信端末装置１とクライアント２との間に存在していてもよい。
【００５０】
１−２．クライアントの構成
まず、図１を参照して、クライアント２の構成について説明する。クライアント２は、通信端末装置１が備えるデータベース部１１のデータベース検索を行うための端末である。クライアント２は、例えば、オフィスなどにおいて使用されるパーソナルコンピュータである。クライアント２は、その他、タブレット端末、情報検索端末などの情報処理端末であってもよい。
クライアント２は、ネットワークインターフェース２１と、データベース検索部２３と、キャッシュ部２５と、を有する。
【００５１】
ネットワークインターフェース２１は、ネットワーク３に接続されている。ネットワークインターフェース２１は、通信端末装置１と、クライアント２とのネットワーク通信をネットワーク３を介して実行する。ネットワークインターフェース２１は、例えば、イーサーネット（Ｅｔｈｅｒｎｅｔ）（登録商標）カードなどである。
【００５２】
特に、通信端末装置１とクライアント２とが、主にＨＴＴＰプロトコル（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）を用いて通信を行う場合、ネットワークインターフェース２１は、通信プロトコルとして、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）プロトコルを使用できる。
ＨＴＴＰプロトコルを用いて、通信端末装置１とクライアント２とが通信を行う代表的な例は、後述するデータベース検索部２３がＷｅｂブラウザにより実現される場合、及び／又は、通信端末装置１のサーバ機能がＨＴＴＰサーバにより実現される場合である。その他の例においては、通信プロトコルは、特にＴＣＰ／ＩＰプロトコルに限られない。
【００５３】
また、通信端末装置１とクライアント２とは、十分なセキュリティ対策が採れる通信方式で通信を行ってもよい。
【００５４】
十分なセキュリティ対策を採ることが可能な通信方式としては、例えば、暗号通信方式がある。暗号通信方式は、例えば、ＨＴＴＰプロトコルを用いて通信端末装置１とクライアント２との通信を行う場合は、ＨＴＴＰ  ｏｖｅｒ  ＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ）／ＴＳＬ（Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ  Ｓｅｃｕｒｉｔｙ）プロトコルを用いた通信を行うことで実現できる。
このような暗号通信方式を適用したプロトコルを用いることにより、通信端末装置１とクライアント２との通信が暗号化される。その結果、ネットワーク３を介しての通信端末装置１とクライアント２との通信が傍受されても、通信端末装置１とクライアント２との通信内容を知られることが無くなる。
【００５５】
データベース検索部２３は、通信端末装置１に備わったデータベース部１１のデータベース検索を行うためのリクエスト４０（図３）を送信する。また、データベース検索部２３は、通信端末装置１から第１送信データ６０（図５）又は第２送信データ７０（図６）を受信する。そして、データベース検索部２３は、受信されたデータ種類及び内容に基づいて、データベース検索結果を図示されない表示部などに出力する。
【００５６】
データベース検索部２３は、Ｗｅｂブラウザにより実現されていてもよいし、専用ソフトウェアとして実現されていてもよい。
データベース検索部２３がＷｅｂブラウザにより実現されている場合、クライアント２に新たな専用ソフトウェアをインストールする必要がなくなる。また、クライアント２のオペレーティングシステムに依存しないデータベース検索部２３を提供できる。
データベース検索部２３が専用ソフトウェアにより実現されている場合は、データベース検索部２３を安定動作できる。また、通信端末装置１とクライアント２との通信プロトコルがＨＴＴＰプロトコルに限られず、他の通信プロトコルの利用も可能となる。
【００５７】
キャッシュ部２５は、データベース検索部２３がデータベース検索結果を出力するために用いたデータを、当該データが生成された時のクエリ情報４０−１と関連付けて蓄積する。キャッシュ部２５は、クライアント２に備わったＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ハードディスク、及びＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｉｓｋ）（図示せず）などの記憶領域の一部に領域が確保される。キャッシュ部２５のために確保される記憶領域の大きさは、固定であってもよいし、変動してもよい。
【００５８】
キャッシュ部２５に蓄積されたデータは、キャッシュ使用を指示する情報を含む第１送信データ６０がクライアント２にて受信された際に、データベース検索部２３がデータベース検索結果を出力するために用いられる。
これにより、通信端末装置１からキャッシュを使用するよう指示された（第１送信データ６０が送信された）場合に、クライアント２はキャッシュ部２５に蓄積されたデータを用いてデータベース検索結果を出力できる。よって、データベース検索毎に通信端末装置１からデータベース検索結果に基づく内容を含むデータを新たに受信する必要がなくなる。その結果、検索リクエストの応答として通信端末装置１からクライアント２へ送信するデータのデータ量を節約できる。
【００５９】
また、一般的に、クライアントにおいて、ネットワークを介してサーバからデータを受信し当該受信データを情報処理するよりも、クライアント内に格納されているデータを読み出して情報処理するほうが速い。データベース検索結果を出力するためにキャッシュ部２５に蓄積されたデータを使用すればよい場合には、当該データを用いてデータベース検索結果を表示することにより、データベース検索結果の出力を高速化できる。
【００６０】
１−３．通信端末装置の構成
次に、図１を参照して、通信端末装置１の構成について説明する。ここでは、データベース部１１を有するデータベースサーバである通信端末装置１を例にとって説明する。
通信端末装置１は、さらに、ネットワークインターフェース１３と、データベース検索結果送信部１５と、を有する。
【００６１】
ネットワークインターフェース１３は、ネットワーク３に接続されている。ネットワークインターフェース１３は、通信端末装置１と、クライアント２とのネットワーク通信を実行する。ネットワークインターフェース１３は、例えば、イーサーネット（Ｅｔｈｅｒｎｅｔ）（登録商標）カードなどである。
【００６２】
クライアント２のネットワークインターフェース２１と同様、特に、通信端末装置１とクライアント２とが、主にＨＴＴＰプロトコルを用いて通信を行う場合、ネットワークインターフェース１３は、通信プロトコルとして、ＴＣＰ／ＩＰプロトコルを使用できる。その他の場合においては、通信プロトコルは、特にＴＣＰ／ＩＰプロトコルに限られない。
【００６３】
また、上述のように、通信端末装置１とクライアント２とは、十分なセキュリティ対策が採れる通信方式で通信を行ってもよい。十分なセキュリティ対策を採ることができる通信方式として、例えば、ＨＴＴＰ  ｏｖｅｒ  ＳＳＬ／ＴＳＬプロトコルを使用できる。
【００６４】
データベース検索結果送信部１５は、通信端末装置１のデータベース部１１とネットワークインターフェース１３との間に備えられている。すなわち、クライアント２のデータベース検索部２３から通信端末装置１に送信されたデータベース検索のリクエスト４０、及び、データベース部１１のデータベース検索結果は、データベース検索結果送信部１５に入力されるようになっている。そして、リクエスト４０中のクエリ情報４０−１は、データベース検索結果送信部１５から通信端末装置１のデータベース部１１へ送信される。そして、データベース部１１は、当該クエリ情報４０−１に基づきデータベース検索を行う。また、第１送信データ６０及び（必要に応じて）第２送信データ７０は、データベース検索結果送信部１５からクライアント２に送信される。
【００６５】
データベース検索結果送信部１５は、第１送信データ６０又は（必要に応じて）第２送信データ７０をクライアント２に送信する際、（１）過去に、今回のクエリ情報４０−１と同一のクエリ情報４０−１（登録クエリ情報１５１１（図４））に基づくデータベース検索がなされたか、（２）過去に今回と同一のクエリ情報に基づいたデータベース検索がなされている場合、過去のデータベース検索の検索結果に基づいた内容を含む登録更新検証データ１５１２（図４）は、今回のクエリ情報４０−１に基づいて行われたデータベース検索の検索結果に基づいた内容を含む更新検証データと一致するか、の真偽を判定する。そして、当該判定結果に基づいて、クライアント２に送信すべき送信データを選択する。
【００６６】
ここで、更新検証データは、今回のクエリ情報４０−１に基づくデータベース検索の検索結果のうち、上記条件（２）（第２条件）を判定するために必要なデータ（内容）を少なくとも含んでいればよい。よって、更新検証データは、当該データベース検索の検索結果の内容（の全て又は一部）であってもよい。さらに、更新検証データは、当該検索結果に基づいて必要に応じて加工されたデータであってもよい。検索結果に基づいて必要に応じて加工されたデータの例として、後述するレスポンスデータがある。
また、登録更新検証データ１５１２は、更新検証データと同様、登録クエリ情報１５１１に基づく過去のデータベース検索の検索結果のうち、上記条件（２）（第２条件）を判定するために必要なデータ（内容）を少なくとも含んでいればよい。よって、登録更新検証データ１５１２は、登録クエリ情報１５１１に基づく過去のデータベース検索の検索結果の内容（の全て又は一部）であってもよい。さらに、登録更新検証データ１５１２は、登録クエリ情報１５１１に基づく過去のデータベース検索の検索結果に基づいて必要に応じて加工されたデータであってもよい。過去のデータベース検索の検索結果に基づいて必要に応じて加工されたデータの例として、後述する登録レスポンスデータ１５１２−１がある。
そして、更新検証データと登録更新検証データ１５１２のデータ形式（検索結果であるか、レスポンスデータであるか）は、同一にすることが好ましい。更新検証データと登録更新検証データ１５１２のデータ形式を同一にすることにより、データ変換などの処理をすることなく、更新検証データの内容と登録更新検証データ１５１２の内容との比較を行える。
【００６７】
なお、データベース検索結果送信部１５による、上記条件（１）及び（２）の判定方法、及び、データベース検索結果送信部１５からクライアント２へ送信すべきデータの選択方法については、後ほど説明する。
【００６８】
また、データベース検索結果送信部１５は、ＨＴＴＰサーバなどのサーバ機能と組み合わせてその機能を実現できる。この場合、後述するデータベース検索結果送信部１５の各構成要素の一部又は全てを、サーバのプログラムモジュールとして実現してもよい。これにより、既存のサーバを用いてデータベース検索結果送信部１５の機能を実現できる。
【００６９】
１−３−１．データベース検索結果送信部の構成
次に、図２ａ〜図２ｃを参照して、データベース検索結果送信部１５の構成について説明する。
データベース検索結果送信部１５は、主に、記憶部１５１と、リクエスト受信部１５２と、データ送信部１５３と、を有する（図２ａ）。
上記のデータベース検索結果送信部１５の各機能は、通信端末装置１上で動作するプログラムとして実現されていても良い。また、プログラムとして実現された上記データベース検索結果送信部１５の各機能及びデータベース部１１は、通信端末装置１に備わるＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ、ハードディスク、及びＳＳＤなどの記憶領域に記憶されていてもよい。
【００７０】
記憶部１５１（図４）は、過去のデータベース検索のクエリ情報４０−１である登録クエリ情報１５１１と登録クエリ情報１５１１に基づくデータベース検索の検索結果に基づいた内容を含む登録更新検証データ１５１２（登録更新検証データ１５１２が、登録レスポンスデータの場合は、登録レスポンスデータ１５１２−１）とを関連付けて記憶する。記憶部１５１は、通信端末装置１の記憶領域に生成されたデータファイルとして実現可能である。記憶部１５１のファイル形式は、バイナリ形式であっても、テキスト形式であってもよい。
また、記憶部１５１は１つであってもよいし、記憶部１５１中に複数のサブ記憶部１５１−１、１５１−２、・・・（図１０）が存在してもよい。記憶部１５１が複数のサブ記憶部１５１−１、１５１−２、・・・により構成されている場合、記憶部１５１は、サブ記憶部１５１−１、１５１−２、・・・のデータファイルが格納されたデータフォルダー（ディレクトリーと呼ぶこともある）であるとしてもよい。また、記憶部１５１は、サブ記憶部１５１−１、１５１−２、・・・が識別子により区切られて記述されたデータファイルであってもよい。さらに、記憶部１５１は、通信端末装置１に備わる記憶領域の一部に設けられたパーティションであってもよい。この場合、それぞれのサブ記憶部１５１−１、１５１−２、・・・は当該パーティションのそれぞれに存在することになる。
なお、記憶部１５１（サブ記憶部１５１−１、１５１−２、・・・）のデータ構造については、後に説明する。
【００７１】
リクエスト受信部１５２は、クライアント２のデータベース検索部２３から、ネットワークインターフェース２１、ネットワーク３、ネットワークインターフェース１３を介して送信された、クエリ情報４０−１を含むリクエスト４０を受信する。通信端末装置１は、リクエスト４０に含まれるクエリ情報４０−１に基づいてデータベース部１１のデータベース検索を行う。
【００７２】
なお、リクエスト４０（図３）のデータ構成については、後に説明する。
【００７３】
データ送信部１５３は、以下の第１条件と第２条件について真偽判定を行う。そして、第１条件が真であり、かつ、第２条件が真である場合、データ送信部１５３は第１送信データ６０（図５）をクライアント２に送信する。
第１条件：クエリ情報４０−１と一致する登録クエリ情報１５１１が、記憶部１５１に記憶されている。
第２条件：クエリ情報４０−１と一致する登録クエリ情報１５１１に関連付けられた登録更新検証データ１５１２の内容が、当該クエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致する。
【００７４】
すなわち、データ送信部１５３は、（１）過去に、今回のデータベース検索のクエリ情報４０−１と同一のクエリ情報４０−１（登録クエリ情報１５１１）に基づいてデータベース検索が行われたことがある（第１条件が真の場合に対応）、及び、（２）当該登録クエリ情報１５１１に基づいて過去に行われたデータベース検索結果に基づいた内容を含む登録更新検証データ１５１２が、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データと同一である（第２条件が真の場合に対応）、について真偽判定を行う。
このような監視処理を採用することにより、データベースの監視処理及び／又はキャッシュ情報更新処理の負荷を軽減できる。その結果、データベースに関する管理負荷を減少できる。
【００７５】
また、後述するように、上記の第１送信データ６０のデータ量は一般的に小さい。そのため、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容を含むデータ（更新検証データ）が、今回のクエリ情報４０−１と同一のクエリ情報に基づく過去のデータベース検索の検索結果に基づいた内容を含むデータ（登録更新検証データ１５１２）と一致する場合、大量のデータを送信することを抑制できる。その結果、通信端末装置１から送信されるデータのデータ量を節約できる。
【００７６】
また、通信端末装置１は、レスポンスデータ生成部１５４を備えていてもよい（図２ｂ）。レスポンスデータ生成部１５４は、クエリ情報４０−１に基づいて行われたデータベース検索の検索結果に基づいて、レスポンスデータを生成する。レスポンスデータは、クライアント２のデータベース検索部２３がデータベース検索結果の出力を行うためのデータである。例えば、データベース検索部２３がＷｅｂブラウザで実現される場合、レスポンスデータは、データベース検索結果を必要に応じてＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）やＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）などにより記述された状態に加工されたデータである。これにより、今回のクエリ情報４０−１に基づいて行われたデータベース検索の検索結果に基づいてレスポンスデータを生成できる。
【００７７】
さらに、データ送信部１５３は、第１条件を満たさない、又は、第２条件を満たさないと判定した場合、レスポンスデータを含む第２送信データ７０を送信してもよい。
すなわち、（１）過去に、今回のデータベース検索のクエリ情報４０−１と同一のクエリ情報４０−１（登録クエリ情報１５１１）に基づいてデータベース検索が行われたことがない場合、又は、（２）当該登録クエリ情報１５１１に基づいて過去に行われたデータベース検索の検索結果に基づいた内容を含む登録更新検証データ１５１２と、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データとが同一でない場合、データ送信部１５３は、レスポンスデータを含む第２送信データ７０を送信してもよい。これにより、通信端末装置１は、データベース検索の検索結果に応じて、正しいレスポンスデータを送信できる。
【００７８】
また、さらに、第１条件が真であり、かつ、第２条件が偽である場合に、第２送信データ７０を送信するようにしてもよい。これにより、特に、今回のクエリ情報４０−１と同一のクエリ情報（登録クエリ情報１５１１）に基づいて過去にデータベース検索が行われていた場合でも、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容（更新検証データ）と、当該登録クエリ情報１５１１に基づく過去のデータベース検索の検索結果に基づいた内容（登録更新検証データ１５１２）とが異なる場合、すなわち、特に検索結果の内容が異なる場合のみに、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいて生成されたレスポンスデータを送信できる。その結果、通信端末装置１から送信されるデータのデータ量を節約できる。
【００７９】
なお、データ送信部１５３から送信される、第１送信データ６０及び第２送信データ７０のデータ構成については、後ほど説明する。
【００８０】
データベース検索結果送信部１５は、さらに記憶部更新部１５５を有していてもよい（図２ｃ）。記憶部更新部１５５は、データ送信部１５３が第２送信データ７０（図６）を送信したときに、記憶部１５１の内容を更新する。
【００８１】
例えば、第１条件を満たし、かつ、第２条件を満たさない場合、記憶部更新部１５５は、クエリ情報４０−１と一致する登録クエリ情報１５１１に関連付けられた登録更新検証データ１５１２を、今回のクエリ情報４０−１に基づいて行われたデータベース検索の検索結果に基づいた内容を含む更新検証データへと更新してもよい。すなわち、例えば、同一のクエリ情報４０−１に基づいて過去に行われたデータベース検索の検索結果が今回の検索結果と異なったため、登録更新検証データ１５１２が今回のデータベース検索の検索結果に基づく更新検証データと異なった場合に、記憶部更新部１５５は、登録更新検証データ１５１２のみを上記更新検証データに更新する。
【００８２】
また、第１条件を満たさない場合、記憶部更新部１５５は、今回のクエリ情報４０−１と今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づく内容を含んだ更新検証データとを関連付けて、新たな登録クエリ情報１５１１及び新たな登録更新検証データ１５１２として、記憶部１５１に追加してもよい。すなわち、過去に今回のクエリ情報４０−１に基づいたデータベース検索が行われたことがない場合、記憶部更新部１５５は、今回のクエリ情報４０−１と今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づく内容を含んだ更新検証データとを関連付けて、新たな登録クエリ情報１５１１及び新たな登録更新検証データ１５１２として、記憶部１５１に追加する。
【００８３】
記憶部更新部１５５が、上記のように記憶部１５１に記憶された登録クエリ情報１５１１及び／又は登録更新検証データ１５１２を更新することにより、記憶部１５１に記憶された登録クエリ情報１５１１及び登録更新検証データ１５１２を最新の状態に維持できる。また、キャッシュ情報の定期的な再構築処理のような管理負荷の高い処理が不要となる。これにより、通信端末装置１のデータベースに関する管理負荷を減少できる。
【００８４】
１−３−２．リクエストのデータ構成
次に、図３を参照して、リクエスト４０のデータ構成を説明する。リクエスト４０は、クライアント２のデータベース検索部２３から送信される、データベース検索に関するリクエストである。
図３に示すリクエスト４０は、通信端末装置１とクライアント２とが、ＨＴＴＰプロトコルにより、ネットワーク３を介して通信している場合に用いられるリクエスト４０の例である。
【００８５】
リクエスト４０は、主に、クエリ情報４０−１を有する。クエリ情報４０−１は、今回のデータベース検索を行うための情報である。従って、クエリ情報４０−１には、データベース部１１のデータベース検索を行うための検索式などが記述されている。例えば、図３に示されたクエリ情報４０−１は、「データベースデータの１ページ目を２０行分リスト表示せよ」というデータベース検索を行うためのクエリ情報である。
【００８６】
また、リクエスト４０には、クエリ情報４０−１に加えて、検索リクエスト識別情報４０−２が含まれていてもよい。検索リクエスト識別情報４０−２は、クエリ情報４０−１以外の、データベース検索の識別を行うための情報である。
図３に示す検索リクエスト識別情報４０−２の例では、検索リクエスト識別情報４０−２のパラメータとして、「ＳＥＳＳＩＯＮ＿ＩＤ」が定義されている。そして、パラメータ「ＳＥＳＳＩＯＮ＿ＩＤ」に「ａｂｃｄ１２３」という値（文字列）が指定されている。
【００８７】
上記の「ＳＥＳＳＩＯＮ＿ＩＤ」に指定される値は、クライアント２を用いてデータベース検索を行っているユーザに関する情報である。このような検索リクエスト識別情報４０−２は、例えば、記憶部１５１が複数のサブ記憶部１５１−１、１５１−２、・・・（図１０）により構成されている場合に、どのサブ記憶部１５１−１、１５１−２、・・・の登録クエリ情報１５１１及び／又は登録更新検証データ１５１２を、今回のクエリ情報４０−２及び／又は更新検証データとの比較のために用いるかを選択する場合に使用する。このような場合、サブ記憶部１５１−１、１５１−２、・・・は、通信端末装置１によりデータベース部１１のデータベース検索を行うことを許可されたユーザの数だけ少なくとも存在している。そして、サブ記憶部１５１−１、１５１−２、・・・は、それぞれのユーザに１つ（場合によっては複数）割り当てられている。
【００８８】
パラメータ「ＳＥＳＳＩＯＮ＿ＩＤ」に割り当てられる値（文字列）は、データベース検索を行うために、ユーザがクライアント２を用いて通信端末装置１にログインしたときに、通信端末装置１により決定される。この時、通信端末装置１は当該値とユーザ情報とを関連付けて記憶する。
【００８９】
クライアント２は、データベース検索を行うためにリクエスト４０を送信する際に、図３の検索リクエスト識別情報４０−２に示したように、Ｃｏｏｋｉｅを用いて、クライアント２が受信した「ＳＥＳＳＩＯＮ＿ＩＤ」の値を通信端末装置１に送信する。
Ｃｏｏｋｉｅとは、Ｗｅｂブラウジングにおいて用いられる手法であって、ユーザによるＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）（本実施形態では、クエリ情報４０−１に相当）へのアクセスの状態を管理する手法である。
これにより、クライアント２は、どのユーザが通信端末装置１のデータベース部１１のデータベース検索を行おうとしているかを、通信端末装置１へ通知できる。
【００９０】
このような検索リクエスト識別情報４０−２をリクエスト４０に含めることで、さらに詳細にリクエスト４０の識別を行うことができる。これにより、登録クエリ情報１５１１及び／又は当該登録クエリ情報１５１１に基づいて過去に行われたデータベース検索の検索結果に基づいた内容を含む登録更新検証データ１５１２と、今回のクエリ情報４０−１及び／又は今回のデータベース検索の検索結果に基づいた内容を含む更新検証データとの比較検証を精度良く行える。
【００９１】
また、リクエスト４０は、前回アクセス情報４０−３をさらに含んでいてもよい。当該前回アクセス情報４０−３は、クライアント２が指定されたＵＲＬに過去においてアクセスしたことがあることを示す情報である。前回アクセス情報４０−３がリクエスト４０に存在していない場合、データベース検索結果送信部１５は、記憶部１５１の内容を参照することなく、クライアント２により指定されたＵＲＬ（本実施形態ではクエリ情報４０−１に相当）に今回初めてクライアント２がアクセスすることを知ることができる。
【００９２】
従って、通信端末装置１は、前回アクセス情報４０−３がリクエスト４０中に存在しない場合には、記憶部１５１の内容を参照することなく、必要に応じて第２送信データ７０を送信することを決定できる。
【００９３】
１−３−３．記憶部（サブ記憶部）のデータ構成
次に、図４を参照して、記憶部１５１のデータ構成を説明する。なお、サブ記憶部１５１−１、１５１−２、・・・も以下に説明する記憶部１５１と同じデータ構造を有している。
記憶部１５１は、登録クエリ情報１５１１と、登録更新検証データ１５１２とを有する。登録クエリ情報１５１１は、通信端末装置１において過去に行われたデータベース検索１件分のクエリ情報である。登録更新検証データ１５１２は、登録クエリ情報１５１１に関連付けられて記憶部１５１に記憶されている。登録更新検証データ１５１２は、関連付けられた登録クエリ情報１５１１に基づいて過去に行われたデータベース検索の検索結果に基づいた内容を含む更新検証データである。図４に示す記憶部１５１の例では、登録更新検証データ１５１２は、登録クエリ情報１５１１と連結されて記憶されている。
【００９４】
図４における例では、登録更新検証データ１５１２はハッシュ値として記憶部１５１に記憶されている。また、登録更新検証データ１５１２は、ハッシュ値以外にも、チェックサム値として記憶部１５１に記憶されていてもよい。これにより、特に、登録更新検証データ１５１２のデータサイズが大きい場合に、記憶部１５１に記憶する登録更新検証データ１５１２のデータサイズを縮小（圧縮）できる。
その結果、記憶部１５１により多くの登録クエリ情報１５１１及び登録更新検証データ１５１２を記憶できる。
【００９５】
その他、登録更新検証データ１５１２は、データベース検索結果に基づいた内容を含む更新検証データそのものであってもよい。この登録更新検証データ記憶方法は、例えば、更新検証データのデータサイズが小さい場合など、データサイズを縮小する必要がない場合に使用できる。
【００９６】
また、前述のように、本実施形態の通信端末装置１においては、過去に今回のクエリ情報４０−１と同一のクエリ情報に基づいたデータベース検索が行われていない場合、記憶部更新部１５５が、今回のクエリ情報４０−１と今回のクエリ情報４０−１に基づくデータベース検索の検索結果の内容を含む更新検証データとを関連付けて（連結して）、新たな登録クエリ情報１５１１及び新たな登録更新検証データ１５１２として、記憶部１５１に追加してもよい。
このとき、図４に示すように、新たな登録クエリ情報１５１１と新たな登録更新検証データ１５１２は、これまでに記憶部１５１に記憶されていた登録クエリ情報１５１１及び登録更新検証データ１５１２に積み重ねるように追加できる。
【００９７】
また、新たな登録クエリ情報１５１１及び新たな登録更新検証データ１５１２の記憶部１５１への追加方法は、これに限られない。例えば、新たな登録クエリ情報１５１１及び新たな登録更新検証データ１５１２を、これまでに記憶部１５１に記憶されていた登録クエリ情報１５１１及び登録更新検証データ１５１２の末尾に連続的に接続してもよい。この場合、登録クエリ情報１５１１とそれに連結された登録更新検証データ１５１２をひとかたまりとして識別するために、末尾の登録更新検証データ１５１２と新たに追加される登録クエリ情報１５１１との間に識別子（例として、スペース、コンマ、タブなど）を挿入してもよい。この場合、データ送信部１５３は、当該識別子により、登録クエリ情報１５１１とそれに連結された登録更新検証データ１５１２とをひとかたまりと認識可能となる。
【００９８】
１−３−４．第１送信データと第２送信データのデータ構成
次に、データ送信部１５３から送信される第１送信データ６０と第２送信データ７０のデータ構成を、それぞれ、図５及び図６を参照して説明する。
【００９９】
図５は、第１送信データ６０のデータ構成を示す図である。図５に示す第１送信データ６０の例は、通信端末装置１とクライアント２が、ＨＴＴＰプロトコルを用いて通信しているときに用いられる。
【０１００】
図５に示す第１送信データ６０は、ヘッダ部６０−１を有している。第１送信データ６０は、ヘッダ部６０−１のみを有している場合が多い。よって、第１送信データ６０のデータサイズは小さくなる。
第１送信データ６０は、ヘッダ部６０−１以外のデータ部（図示せず）を有していてもよい。しかし、第１送信データ６０にデータ部が存在したとしても、クライアント２のデータベース検索部２３は、ヘッダ部６０−１が第１送信データ６０に含まれるため、受信した第１送信データ６０のデータ部は存在しないものとみなして情報処理を行う。よって、データサイズを節約するため、第１送信データ６０には、ヘッダ部６０−１のみが存在することが好ましい。
【０１０１】
図５に示す第１送信データ６０において、ヘッダ部６０−１に含まれる点線で囲んだ「ＨＴＴＰ／１．１  ３０４  Ｎｏｔ  Ｍｏｄｉｆｉｅｄ」の記述が、クライアント２にキャッシュ使用を指示する情報に対応する。この記述は、ＨＴＴＰプロトコルによる通信において、要求元端末が最新のデータを保持していることを示す情報である。すなわち、上記記述は、クライアント２にキャッシュされたデータを使用するように指示するステータスコードである。
【０１０２】
一般的に、ヘッダ部６０−１に上記記述を含んだＨＴＴＰサーバからの応答を受信したＷｅｂブラウザは、Ｗｅｂブラウザのキャッシュデータを用いて、当該ＵＲＬにより特定されたＷｅｂページの内容をＷｅｂブラウザ上に表示する。
本実施形態では、上記ＨＴＴＰサーバは、データベース検索結果送信部１５と読み替えることができ、上記のＷｅｂブラウザは、クライアント２のデータベース検索部２３と読み替えることができる。さらに、上記キャッシュデータは、本実施形態では、クライアント２のキャッシュ部２５に蓄積されたデータと読み替えることができる。
【０１０３】
図６は、データ送信部１５３から送信される第２送信データ７０のデータ構成を示す図である。図６に示す第２送信データ７０の例は、通信端末装置１とクライアント２とが、ＨＴＴＰプロトコルを用いて通信しているときに用いられる。
図６に示す第２送信データ７０は、ヘッダ部７０−１と、データベース検索結果内容部７０−２とを有している。
【０１０４】
ヘッダ部７０−１は、データベース検索部２３からのリクエスト４０が正常に処理されたことを示す記述及び／又は、データベース検索結果内容部７０−２に関する情報を含んでいる。
【０１０５】
データベース検索結果内容部７０−２は、データベース検索部２３がレスポンスデータ（検索結果）を表示するために必要な情報を含んでいる。すなわち、データベース検索結果内容部７０−２には、今回のクエリ情報４０−１に基づいて行われたデータベース検索の検索結果から生成されたレスポンスデータ（検索結果）が挿入されている。
【０１０６】
２．データベース検索結果送信部の動作
２−１．第１実施形態に係るデータベース検索結果送信部の動作
次に、本実施形態のデータベース検索結果送信部１５の動作について、図７ａ〜図７ｃを参照して説明する。図７ａ〜図７ｃは、本実施形態のデータベース検索結果送信部１５の動作を示すフローチャートである。以下に示す例では、更新検証データは、今回のクエリ情報４０−１に基づくデータベース検索の検索結果とし、登録更新検証データ１５１２は、登録クエリ情報１５１１に基づく過去のデータベース検索の検索結果であるとする。
図７ａに示すように、データベース検索結果送信部１５の動作は、主に、リクエスト受信ステップＳ１と、更新検証ステップＳ２と、データ送信ステップＳ３と、を有する。
【０１０７】
リクエスト受信ステップＳ１では、データベース検索部２３からデータベース検索のためのリクエスト４０が送信されると、リクエスト受信部１５２がリクエスト４０を受信する。リクエスト４０を受信後、更新検証ステップＳ２に進む。
【０１０８】
なお、リクエスト４０に前述の検索リクエスト識別情報４０−２が含まれる場合で、記憶部１５１が複数のサブ記憶部１５１−１、１５１−２、・・・により構成されている場合は、更新検証ステップＳ２に進む前に、どのサブ記憶部１５１−１、１５１−２、・・・を更新検証ステップＳ２において用いるかが決定される。
更新検証ステップＳ２において用いるサブ記憶部１５１−１、１５１−２、・・・は、リクエスト受信ステップＳ１において受信したリクエスト４０の検索リクエスト識別情報４０−２に基づいて決定される。具体的には、以下のようにして更新検証ステップＳ２において用いるサブ記憶部１５１−１、１５１−２、・・・を決定する。
【０１０９】
まず、データ送信部１５３は、リクエスト受信部１５２において受信したリクエスト４０の検索リクエスト識別情報４０−２から、ユーザ情報を抽出する。これは、具体的には、以下のようにして行われる。
【０１１０】
まず、データ送信部１５３は、検索リクエスト識別情報４０−２のパラメータ「ＳＥＳＳＩＯＮ＿ＩＤ」に指定された値（文字列）を抽出する。そして、当該抽出された値（文字列）がどのユーザと関連付けられているかを判定する。
その後、データ送信部１５３は、当該ユーザに割り当てられたサブ記憶部１５１−１、１５１−２、・・・を決定する。具体的には、例えば、以下のようにして決定できる。
ここで、図１０に示すように、サブ記憶部１５１−１、１５１−２、・・・はそれぞれ１つのデータファイルとして構成され、１つのサブ記憶部１５１−１、１５１−２、・・・が１のユーザにユーザ名をファイル名として割り当てられている場合を例として説明する。
上記の処理工程により、「ＳＥＳＳＩＯＮ＿ＩＤ」から抽出された文字列「ａｂｃｄ１２３」が、ユーザ「ａｂｃ」に関連付けられていたと判定されたとする。この場合、データ送信部１５３は、ファイル名が「ａｂｃ」であるサブ記憶部１５１−１、１５１−２、・・・を検索する。そして、データ送信部１５３は、ファイル名が「ａｂｃ.ｄａｔ」であるサブ記憶部１５１−２を、更新検証ステップＳ２において用いるサブ記憶部として決定する。
上記のように、必要に応じて、データ送信部１５３が更新検証ステップＳ２において用いる記憶部１５１又はサブ記憶部１５１−１、１５１−２、・・・を決定した後、更新検証ステップＳ２へ進む。
【０１１１】
更新検証ステップＳ２では、記憶部１５１（サブ記憶部１５１−２）に記憶された登録クエリ情報１５１１及び／又は登録更新検証データ１５１２の内容と、今回のデータベース検索のためのクエリ情報４０−１及び／又は今回のクエリ情報４０−１に基づくデータベース検索の検索結果の内容を含む更新検証データとの内容とを比較する。そして、当該比較結果に基づいて、今回のデータベース検索が過去においてなされたか、及び、今回と同一のクエリ情報４０−１に基づいて行われた過去のデータベース検索の検索結果に基づいた内容を含む登録更新検証データ１５１２は、今回のクエリ情報４０−１に基づいて行われたデータベース検索の検索結果に基づいた内容を含む更新検証データと一致するか、を判定する。
【０１１２】
更新検証ステップＳ２は、ステップＳ２１とＳ２２とを有している。
ステップＳ２１においては、データ送信部１５３が、今回のクエリ情報４０−１と一致する登録クエリ情報１５１１が、記憶部１５１（サブ記憶部１５１−２）に存在するか（第１条件）を判定する。具体的には、例えば、記憶部１５１（サブ記憶部１５１−２）に記憶された登録クエリ情報１５１１を順次文字列検索し、今回のデータベース検索のためのクエリ情報４０−１の文字列と一致する登録クエリ情報１５１１が存在した場合に、第１条件が真であると判定する。その他、登録クエリ情報１５１１の内容（記憶形式）に従って、適当な検索方法を使用できる。
【０１１３】
第１条件が真である場合（ステップＳ２１において「一致」の場合）、ステップＳ２２へ進む。
【０１１４】
ステップＳ２１において「一致」となった場合、データ送信部１５３は、リクエスト４０の今回のクエリ情報４０−１と一致する登録クエリ情報１５１１に関連付けられた登録更新検証データ１５１２の内容が、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致するかどうかを検証する（第２条件の真偽検証）（ステップＳ２２）。
【０１１５】
このとき、データ送信部１５３は、以下のようにして更新検証データを決定する。
まず、データ送信部１５３は、リクエスト４０のクエリ情報４０−１をデータベース部１１に送信し、データベース部１１に当該クエリ情報４０−１に基づくデータベース検索を行わせる。その後、データベース部１１は、当該クエリ情報４０−１に基づくデータベース検索の検索結果をデータ送信部１５３に出力する。そして、データ送信部１５３は、当該検索結果の全体又は一部の範囲を必要に応じて選択し、更新検証データとする。
なお、上記の更新検証データの決定は、ステップＳ２２中において行われると限られない。例えば、上記の更新検証データの決定を、更新検証ステップＳ２の開始前に行ってもよい。
【０１１６】
リクエスト４０のクエリ情報４０−１と一致する登録クエリ情報１５１１に関連付けられた登録更新検証データ１５１２の内容が、上記のようにしてデータ送信部１５３により決定された更新検証データと一致する場合、すなわち、第２条件が真である場合（ステップＳ２２において「一致」の場合）、データ送信ステップＳ３のステップに進む。
【０１１７】
データ送信ステップＳ３では、更新検証ステップＳ２における判定に基づいて、クライアント２のデータベース検索部２３に送信する送信データを選択し、当該選択された送信データをクライアント２に送信する。
【０１１８】
ステップＳ２において、第１条件が真であり、かつ、第２条件が真である（すなわち、ステップＳ２１において「一致」となり、かつ、ステップＳ２２において「一致」となった）と判定された場合、データ送信部１５３は、キャッシュ使用を指示する情報を含む第１送信データ６０をクライアント２に送信する（ステップＳ３１）。
【０１１９】
上記のように、更新検証データが、今回のクエリ情報４０−１に基づいて行われたデータベース検索の検索結果であり、登録更新検証データ１５１２が、登録クエリ情報１５１１に基づく検索結果であった場合、次のような作用効果がある。すなわち、今回のクエリ情報４０−１に基づくデータベース検索の検索結果が、同一のクエリ情報（登録クエリ情報１５１１）に基づいて過去に行われたデータベース検索結果（登録更新検証データ）と同じであれば、通信端末装置１がキャッシュ使用を指示する場合に、第１送信データ６０を正しく送信できる。
【０１２０】
また、上記ステップＳ３により、第１条件が「真」（すなわち、今回のクエリ情報４０−１と同一のクエリ情報に基づくデータベース検索が過去に行われた）であり、かつ、第２条件が「真」（すなわち、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データが、今回のクエリ情報４０−１と同一のクエリ情報に基づく過去のデータベース検索の検索結果に基づいた内容を含む更新検証データ（登録更新検証データ１５１２）の内容と一致する）である場合に、キャッシュ使用を指示する情報を含む第１送信データ６０を送信する。このような第１送信データ６０のデータ量は一般的に小さい。
そのため、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいたデータ（更新検証データの一例）が、今回のクエリ情報と同一のクエリ情報（登録クエリ情報１５１１）に基づく過去のデータベース検索の検索結果に基づいたデータ（登録更新検証データの一例）と一致する場合に、大量のデータを送信することを抑制できる。その結果、通信端末装置から送信されるデータのデータ量を節約できる。
【０１２１】
なお、図７ｂに示すように、ステップＳ２において、第１条件が偽である、又は、第２条件が偽であると判定された場合（すなわち、ステップＳ２１において「不一致」となるか、又は、ステップＳ２２において「不一致」となった場合）、データ送信部１５３は、クライアント２のデータベース検索部２３がデータベース検索結果の出力を行うために用いるレスポンスデータを含む第２送信データ７０を送信してもよい（ステップＳ３２）。
この時、通信端末装置１は、前述のレスポンスデータ生成部１５４を有している（図２ｂ）。また、図７ｂに示すフローチャートの、リクエスト受信ステップＳ１からステップＳ３２までの間に、レスポンスデータ生成ステップＳＡを実行する（図７ｂに示す例では、レスポンスデータ生成ステップＳＡは、リクエスト受信ステップＳ１の実行後、更新検証ステップＳ２の開始前に実行されている）。なお、レスポンスデータ生成ステップの具体的な動作については後ほど説明する。
これにより、今回のクエリ情報４０−１と同一のクエリ情報に基づくデータベース検索が過去に行われたことがないか、あるいは、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データが、今回のクエリ情報４０−１と同一のクエリ情報に基づく過去のデータベース検索の検索結果に基づいた内容を含む更新検証データ（登録更新検証データ１５１２）の内容と一致しない場合に（データベース検索の検索結果に応じて）、正しいレスポンスデータ（検索結果）を送信できる。
【０１２２】
また、第１条件が真であり、かつ、第２条件が偽である場合に、特に第２送信データ７０を送信するようにしてもよい。これにより、特に、今回のクエリ情報４０−１と同一のクエリ情報に基づいて過去にデータベース検索が行われていた場合でも、今回のデータベース検索の検索結果に基づく内容と、過去のデータベース検索の検索結果に基づく内容が異なる場合、すなわち、特に検索結果の内容が異なる場合にのみ、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいて生成されたレスポンスデータ（検索結果）を送信できる。
【０１２３】
なお、ステップＳ３２において、第２送信データ７０を受信したクライアント２のデータベース検索部２３は、以下のデータ更新処理を行ってもよい。
すなわち、今回のクエリ情報４０−１と同一のクエリ情報に基づいて過去に行われたデータベース検索の検索結果に基づいた内容を含むデータ（レスポンスデータも含む）がキャッシュ部２５に記憶（キャッシュ）されている場合、データベース検索部２３は、キャッシュされた当該データを、受信された第２送信データ７０に含まれるレスポンスデータ（検索結果）に置き換えてもよい。この場合、データベース検索部２３は、第２送信データ７０のデータベース検索結果内容部７０−２からレスポンスデータ（検索結果）を抽出してもよい。また、第２送信データ７０をそのままキャッシュ部２５にキャッシュしてもよい。
また、キャッシュ部２５に今回のクエリ情報４０−１と同一のクエリ情報４０−１に関連付けられてキャッシュされたデータが存在しない場合、データベース検索部２３は、キャッシュ部２５に、第２送信データ７０中のレスポンスデータ（検索結果）とクエリ情報４０−１とを関連付けてキャッシュしてもよい。
【０１２４】
これにより、キャッシュ部２５にキャッシュされているクエリ情報４０−１と上記のデータ（レスポンスデータを含む）とを、最新の状態に保つことができる。その結果、次回以降のデータベース検索の際、第１送信データ６０が通信端末装置１から送信された場合に、データベース検索部２３は、キャッシュ部２５にキャッシュされた上記のデータ（レスポンスデータを含む）を用いて正しいデータ（レスポンスデータ）を出力できる。
【０１２５】
なお、第２送信データ７０を送信（ステップＳ３２を実行）した場合、記憶部１５１（サブ記憶部１５１−２）の内容を更新する記憶部更新ステップＳ３３を実行してもよい（図７ｃ）。この場合、通信端末装置１は、記憶部更新部１５５を有しており（図２ｃ）、当該更新処理は記憶部更新部１５５により行われる。記憶部１５１（サブ記憶部１５１−２）の内容の更新は、下記の第１条件及び第２条件の真偽判定結果（ｉ）及び（ｉｉ）に基づき、以下のように行われる。
【０１２６】
（ｉ）第１条件を満たし、かつ、前記第２条件を満たさない。
この場合、記憶部更新部１５５は、クエリ情報４０−１と一致する登録クエリ情報１５１１に関連付けられた登録更新検証データ１５１２を、今回のクエリ情報４０−１に基づいて行われたデータベース検索の検索結果に基づいた内容を含む更新検証データの内容に更新する。すなわち、記憶部１５１（サブ記憶部１５１−２）のデータのうち、今回のクエリ情報４０−１と同一の登録クエリ情報１５１１に関連付けられた登録更新検証データ１５１２のみを更新する。
これは、今回のクエリ情報４０−１に基づくデータベース検索が過去に行われたことがあるが、今回のクエリ情報４０−１に基づくデータベース検索の検索結果の内容を含む更新検証データと、今回のクエリ情報４０−１と同一の登録クエリ情報１５１１に関連付けられた登録更新検証データ１５１２とが一致しない場合には、当該登録更新検証データ１５１２を今回のクエリ情報４０−１に基づくデータベース検索の検索結果の内容を含む更新検証データに書き換えることのみを行うことを意味している。
これにより、記憶部１５１（サブ記憶部１５１−２）に記憶されているデータ全体を更新する処理を行う必要がなくなる。その結果、通信端末装置１による管理負荷を軽減できる。
【０１２７】
（ｉｉ）第１条件を満たさない。
この場合、記憶部更新部１５５は、今回のデータベース検索のためのクエリ情報４０−１と今回のクエリ情報４０−１に基づくデータベース検索の検索結果の内容を含む更新検証データとを関連付けて、新たな登録クエリ情報１５１１及び新たな登録更新検証データ１５１２として、記憶部１５１（サブ記憶部１５１−２）に追加する。
これは、今回のクエリ情報４０−１に基づくデータベース検索が過去に行われたことがない場合には、次回以降のデータベース検索において今回と同じデータベース検索が行われることに備えて、新たな登録クエリ情報１５１１及び新たな登録更新検証データ１５１２を記憶部１５１（サブ記憶部１５１−２）に追加することを意味している。
これにより、登録クエリ情報１５１１及び登録更新検証データ１５１２を最新の状態に維持できる。また、記憶部１５１（サブ記憶部１５１−２）に記憶されているデータ全体を更新する処理を行う必要がなくなる。これにより、キャッシュ情報の定期的な再構築処理のような管理負荷の高い処理が不要となる。その結果、データベースに関する管理負荷を減少できる。
【０１２８】
さらに、リクエスト４０の中に前回アクセス情報４０−３が存在するかどうかの確認を行うステップＳ２３を、更新検証ステップＳ２中のステップＳ２１の前に追加してもよい。ステップＳ２３が追加された場合のデータベース検索結果送信部１５の動作を示すフローチャートを図８に示す。
この場合、ステップＳ２３において、データ送信部１５３は、リクエスト４０の中に前回アクセス情報４０−３が存在するかどうかを確認する。リクエスト４０の中に前回アクセス情報４０−３が存在する場合（ステップＳ２３において「Ｙｅｓ」の場合）、ステップＳ２１に進み、以後、図７ａ〜図７ｃと同様のステップを実行する。（図８に示した例では、ステップＳ２３以降、図７ｃに示したフローチャートと同様のステップが実行されている。）
一方、リクエスト４０の中に前回アクセス情報４０−３が存在しない場合（ステップＳ２３において「Ｎｏ」の場合）、データ送信ステップＳ３のステップＳ３２に進み、以後、図７ａ〜図７ｃと同様のステップを実行する。すなわち、前回アクセス情報４０−３が存在しない場合は、記憶部１５１（サブ記憶部１５１−１、１５１−２、・・・）の内容と、クエリ情報４０−１及び更新検証データの内容との比較を行うことなく、今回初めてクエリ情報４０−１に基づいたデータベース検索がなされたものとみなす。そして、第２送信データ７０を送信する。
これにより、前回アクセス情報４０−３がリクエスト４０中に存在しない場合に、更新検証ステップＳ２のステップＳ２１及び／又はＳ２２を経ることなく、通信端末装置１は、第２送信データ７０を送信することを決定できる。
【０１２９】
データ送信ステップＳ３の終了後、データベース検索結果送信部１５は、データベース検索結果の内容の送信を終了する。
【０１３０】
２−２．データベース検索結果送信部の変形例
上記のデータベース検索結果送信部１５の動作において、更新検証データ及び登録更新検証データ１５１２は、それぞれ、今回のクエリ情報４０−１及び登録クエリ情報１５１１に基づく今回及び過去のデータベース検索の検索結果の内容（の全体又は一部）であった。しかし、これに限られない。更新検証データ及び登録更新検証データ１５１２は、それぞれ、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいて生成されたレスポンスデータ、及び、登録クエリ情報１５１１に基づく過去のデータベース検索の検索結果に基づいて生成された登録レスポンスデータ１５１２−１であってもよい。
【０１３１】
この場合、通信端末装置１は少なくともレスポンスデータ生成部１５４を有している（図２ｂ）。また、レスポンスデータ生成ステップＳＡは、図７ｂに示すように、リクエスト受信ステップＳ１の実行後、更新検証ステップＳ２の開始前に実行される。それ以外の構成については、上記において説明した構成と同じである。また、レスポンスデータ生成部１５４についてはすでに説明したので、更新検証データ及び登録更新検証データ１５１２が、それぞれ、レスポンスデータ及び登録レスポンスデータ１５１２−１である場合の、データベース検索結果送信部１５の動作についてのみ以下に説明する。
【０１３２】
図７ｂは、更新検証データ及び登録更新検証データ１５１２が、それぞれ、上記のレスポンスデータ及び登録レスポンスデータ１５１２−１である場合にも適用可能な、データベース検索結果送信部１５の動作を説明するフローチャートである。この場合のデータベース検索結果送信部１５の動作は、主に、リクエスト受信ステップＳ１と、レスポンスデータ生成ステップＳＡと、更新検証ステップＳ２と、データ送信ステップＳ３と、を有する。
【０１３３】
リクエスト受信ステップＳ１では、データベース検索部２３からデータベース検索のためのリクエスト４０が送信されると、リクエスト受信部１５２がリクエスト４０を受信する。リクエスト４０を受信後、レスポンスデータ生成ステップＳＡに進む。
【０１３４】
このように、更新検証データ及び登録更新検証データ１５１２として、それぞれ、レスポンスデータ及び登録レスポンスデータ１５１２−１を用いる場合、レスポンスデータ生成ステップＳＡはリクエスト受信ステップＳ１後、更新検証ステップＳ２前に行われる。
【０１３５】
レスポンスデータ生成ステップＳＡでは、レスポンスデータが生成される。具体的には、レスポンスデータは、例えば、図９に示すフローチャートに従って生成される。以下に、図９に示されたレスポンスデータの生成過程を説明する。なお、図９にて示されるレスポンスデータの生成過程は、他の実施形態においてレスポンスデータを生成する際にも適用できる。
まず、レスポンスデータ生成部１５４は、ステップＳ１において受信されたリクエスト４０から、クエリ情報４０−１を抽出する（ステップＳＡ１）。具体的には、図３に示したデータ構造を有するリクエスト４０では、「ＧＥＴ  ／ｌｉｓｔ？Ｐａｇｅ＝１＆ｌｉｎｅ＝２０  ＨＴＴＰ／１．０」の記載の「ＧＥＴ」から「ＨＴＴＰ」の間の文字列（ｌｉｓｔ？Ｐａｇｅ＝１＆ｌｉｎｅ＝２０）を抽出する。
次に、レスポンスデータ生成部１５４は、抽出したクエリ情報４０−１をデータベース部１１に送信する（ステップＳＡ２）。クエリ情報４０−１を受け取ったデータベース部１１は、当該クエリ情報４０−１に基づいてデータベース検索を行い、データベース検索結果を出力する（ステップＳＡ３）。その後、データベース部１１から出力されたデータベース検索結果を、レスポンスデータ生成部１５４が受信する（ステップＳＡ４）。そして、レスポンスデータ生成部１５３は、受信したデータベース検索結果に基づいてレスポンスデータを生成する（ステップＳＡ５）。
【０１３６】
レスポンスデータ生成ステップＳＡにより、レスポンスデータを生成後、更新検証ステップＳ２へ進む。なお、ここで、前述したように、リクエスト４０中の検索リクエスト識別情報４０−２に基づいて、複数のサブ記憶部１５１−１、１５１−２、・・・を含む記憶部１５１から適切なサブ記憶部を選択するようにしてもよい。このとき、選択されたサブ記憶部を用いて以下の更新検証ステップＳ２が実行される。
【０１３７】
本変形例における更新検証ステップＳ２では、記憶部１５１（サブ記憶部）に登録された登録クエリ情報１５１１及び／又は登録レスポンスデータ１５１２−１の内容と、今回のデータベース検索のためのクエリ情報４０−１及び／又はステップＳＡにて生成したレスポンスデータとの内容とを比較する。そして、当該比較結果に基づいて、今回のデータベース検索が過去においてなされたか、及び、登録レスポンスデータ１５１２−１が今回のデータベース検索の検索結果に基づいて生成されたレスポンスデータと一致するか、を判定する。
【０１３８】
更新検証ステップＳ２は、ステップＳ２１とＳ２２とを有している。
ステップＳ２１においては、データ送信部１５３が、今回のデータベース検索のためのクエリ情報４０−１と一致する登録クエリ情報１５１１が、記憶部１５１に存在するか（第１条件）を判定する。具体的には、例えば、記憶部１５１に記憶された登録クエリ情報１５１１を順次文字列検索し、今回のデータベース検索のためのクエリ情報４０−１の文字列と一致する登録クエリ情報１５１１が存在した場合に、第１条件が真であると判定する。その他、登録クエリ情報１５１１の内容（記憶形式）に従って、適当な検索方法を使用できる。
【０１３９】
第１条件が真である場合（ステップＳ２１において「一致」の場合）、ステップＳ２２へ進む。第１条件が偽である場合（ステップＳ２１において「不一致」の場合）、データ送信ステップＳ３において第２送信データ７０を送信する場合、ステップＳ３２へ進む。
【０１４０】
ステップＳ２１において「一致」となった場合、データ送信部１５３は、リクエスト４０の今回のクエリ情報４０−１と一致する登録クエリ情報１５１１に関連付けられた登録レスポンスデータ１５１２−１の内容が、今回のクエリ情報４０−１に基づいて新たに生成されたレスポンスデータの内容と一致するかどうかを検証する（第２条件の真偽検証）（ステップＳ２２）。
リクエスト４０のクエリ情報４０−１と一致する登録クエリ情報１５１１に関連付けられた登録レスポンスデータ１５１２−１の内容が、今回のクエリ情報４０−１に基づいて新たに生成されたレスポンスデータの内容と一致する場合、すなわち、第２条件が真である場合（ステップＳ２２において「一致」の場合）、データ送信ステップＳ３のステップＳ３１に進む。
当該登録レスポンスデータ１５１２−１の内容と、今回のクエリ情報４０−１に基づいて新たに生成されたレスポンスデータの内容とが異なる、すなわち、第２条件が偽である場合（ステップＳ２２において「不一致」の場合）、第２送信データ７０を送信する場合は、データ送信ステップＳ３のステップＳ３２に進む。
【０１４１】
なお、更新検証ステップＳ２において、前述したように、リクエスト４０中に前回アクセス情報４０−３が存在するかどうかの確認を行うステップＳ２３を、更新検証ステップＳ２中のステップＳ２１の前に追加してもよい。
【０１４２】
データ送信ステップＳ３では、更新検証ステップＳ２における判定に基づいて、クライアント２のデータベース検索部２３に送信する送信データを選択し、当該選択された送信データをクライアント２に送信する。
【０１４３】
ステップＳ２において、第１条件が真であり、かつ、第２条件が真である（すなわち、ステップＳ２１において「一致」となり、かつ、ステップＳ２２において「一致」となった）と判定された場合、データ送信部１５３は、キャッシュ使用を指示する情報を含む第１送信データ６０をクライアント２に送信する（ステップＳ３１）。
【０１４４】
これにより、ステップＳＡにおいて生成されたレスポンスデータ（更新検証データの一例）が、今回のクエリ情報４０−１と同一のクエリ情報（登録クエリ情報１５１１）に基づく過去のデータベース検索の検索結果に基づいて生成された登録レスポンスデータ１５１２−１（登録更新検証データの一例）と一致する場合、大量のデータを送信することを抑制できる。その結果、通信端末装置１から送信されるデータのデータ量を節約できる。
【０１４５】
また、このように、更新検証データが、レスポンスデータ生成部１５４により生成されたレスポンスデータであり、登録更新検証データ１５１２が、登録クエリ情報１５１１に基づく検索結果に基づいて生成された登録レスポンスデータ１５１２−１とすることにより、以下のような作用効果がある。すなわち、特に、通信端末装置１が同じデータベース検索結果であっても異なるレスポンスデータを生成する必要がある場合、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいて生成されたレスポンスデータが、同一のクエリ情報（登録クエリ情報１５１１）に基づいて過去に行われた同一のデータベース検索の検索結果に基づいて生成されたレスポンスデータ（登録レスポンスデータ１５１２−１）と同じ場合に、通信端末装置１は、正しくキャッシュ使用を指示する情報を含む第１送信データを送信できる。
【０１４６】
一方、ステップＳ２において、第１条件が偽である、又は、第２条件が偽であると判定された場合（すなわち、ステップＳ２１において「不一致」となるか、又は、ステップＳ２２において「不一致」となった場合）、データ送信部１５３は、レスポンスデータを含む第２送信データ７０を送信してもよい（ステップＳ３２）。これにより、データベース検索の検索結果に応じて、正しいレスポンスデータを送信できる。
【０１４７】
また、第１条件が真であり、かつ、第２条件が偽である場合に、特に第２送信データ７０を送信するようにしてもよい。これにより、特に、今回のクエリ情報４０−１と同一のクエリ情報に基づいて過去にデータベース検索が行われていた場合でも、今回のデータベース検索の検索結果に基づく内容と、過去のデータベース検索の検索結果に基づく内容が異なる場合、すなわち、検索結果が異なる場合にのみ、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいて生成されたレスポンスデータを送信できる。その結果、通信端末装置１から送信されるデータのデータ量を節約できる。
【０１４８】
なお、第２送信データ７０を送信（ステップＳ３２を実行）した場合、記憶部１５１の内容を更新する記憶部更新ステップＳ３３を実行してもよい。この場合、当該更新処理は記憶部更新部１５５により行われる。記憶部１５１の内容の更新は下記の第１条件及び第２条件の真偽判定結果（ｉ）及び（ｉｉ）に基づき、以下のように行われる。
【０１４９】
（ｉ）第１条件を満たし、かつ、前記第２条件を満たさない。
この場合、記憶部更新部１５５は、クエリ情報４０−１と一致する登録クエリ情報１５１１に関連付けられた登録レスポンスデータ１５１２−１を、今回のクエリ情報４０−１に基づいて行われたデータベース検索結果から新たに生成されたレスポンスデータの内容に更新する。すなわち、記憶部１５１のデータのうち、今回のクエリ情報４０−１と同一の登録クエリ情報１５１１に関連付けられた登録レスポンスデータ１５１２−１のみを更新する。
これは、今回のクエリ情報４０−１に基づくデータベース検索が過去に行われたことがあるが、今回のクエリ情報４０−１に基づいて生成されたレスポンスデータと、今回のクエリ情報４０−１と同一の登録クエリ情報１５１１に関連付けられた登録レスポンスデータ１５１２−１が一致しない場合には、当該登録レスポンスデータ１５１２−１を今回のクエリ情報４０−１に基づいて新たに生成されたレスポンスデータに書き換えることのみを行うことを意味している。
これにより、記憶部１５１に記憶されているデータ全体を更新する処理を行う必要がなくなる。その結果、通信端末装置１による管理負荷を軽減できる。
【０１５０】
（ｉｉ）第１条件を満たさない。
この場合、記憶部更新部１５５は、今回のデータベース検索のためのクエリ情報４０−１と新たに生成された前記レスポンスデータとを関連付けて、新たな登録クエリ情報１５１１及び新たな登録レスポンスデータ１５１２−１として、記憶部１５１に追加する。
これは、今回のクエリ情報４０−１に基づくデータベース検索が過去に行われたことがない場合には、次回以降のデータベース検索において今回と同じデータベース検索が行われることに備えて、新たな登録クエリ情報１５１１及び新たな登録レスポンスデータ１５１２−１を記憶部１５１に追加することを意味している。
これにより、記憶部１５１に記憶されているデータ全体を更新する処理を行う必要がなくなる。その結果、通信端末装置１による管理負荷を軽減できる。
【０１５１】
上記に記載した記憶部更新ステップＳ３３により、登録クエリ情報１５１１及び／又は登録レスポンスデータ１５１２−１を最新の状態に維持できる。また、キャッシュ情報の定期的な再構築処理のような管理負荷の高い処理が不要となる。これにより、データベースに関する管理負荷を減少できる。
【０１５２】
データ送信ステップＳ３の終了後、データベース検索結果送信部１５は、データベース検索結果の内容の送信を終了する。
【０１５３】
３．本実施形態の作用効果
最後に、本実施形態の通信端末装置１の作用効果について説明する。
本実施形態の通信端末装置１は、リクエスト受信部１５２（リクエスト受信部の一例）と、記憶部１５１（記憶部の一例）と、データ送信部１５３（データ送信部の一例）と、を備える。
リクエスト受信部１５２は、クエリ情報４０−１（クエリ情報の一例）を含むリクエスト４０（リクエストの一例）を受信する。記憶部１５１は、過去のデータベース検索のクエリ情報４０−１である登録クエリ情報１５１１（登録クエリ情報の一例）と登録クエリ情報に基づく検索結果に基づいた内容を含む登録更新検証データ１５１２（登録更新検証データの一例）とを関連付けて記憶する。データ送信部１５３は、クエリ情報４０−１と一致する登録クエリ情報１５１１が、記憶部１５１に記憶されているという第１条件（第１条件の一例）を満たし、かつ、クエリ情報４０−１と一致する登録クエリ情報１５１１に関連付けられた登録更新検証データ１５１２の内容が、クエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データ（更新検証データの一例）の内容と一致するという第２条件（第２条件の一例）を満たす場合に、キャッシュ使用を指示する情報を含む第１送信データ６０（第１送信データの一例）を送信する。
【０１５４】
通信端末装置１では、まず、リクエスト受信部１５２が、クエリ情報４０−１を含むリクエスト４０を受信する。次に、データ送信部１５３が以下の２つの条件（第１条件と第２条件）について真偽判定を行う。そして、第１条件が真であり、かつ、第２条件が真である場合、データ送信部１５３は、キャッシュ使用を指示する情報を含む第１データ６０を送信する。
第１条件：クエリ情報４０−１と一致する登録クエリ情報１５１１が、記憶部１５１に記憶されている。
第２条件：クエリ情報４０−１と一致する登録クエリ情報１５１１に関連付けられた登録更新検証データ１５１２の内容が、当該クエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致する。
【０１５５】
通信端末装置１では、上記のように、記憶部１５１に記憶された登録クエリ情報１５１１、及び／又は、登録更新検証データ１５１２の内容が、それぞれ、クエリ情報４０−１、及び／又は、当該クエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致するかどうかを検証する。これにより、以下の２つの事項が検証される。
（１）過去に、今回のクエリ情報と同一のクエリ情報４０−１（登録クエリ情報１５１１）に基づくデータベース検索がなされたか。
（２）過去に、今回と同一のクエリ情報４０−１に基づいたデータベース検索がなされている場合、今回と同一のクエリ情報４０−１に基づいて行われた過去のデータベース検索の検索結果に基づいた内容を含む登録更新検証データ１５１２は、今回のクエリ情報４０−１に基づいて行われたデータベース検索の検索結果に基づいた内容を含む更新検証データと一致するか。
この通信端末装置は、上記（１）及び（２）の両方が「真」である場合に、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データが、今回のクエリ情報４０−１と同一のクエリ情報（登録クエリ情報１５１１）に基づく過去のデータベース検索の検索結果に基づいた内容を含む更新検証データ（登録更新検証データ１５１２）の内容と一致すると判断する。
【０１５６】
このようなデータベースの監視処理を採用することにより、データベースの監視処理及び／又はキャッシュ情報更新処理の負荷を軽減することができる。その結果、データベースに関する管理負荷を減少できる。
【０１５７】
また、データ送信部１５３は、上記（１）及び（２）の両方が「真」である場合に、データベース検索の検索結果に基づいたデータを送信しない。その代わりに、キャッシュ使用を指示する情報を含む第１送信データ６０を送信する。このような第１送信データ６０のデータ量は一般的に小さい。そのため、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容を含むデータ（更新検証データ）が、今回のクエリ情報４０−１と同一のクエリ情報に基づく過去のデータベース検索の検索結果に基づいた内容を含むデータ（登録更新検証データ１５１２）と一致する場合に、大量のデータを送信することを抑制できる。その結果、通信端末装置１から送信されるデータのデータ量を節約できる。
【０１５８】
（２）他の実施形態
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、発明の要旨を逸脱しない範囲で種々の変更が可能である。特に、本明細書に書かれた複数の実施形態及び変形例は必要に応じて任意に組み合せ可能である。
【０１５９】
（Ａ）変形例１
第１実施形態の通信端末装置１は、データベース部１１とデータベース検索結果送信部１５とを有していたが、これに限られない。通信端末装置１は、データベース部１１を有さず、第１実施形態のデータベース検索結果送信部１５の機能を実現するデータ送信プログラム１５００が通信端末装置１上で実行可能にインストールされていてもよい。この場合、例えば、図１１に示すように、通信端末装置１は、データベースサーバ１１０と通信可能に、ＬＡＮなどの第２ネットワーク３１と接続されている。
【０１６０】
本実施形態のデータ送信プログラム１５００（データ送信プログラムの一例）は、リクエスト受信手段１５０１（リクエスト受信手段の一例）と、データベース検索結果取得手段１５０２（データベース検索結果取得手段の一例）と、データ送信手段１５０３（データ送信手段の一例）と、を通信端末装置１（コンピュータの一例）に機能として実現させる。
リクエスト受信手段１５０１は、クエリ情報４０−１（クエリ情報の一例）を含むリクエスト４０（リクエストの一例）を受信する。データベース検索結果取得手段１５０２は、リクエスト４０をデータベースサーバ１１０（データベースサーバの一例）に送信する。そして、クエリ情報４０−１に基づいてデータベースサーバ１１０において行われたデータベース検索のデータベース検索結果をデータベースサーバ１１０から受信する。データ送信手段１５０３は、過去のデータベース検索のクエリ情報である登録クエリ情報１５１１（登録クエリ情報の一例）と、登録クエリ情報１５１１に基づく検索結果に基づいた内容を含む登録更新検証データ１５１２（登録更新検証データの一例）とを関連付けて記憶する記憶部１５０５（記憶部の一例）に、クエリ情報４０−１と一致する登録クエリ情報１５１１が記憶されているという第１条件（第１条件の一例）を満たし、かつ、クエリ情報４０−１と一致する登録クエリ情報１５１１に関連付けられた登録更新検証データ１５１２の内容が、クエリ情報４０−１に基づくデータベース検索の検索結果に基づいた内容を含む更新検証データの内容と一致するという第２条件（第２条件の一例）を満たす場合、キャッシュ使用を指示する情報を含む第１送信データ６０（第１送信データの一例）を送信する。
【０１６１】
このようなデータ送信プログラム１５００が実行可能に通信端末装置１の記憶領域（ハードディスク、ＳＳＤ、メモリ（ＲＡＭやＲＯＭ）など）にインストールされた通信端末装置１によっても、第１実施形態の通信端末装置１と同様、データベース更新日時などを定期的に監視する監視処理が不要となる。これにより、データベースサーバ１１０の管理負荷を減少できる。
【０１６２】
また、第１実施形態と同様に、データ送信手段１５０３は、上記（１）及び（２）の両方が「真」である場合に、データベース検索の検索結果に基づいたデータを送信しない。その代わりに、キャッシュ使用を指示する情報を含む第１送信データ６０を送信する。このような第１送信データ６０のデータ量は一般的に小さい。そのため、今回のクエリ情報４０−１に基づくデータベース検索の検索結果に基づいたデータが、今回のクエリ情報４０−１と同一のクエリ情報に基づく過去のデータベース検索の検索結果に基づいたデータと一致する場合、大量のデータを送信することを抑制できる。その結果、通信端末装置１から送信されるデータのデータ量を節約できる。
【０１６３】
さらに、図１１に示すように、変形例１の通信端末装置１においては、通信端末装置１が、複数のデータベースサーバ１１０と通信可能なように、第２ネットワーク３１に接続されていてもよい。この場合、複数のデータベースサーバ１１０を一元管理できる。これにより、効率よくデータベースサーバ１１０を管理できる。
【０１６４】
またさらに、変形例１のデータ送信プログラム１５００をファイアーウォールサーバと組み合わせる（データ送信プログラム１５００をファイアーウォールサーバ上で実行可能にインストールする）ことで、上記の効果を有しつつ、データベースサーバ１１０を不正なアクセスから防御可能な、通信端末装置１を実現できる。
【０１６５】
また、変形性１のデータ送信プログラム１５００を、データベースサーバなどのフロントエンドとして用いてもよい。この場合、データ送信プログラム１５００は、例えば、既存のサーバの追加モジュールとして提供される。
これにより、第１実施形態や変形例１で説明した機能を、既存のサーバに簡単に組み込める。
【産業上の利用可能性】
【０１６６】
本発明は、データベースの監視処理及び／又はキャッシュ情報更新処理及びデータ送信を行う通信端末装置に広く適用できる。
【符号の説明】
【０１６７】
１００  データベース−クライアントシステム
１      通信端末装置
１１    データベース部
１１０  データベースサーバ
１３    ネットワークインターフェース
１５    データベース検索結果送信部
１５１  記憶部
１５１−１、１５１−２  サブ記憶部
１５１１  登録クエリ情報
１５１２  登録検証更新データ
１５１２−１  登録レスポンスデータ
１５２  リクエスト受信部
１５３  データ送信部
１５４  レスポンスデータ生成部
１５５  記憶部更新部
２      クライアント
２１    ネットワークインターフェース
２３    データベース検索部
２５    キャッシュ部
３      ネットワーク
３１    第２ネットワーク
４０    リクエスト
４０−１  クエリ情報
４０−２  検索リクエスト識別情報
４０−３  前回アクセス情報
６０    第１送信データ
６０−１  ヘッダ部
７０    第２送信データ
７０−１  ヘッダ部
７０−２  データベース検索結果内容部
１５００  データ送信プログラム
１５０１  リクエスト受信手段
１５０２  データベース検索結果取得手段
１５０３  データ送信手段
１５０５  記憶部
【図１】
2014110022.tif 000003
【図２ａ】
2014110022.tif 000004
【図２ｂ】
2014110022.tif 000005
【図２ｃ】
2014110022.tif 000006
【図３】
2014110022.tif 000007
【図４】
2014110022.tif 000008
【図５】
2014110022.tif 000009
【図６】
2014110022.tif 000010
【図７ａ】
2014110022.tif 000011
【図７ｂ】
2014110022.tif 000012
【図７ｃ】
2014110022.tif 000013
【図８】
2014110022.tif 000014
【図９】
2014110022.tif 000015
【図１０】
2014110022.tif 000016
【図１１】
2014110022.tif 000017