JP2007094884A - Data search method and system - Google Patents
Data search method and system Download PDFInfo
- Publication number
- JP2007094884A JP2007094884A JP2005285252A JP2005285252A JP2007094884A JP 2007094884 A JP2007094884 A JP 2007094884A JP 2005285252 A JP2005285252 A JP 2005285252A JP 2005285252 A JP2005285252 A JP 2005285252A JP 2007094884 A JP2007094884 A JP 2007094884A
- Authority
- JP
- Japan
- Prior art keywords
- inquiry
- search result
- database
- query
- sentence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、データベースに対して問い合せ文を送り、この問い合せ文に対応する検索結果をデータベースから入手するデータ検索方法及びデータ検索システムに関する。 The present invention relates to a data search method and a data search system for sending an inquiry sentence to a database and obtaining a search result corresponding to the inquiry sentence from the database.
一般に、プログラムに関する処理を行う場合、例えば、プログラムで使用されているコード番号が何を表すのかを確認する場合がある。このような場合、各コード番号が何を表すかを、コード番号と対応付けて記憶しているデータベースに問い合せ、この問い合せに対する検索結果を得ることが行われている。 In general, when processing related to a program is performed, for example, what a code number used in the program represents may be confirmed. In such a case, what each code number represents is inquired of a database stored in association with the code number, and a search result for this inquiry is obtained.
このように、データベースに何らかの問い合せを行い、検索結果を得る、所謂データ検索方式において、従来は、データを管理するサーバに対しクライアントからネットワーク部を介して接続の上、問い合わせ文をクライアントからサーバに送出している。そして、検索された結果がサーバからクライアントに返却されて処理が実現されている。 In this way, in the so-called data search method in which a query is made to a database and a search result is obtained, conventionally, a query is sent from the client to the server after connecting to the server that manages the data from the client via the network unit. Sending out. Then, the retrieved result is returned from the server to the client, and the processing is realized.
この場合、問い合わせ文は常にサーバに送出されており、問い合わせ結果もクライアントに送出されている。このため、一連の処理の中で以前に発行した問い合わせ文と同じ問い合わせが再び必要になった場合でも、毎回サーバに対してクライアントからネットワークを介して問い合わせ文の発行を行い、検索結果の取り出しが行われている。 In this case, the inquiry text is always sent to the server, and the inquiry result is also sent to the client. For this reason, even if the same query as the previously issued query is required again in the series of processing, the query is issued from the client to the server via the network every time, and the retrieval result can be retrieved. Has been done.
このように、繰り返し行われる検索処理の中に、同じ問い合わせ文が含まれる場合でも、ネットワーク部を問い合わせ文とその検索結果が往来することになる。通常、ネットワーク部を経由することに対する時間的コストが高いので、このことを考慮すると、処理性能の低下を招く問題があった。 In this way, even when the same inquiry text is included in the repeated search processing, the inquiry text and the search result are transmitted and received through the network unit. Usually, since the time cost for passing through the network unit is high, there is a problem that the processing performance is lowered in consideration of this.
このような技術内容に関連するものとして、複数のクライアントに対する共有データをサーバが保有し、クライアントからの要求により、この共有データをクライアントに転送して使用するシステムに関する提案がある(例えば、特許文献1参照)。 In connection with such technical contents, there is a proposal related to a system in which a server holds shared data for a plurality of clients, and the shared data is transferred to the client and used in response to a request from the client (for example, Patent Documents). 1).
この提案では、共用データの不要な転送をなくしてネットワーク帯域の隘路問題の発生を抑えるために、共有データを要する都度、クライアントに一時保管した共有データに関する更新情報をサーバから入手し、新たな更新が行われていればサーバから更新された共有データの転送を受けるようにしている。
このようにデータの取扱に当っては、重複するデータをネットワークによって送受することは、時間的コストを含め、無駄が多く、極力低減する必要がある。 As described above, in handling data, it is necessary to reduce as much as possible to send and receive duplicate data through a network, including time costs.
本発明の目的は、データベース側への問い合わせ文とこの問い合わせに対する検索結果を要求元に記録・保存し、新たな問合せを行うとき、保存された問い合わせ文と一致した場合は、問い合わせ文を送出せず、この問い合わせ文に対応付けられて保存された検索結果を取り出すことにより、全体の処理時間を短縮させることが可能となるデータ検索方法及びデータ検索システムを提供することにある。 The object of the present invention is to record and save a query statement to the database side and a search result for this query in the request source, and when a new query is made, if the query statement matches the saved query statement, the query statement is sent out. First, it is an object to provide a data search method and a data search system that can reduce the entire processing time by taking out a search result stored in association with this inquiry sentence.
本発明のデータ検索方法は、データベースに対して問い合せ文を送り、この問い合せ文に対応する検索結果をデータベースから入手するデータ検索方法であって、前記問い合せ文及びこの問い合せ文により入手した検索結果をデータ保管用のキャッシュに保管しておき、新たな問い合せ文を入力すると、前記キャッシュに前記新たな問い合せ文と同様意味の過去の問い合せ文及びこの問い合わせ文に対応する過去の検索結果が保管されているかを照会し、保管されている場合は、この保管されている検索結果を取り出して問合せ元に提供し、保管されていない場合は、前記新たな問い合せ文をデータベースに送って検索結果を求めることを特徴とする。 The data search method of the present invention is a data search method for sending an inquiry sentence to a database and obtaining a search result corresponding to the inquiry sentence from the database, wherein the inquiry sentence and the search result obtained by the inquiry sentence are obtained. When a new inquiry sentence is input after being stored in a data storage cache, a past inquiry sentence having the same meaning as the new inquiry sentence and a past search result corresponding to the inquiry sentence are stored in the cache. If it is stored, retrieve the stored search result and provide it to the query source. If it is not stored, send the new query statement to the database to obtain the search result. It is characterized by.
また、本発明のデータ検索方法は、問い合せ文、この問い合せ文により入手した検索結果及びこの検索結果に付された有効期限をデータ保管用のキャッシュに保管しておき、新たな問い合せ文を入力すると、前記キャッシュに前記新たな問い合せ文と同様意味の過去の問い合せ文及びそれに対応する過去の検索結果が保管されているかを照会し、保管されている場合は、この保管されている検索結果が前記有効期限内かを判断して、前記有効期限内であればこの保管されている検索結果を問い合せ元に提供し、前記有効期限を過ぎている場合又は保管されていない場合は、前記新たな問い合せ文をデータベースに送って検索結果を求めるようにしてもよい。 The data retrieval method of the present invention stores an inquiry sentence, a retrieval result obtained from the inquiry sentence, and an expiration date attached to the retrieval result in a data storage cache, and inputs a new inquiry sentence. The cache is inquired whether the past query sentence having the same meaning as the new query sentence and the past search result corresponding thereto are stored, and if stored, the stored search result is stored in the cache. It is determined whether it is within the expiration date, and if it is within the expiration date, the stored search result is provided to the inquiry source. If the expiration date has passed or has not been stored, the new inquiry is made. A sentence may be sent to a database to obtain a search result.
本発明のデータ検索システムは、データベースに対して問い合せ文を送り、この問い合せ文に対応する検索結果をデータベースから入手するデータ検索システムであって、前記問い合わせ文及びこの問い合わせ文により入手した検索結果を保管するデータ保管用のキャッシュと、前記データベースに対する問い合せ文が入力されると、この問い合せ文と同様意味の過去の問い合せ文及びこの過去の問い合せ文により入手した過去の検索結果が前記キャッシュに保管されているかを照会し、保管されている場合は、前記過去の検索結果を取り出して問合せ元に提供し、保管されていない場合は、前記問い合せ文を前記データベース側に送信し、この問い合せ文に対する検索結果を前記データベース側から入手すると、入手した検索結果を問合せ元に提供するとともに、前記問い合せ文と対応させて前記キャッシュに保管させる照会手段とを備えたことを特徴とする。 The data search system of the present invention is a data search system for sending an inquiry sentence to a database and obtaining a search result corresponding to the inquiry sentence from the database, wherein the inquiry sentence and the search result obtained from the inquiry sentence are obtained. When a cache for storing data to be stored and an inquiry sentence for the database are input, a past inquiry sentence having the same meaning as the inquiry sentence and a past search result obtained by the past inquiry sentence are stored in the cache. If it is stored, it retrieves the past search result and provides it to the query source. If it is not stored, it sends the query statement to the database side and searches for this query statement. When the result is obtained from the database side, the obtained search result is inquired. Along with providing the, characterized in that a query means for storing in said cache in association with the query statement.
また、本発明のデータ検索システムは、問い合わせ文及びこの問い合わせ文により入手した検索結果を保管するデータ保管用のキャッシュと、前記データベースに対する問い合せ文が入力されると、この問い合せ文と同様意味の過去の問い合せ文及びこの過去の問い合せ文により入手した過去の検索結果が前記キャッシュに保管されているかを照会し、保管されている場合は、前記過去の検索結果に付されている有効期限を参照して有効期限内であればこの過去の検索結果を問い合せ元に提供し、この有効期限が過ぎている場合、又は保管されていない場合は、前記問い合せ文を前記データベース側に送信し、この問い合せ文に対する検索結果をデータベース側から入手すると、入手した検索結果を問い合せ元に提供するとともに、この入手した結果を前記問い合せ文と対応させて有効期限とともに前記キャッシュに保管させる照会手段とを備えた構成でもよい。 In addition, the data retrieval system of the present invention, when an inquiry sentence and a data storage cache for storing a retrieval result obtained by the inquiry sentence and an inquiry sentence for the database are input, a past having the same meaning as the inquiry sentence. Inquiries and past search results obtained from this past inquiry sentence are inquired in the cache, and if so, refer to the expiration date attached to the past search results. If it is within the expiration date, this past search result is provided to the inquiry source.If this expiration date has passed or has not been stored, the inquiry statement is sent to the database side, and this inquiry statement is sent. When the search result for is obtained from the database side, the obtained search result is provided to the inquiry source and this Results may be configured with a query means for storing in the cache along with the expiration date in correspondence with the query statement.
また、本発明のデータ検索システムは、問い合わせ文に対応して検索結果が保存されているデータベースを有し、前記問い合せ文を受信すると前記データベースを検索して対応する検索結果を出力するデータベースシステムと、前記問い合わせ文及びこの問い合わせ文により入手した検索結果を保管するデータ保管用のキャッシュと、前記データベースに対する問い合せ文が入力されると、この問い合せ文と同様意味の過去の問い合せ文及びこの過去の問い合せ文により前記データベースから入手した過去の検索結果が前記キャッシュに保管されているかを照会し、保管されている場合は、前記過去の検索結果を取り出して問い合せ元に提供し、保管されていない場合は、前記問合せ文を前記データベースシステムに送信し、この問い合せ文に対する検索結果を前記データベースシステムから入手すると、入手した検索結果を問い合せ元に提供するとともに、前記問い合せ文と対応させて前記キャッシュに保管させる照会手段とを備えた構成でもよい。 Further, the data search system of the present invention has a database in which search results are stored corresponding to a query sentence, and when the query sentence is received, the database system searches the database and outputs a corresponding search result; When the query text and the data storage cache for storing the search results obtained from the query text and the query text for the database are input, the past query text having the same meaning as the query text and the past query Inquires whether past search results obtained from the database are stored in the cache by sentence, and if stored, retrieves the past search results and provides them to the query source. , Send the query to the database system, and send the query When obtaining a search result from the database system against, as well as providing the source query search results obtained or may be configured as a query means for storing in said cache in association with the query statement.
さらに、本発明のデータ検索システムは、問い合わせ文に対応して検索結果が保存されているデータベース及び前記検索結果に対する有効期限がそれぞれ設定された有効期限テーブルを有し、前記問い合せ文を受信すると前記データベースを検索して対応する検索結果を、前記有効期限を付して出力するデータベースシステムと、前記問い合わせ文及びこの問い合わせ文により入手した検索結果を保管するデータ保管用のキャッシュと、前記データベースに対する問い合せ文が入力されると、この問い合せ文と同様意味の過去の問い合せ文及びこの過去の問い合せ文により入手した過去の検索結果が前記キャッシュに保管されているかを照会し、保管されている場合は、前記過去の検索結果に付されている有効期限を参照して有効期限内であればこの過去の検索結果を問い合せ元に提供し、この有効期限が過ぎている場合、又は保管されていない場合は、前記問い合せ文を前記データベースシステムに送信し、この問い合せ文に対する検索結果を前記データベースシステムから入手すると、入手した検索結果を問い合せ元に提供するとともに、この入手した検索結果を前記問い合せ文と対応させて有効期限とともに前記キャッシュに保管させる照会手段とを備えた構成でもよい。 Furthermore, the data search system of the present invention includes a database in which search results are stored corresponding to a query statement and an expiration date table in which expiration dates for the search results are set, and when the query statement is received, A database system that searches a database and outputs a corresponding search result with the expiration date, a cache for storing data that stores the query and the search result obtained by the query, and queries to the database When a sentence is entered, it is inquired whether a past inquiry sentence having the same meaning as this inquiry sentence and a past search result obtained by this past inquiry sentence are stored in the cache. Refers to the expiration date attached to the past search results and is within the expiration date. If the past search result is provided to the inquiry source and the expiration date has passed or is not stored, the inquiry sentence is transmitted to the database system, and the search result for the inquiry sentence is sent to the database. When obtained from the system, the obtained search result may be provided to an inquiry source, and the obtained search result may be associated with the inquiry sentence and stored in the cache together with an expiration date.
本発明によれば、過去に発行された問い合わせ文と同じ内容の問い合わせ文の発行とその検索結果の取り出しが時間的に長く要するネットワーク部を往来することなく、これに代えて高速なキャッシュへのアクセスにするようにしたので、全体の処理時間を短縮させ、効率的なデータ検索が可能となる。また、キャッシュに保持された検索結果は、時間の経過と共にデータベース側の内容と異なってくる可能性があるが、過去の結果には有効期限を付けて所定時間後に破棄するようにすれば、データの一貫性を維持した正確なデータ検索を行うことができる。 According to the present invention, instead of traversing a network unit that requires a long time to issue a query statement having the same content as a query statement issued in the past and to retrieve a search result, the high-speed cache is replaced. Since access is made, the entire processing time can be shortened, and efficient data retrieval becomes possible. Also, the search results held in the cache may differ from the contents on the database side as time passes. However, if past results are given an expiration date and discarded after a predetermined time, data It is possible to perform an accurate data search that maintains the consistency of data.
以下、本発明の一実施の形態について、図面を用いて詳細に説明する。 Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
図1は、この実施の形態に係る全体構成を示すブロック図である。図1において、このシステムは、1台のクライアント10とサーバ20とが、ネットワーク30を介して互いに接続されている。そして、サーバ20に設けたデータベース23に対してクライアント10から問い合せ文を送り、この問い合せ文に対応する検索結果をデータベース23からクライアント10が入手するデータ検索システムである。
FIG. 1 is a block diagram showing the overall configuration according to this embodiment. In FIG. 1, in this system, one
クライアント10は、ネットワーク部11、照会手段12、問合せ文・結果記録手段13、データ保管用のキャッシュ(以下、ローカルキャッシュとして説明する)14、アプリケーションインターフェイス15、クライアントアプリケーション16とを有する。
The
アプリケーションインターフェイス15は、データ要求元(問い合わせ元でもある)であるクライアントアプリケーション16に対して、統一したインターフェイスを提供するために配置されている。したがって、クライアントアプリケーション16からの問い合わせ要求を受け付け、照会手段12に送信する機能と、照会手段12から検索結果を取り出し、データ要求元であるクライアントアプリケーション16に返却する機能を持つ。
The
照会手段12は、アプリケーションインターフェイス15からの問い合わせ要求を受け付ける機能と、問い合わせ要求に含まれている問い合わせ文を、問い合わせ・結果記録手段13に照会する機能とを有する。そして、この照会により、問い合わせ文と内容が一致した(同様意味の)過去の問い合わせ文に対応する検索結果がローカルキャッシュ14に存在する場合は、この検索結果を取り出し、アプリケーションインターフェイス15に返却して要求元であるクライアントアプリケーション16に提供する機能を持っている。
The inquiry means 12 has a function of accepting an inquiry request from the
また、照会手段12は、前記照会により、問い合わせ文が一致しなかった場合に、ネットワーク30を介して、問い合わせ文をサーバ20に送信する機能を有する。そして、ネットワーク30を介して、サーバ20から問い合わせ文に対する検索結果を受け取ると、問い合わせ・結果記録手段13により、この検索結果をローカルキャッシュ14に記録すると共に、この検索結果をアプリケーションインターフェイス15に返却して要求元であるクライアントアプリケーション16に提供する機能も持っている。
The
問い合わせ・結果記録手段13は、上述のように、照会手段12からの照会要求を受付けると、ローカルキャッシュ14を探索し、一致した過去の問合せ文を抽出すると、対応付けられて記録されている検索結果を取り出す機能を有する。また、一致しなかった場合、問い合わせ文をローカルキャッシュ14に記録する機能をもつ。さらに、この後、照会手段12から送られてくる検索結果(サーバ20で検索されたデータ)を、直前に記録した問い合わせ文に対応付けてローカルキャッシュ14に記録する機能も持っている。
As described above, the inquiry /
ローカルキャッシュ14は、問い合わせ文とこれに対応した検索結果を記録保持するものである。これをメモリデバイス上に用意することは一つの例である。
The
ネットワーク部11は、自己のクライアント10とネットワーク30との間において、ネットワーク30に対する送受信を制御するものである。
The network unit 11 controls transmission / reception with respect to the
一方、サーバ20は、ネットワーク部21、データベースシステム22及びデータベース23を備えている。
On the other hand, the
ネットワーク部21は、自己のサーバ20とネットワーク30との間において、ネットワーク30に対する送受信を制御するものである。データベースシステム22は、ネットワーク部21に受信された問い合わせ文を解釈し、データベース23から該当するデータを抽出し、ネットワーク部21を介して、クライアント10に検索結果を返却する機能を持つ。データベース23には、データベースシステム22に必要な各種データ、すなわち、前記問い合わせ文に対応する検索結果が記録保持されている。
The
次に、作用を説明する。始に、この実施の形態におけるデータ検索の例として、例えば、プログラムで使用されているコード番号が何を表すのかを確認するための検索として説明する。したがって、データベース23には、図2で示すように、コード番号とこのコード番号が何を表すか(図の例では組織の名称)とを対応付けたコード表が記憶されている。
Next, the operation will be described. First, as an example of data search in this embodiment, for example, a search for confirming what a code number used in a program represents will be described. Therefore, as shown in FIG. 2, the
図3のフローチャートにおいて、クライアント10では、データ要求元(問い合せ元)であるクライアントアプリケーション16から、アプリケーションインターフェイス15を介して問合せ文が入力されると、照会手段12は、問合せ文・結果記録部13を介してローカルキャッシュ14へ、問い合わせ文の照会を行う(ST1)。
In the flowchart of FIG. 3, in the
この問合せ文は、例えば、SQLによるもので、次のように作成される。 This inquiry sentence is based on, for example, SQL, and is created as follows.
「SELECT 名称 FROM コード表 WHERE コード値=“00”」
この問合せ文は、コード値“00”に対応する名称(図2の例では「本社」)をコード表から抽出することを意味している。
“SELECT name FROM code table WHERE code value =“ 00 ””
This query means that the name corresponding to the code value “00” (“head office” in the example of FIG. 2) is extracted from the code table.
照会手段12は、この照会により、問い合わせ文に一致する過去の問合せ文がローカルキャッシュ14に存在するか判定する(ST2)。問い合わせ文が一致した(同様意味の文が存在する)場合には、ローカルキャッシュ14には、過去の検索により対応する検索結果(この場合、名称「本社」)が保持されていると判断されるので、照会手段12は、ローカルキャッシュ14から問い合わせ文・結果記録手段13を通して、保持されている検索結果(名称「本社」)の取り出しを行う(ST3)。
The inquiry means 12 determines whether or not a past inquiry sentence matching the inquiry sentence exists in the
一方、ST2において、問い合わせ文が不一致(同様意味の文が存在しない)と判定された場合は、照会手段12はネットワーク部11によりネットワーク30を介してサーバ20に問い合わせ文を発行する(ST4)。サーバ20では、この問合せ文をネットワーク部21で受信すると、データベースシステム22はデータベース23を検索し、問い合わせ文に対応する検索結果(名称「本社」)を取り出し、この検索結果を、ネットワーク部21によりネットワーク30を介してクライアント10に返却する。
On the other hand, if it is determined in ST2 that the inquiry sentences do not match (similar sentence does not exist), the
サーバ20からネットワーク部11に返却された検索結果は、照会手段12が取り出す(ST5)。取り出した検索結果は再利用に備えて、照会手段12により、問い合わせ文・結果記録部13を通してローカルキャッシュ14に記録される(ST6)。さらに、照会手段12は、サーバ20から、或いはローカルキャッシュ14から取り出された検索結果を、アプリケーションインターフェイス15を介して、データ要求元であるクライアントアプリケーション16に返却し、提供する(ST7)。
The
このように、クライアント10では、データ要求元であるクライアントアプリケーション16からアプリケーションインターフェイス15を介して照会手段12に、サーバ20側のデータベース23に対する問い合せ文が入力されると、この問い合せ文と同様意味の過去の問い合せ文が及びこの過去の問い合せ文により入手した過去の検索結果がローカルキャッシュ14に保管されているかを、問合せ文・結果記録手段13を介して照会する。この照会により、保管されている場合は、過去の検索結果を取り出して問合せ元であるクライアントアプリケーション16側に提供し、保管されていない場合は、問い合せ文を、データベース23を有するサーバ20側に送信する。そして、この問い合せ文に対する検索結果をサーバ20側のデータベース23から入手すると、入手した検索結果を問合せ元であるクライアントアプリケーション16側に提供するとともに、前記問い合せ文と対応させて前記ローカルキャッシュ14に保管させている。
As described above, in the
上記実施の形態によれば、クライアント10における検索処理にて発生した問い合わせ文の発行と検索結果の取り出しの全てがネットワーク30を介するのではなく、未問い合わせ文のみがネットワーク30によりサーバ20に問い合わされるので、時間的に高コストとなるデータがネットワークを往来する時間を低減させ、処理効率を向上させることができる。また、過去の問い合わせ文の照会を、問い合わせ文そのものをキーとして行うため、照会機能が簡素化され、類似した問い合わせ文が多く繰り返されるシステム程、その効果は向上する。
According to the above embodiment, not all of the issuance of query statements and retrieval of search results that occurred in the search process in the
次に、図4で示す実施の形態を説明する。この実施の形態では、図1で示したサーバとクライアントとを同一の計算機10上で実現した例である。すなわち、図1の例では、サーバ10とクライアント20とを、それぞれ独立した別の計算機で実現し、これらの間を外部のネットワーク30で連繋していたが、図4では、同一の計算機10上にてこれら両機能を実現している。具体的には、クライアント側の照会手段12とサーバ側のデータベースシステム22とを、外部のネットワーク30を介さずに、ネットワーク部11を経由して直接的に連繋している。
Next, the embodiment shown in FIG. 4 will be described. In this embodiment, the server and client shown in FIG. 1 are realized on the
この場合、照会手段12は、クライアントアプリケーション16からの依頼に基き、ローカルキャッシュ14に存在しない問い合わせ文を、ネットワーク部11を経由してデータベースシステム22に直接的に送り、その検索結果をデータベースシステム22からネットワーク部11を経由して入手する。その他の機能は、図1で示したものと全て同じであり、説明は省略する。
In this case, based on a request from the
また、図4の実施形態の場合、ネットワーク部11は、図示しない他のクライアントからの問合せ文を外部のネットワーク30により受付け、データベースシステム22による検索結果を、ネットワーク30経由で他の図示しないクライアントに回答することもできる。
In the case of the embodiment of FIG. 4, the network unit 11 receives an inquiry sentence from another client (not shown) by the
次に、図5で示す実施の形態を説明する。この実施の形態では、図1の実施の形態における問い合せ文により入手した検索結果に対して有効期限を付し、この有効期限を過ぎた検索結果は破棄することによりデータの一貫性を向上させている。すなわち、データベースに保持されたデータは、内容が常に一定とは限らず、更新などにより変更される可能性がある。このため、長期間経過すると、データベースのデータとクライアントのキャッシュに保管されたデータとの食い違いが生じ、データの一貫性を保てない問題もある。 Next, the embodiment shown in FIG. 5 will be described. In this embodiment, an expiration date is attached to the search result obtained by the inquiry statement in the embodiment of FIG. 1, and the consistency of data is improved by discarding the search result after the expiration date. Yes. That is, the data held in the database is not always constant, and may be changed by updating or the like. For this reason, after a long period of time, there is a discrepancy between the data in the database and the data stored in the cache of the client, and there is a problem that the consistency of the data cannot be maintained.
このように、ローカルキャッシュに保持された検索結果は、時間の経過と共にデータベース側の内容と異なってくる可能性があるため、図5の実施の形態では、ローカルキャッシュに保持された検索結果に付された有効期間を超過した場合は、このデータを破棄することにより、系としてのデータの一貫性を向上させるものである。 As described above, the search result held in the local cache may be different from the contents on the database side as time passes. Therefore, in the embodiment of FIG. 5, the search result held in the local cache is attached to the search result. When the specified valid period is exceeded, this data is discarded to improve the consistency of data as a system.
なお、図5は、前述した図1の構成と共通する部分が多いので、共通する部分には関連する符号を付して説明を行う。 Note that FIG. 5 has many parts that are common to the configuration of FIG. 1 described above.
このシステムも、1台のクライアント40とサーバ20とが、ネットワーク30を介して互いに接続されており、サーバ20に設けたデータベース23に対してクライアント40から問い合せ文を送り、この問い合せ文に対応する検索結果をデータベース23からクライアント40が入手するデータ検索システムである。
In this system as well, one
クライアント40は、ネットワーク部41、照会手段42、問合せ文・結果記録手段43、データ保管用のキャッシュ(以下、ローカルキャッシュ)44、アプリケーションインターフェイス45、クライアントアプリケーション46を有する。
The
アプリケーションインターフェイス45及びクライアントアプリケーション46は、図1のものと同じ機能であり、アプリケーションインターフェイス45は、クライアントアプリケーション46からの問い合わせ要求を受け付け、照会手段42に送信する機能と、照会手段42から検索結果を取り出し、クライアントアプリケーション16に返却する機能を持つ。
The
照会手段42は、アプリケーションインターフェイス45からの問い合わせ要求を受け付ける機能と、問い合わせ要求に含まれている問い合わせ文を、問い合わせ・結果記録手段43に照会する機能とを有する。そして、この照会により、問い合わせ文と内容が一致した(同様意味の)過去の問い合わせ文に対応する検索結果がローカルキャッシュ14に存在する場合はこの検索結果を取り出す機能を持っている。
The inquiry means 42 has a function of receiving an inquiry request from the
ここで、検索結果には後述するように有効期限が付してあり、この有効期限が期限内の場合のみ、この検索結果をアプリケーションインターフェイス45に返却して、要求元であるクライアントアプリケーション46に提供する。
Here, an expiration date is attached to the search result as will be described later, and only when the expiration date is within the expiration date, the search result is returned to the
また、照会手段42は、前記照会により、問い合わせ文が一致しなかった場合、及び一致してはいるが検索結果に付された有効期限を過ぎている場合は、ネットワーク30を介して、問い合わせ文をサーバ20に送信する機能を有する。そして、ネットワーク30を介して、サーバ20から問い合わせ文に対する検索結果を受け取ると、問い合わせ・結果記録手段43により、この検索結果を有効期限とともにローカルキャッシュ44に記録する。さらに、この検索結果をアプリケーションインターフェイス45に返却して要求元であるクライアントアプリケーション46に提供する機能を持っている。
Further, the inquiry means 42 sends an inquiry sentence via the
問い合わせ・結果記録手段43は、照会手段42からの照会要求を受付けると、ローカルキャッシュ44を探索し、一致した過去の問合せ文を抽出すると、対応付けられて記録されている検索結果を有効期限とともに取り出す機能を有する。また、一致しなかった場合、問い合わせ文をローカルキャッシュ44に記録する機能をもつ。さらに、この後、照会手段42から送られてくる検索結果(サーバ20で検索されたデータ)及びその有効期限を、直前に記録した問い合わせ文に対応付けてローカルキャッシュ44に記録する機能ももつ。
When the inquiry /
ローカルキャッシュ44は、問い合わせ文とこれに対応した検索結果と有効期限を記録保持するものである。これをメモリデバイス上に用意することは一つの例である。
The
ネットワーク部41は、自己のクライアント40とネットワーク30との間において、ネットワーク30に対する送受信を制御するものである。
The
一方、サーバ20は、ネットワーク部21、データベースシステム22及びデータベース23を備えている。
On the other hand, the
ネットワーク部21は、自己のサーバ20とネットワーク30との間において、ネットワーク30に対する送受信を制御するものである。データベースシステム22は、ネットワーク部21に受信された問い合わせ文を解釈し、データベース23から該当するデータを抽出し、ネットワーク部21を介して、クライアント40に検索結果を返却する機能を持つ。データベース23には、データベースシステム22に必要な各種データ、すなわち、前記問い合わせ文に対応する検索結果が記録保持されている。また、この中には、有効期限テーブル24が含まれ、問い合わせ検索結果の有効期限が保持されている。
The
次に、作用を説明する。この実施の形態におけるデータベース23にも、図2で示した、コード番号とこのコード番号が何を表すか(図の例では組織の名称)とを対応付けたコード表と同等のものが記憶されているものとする。また、これらコード番号毎の名称には、図5で示した有効期限テーブル24により、有効期限が付してある。通常、図2で示した組織の名称などは余り変更されることはないが、商品などの名称は比較的頻繁に変更されることがあり、変更予定日を有効期限として、例えば、「9月30日までは有効」のように、各名称に、有効期限を付しておく。言い換えれば、有効期限日時までは、変更されないことを保証する意味で用いてもよい。
Next, the operation will be described. The
図6のフローチャートにおいて、クライアント40では、データ問い合せ元であるクライアントアプリケーション46から、アプリケーションインターフェイス45を介して問合せ文が入力されると、照会手段42は、問合せ文・結果記録部43を介してローカルキャッシュ44へ、問い合わせ文の照会を行う(ST11)。
In the flowchart of FIG. 6, when the
照会手段42は、この照会により、問い合わせ文に一致する過去の問合せ文がローカルキャッシュ44に存在するか判定する(ST12)。問い合わせ文が一致した(同意の文が存在する)場合には、ローカルキャッシュ44には、過去の検索により対応する結果が保持されていると判断されるので、この検索結果に付されている有効期限を参照し、期限内かを判定する(ST13)。有効期限以内であれば、ローカルキャッシュ44に有効な検索結果が保持されていると判断されるので、ローカルキャッシュ44から問い合わせ文・結果記録手段43を通して、保持されている有効な検索結果の取り出しを行う(ST14)。
The inquiry means 42 determines whether a past inquiry sentence matching the inquiry sentence exists in the
一方、ST12において、問い合わせ文が不一致(同意の文が存在しない)と判定された場合、又はST13において有効期限を越えている場合は、照会手段42はネットワーク部41によりネットワーク30を介してサーバ20に問い合わせ文と有効期限の問い合わせ文を発行する(ST15)。サーバ20では、この問合せ文をネットワーク部21で受信すると、データベースシステム22はデータベース23を検索し、問い合わせ文に対応する検索結果を、その有効期限とともに取り出し、この結果を、ネットワーク部21によりネットワーク30を介してクライアント40に返却する。
On the other hand, if it is determined in ST12 that the inquiry sentence does not match (no agreement sentence exists), or if the expiration date has expired in ST13, the inquiry means 42 is sent from the
サーバ20からネットワーク部41に返却された検索結果は、照会手段42が取り出す(ST16)。取り出された検索結果は、その有効期限とともに、再利用に備えて、照会手段42により、問い合わせ文・結果記録部43を通してローカルキャッシュ44に上書き記録される(ST17)。したがって、有効期限を超過した検索結果のデータは自動的に破棄される。
The query means 42 retrieves the search results returned from the
さらに、照会手段42は、サーバ20から、或いはローカルキャッシュ44から取り出された検索結果を、アプリケーションインターフェイス45を介して、データ問い合わせ元であるクライアントアプリケーション46に返却し、提供する(ST18)。
Further, the inquiry means 42 returns the search result retrieved from the
このように、クライアント40では、データ要求元であるクライアントアプリケーション46からアプリケーションインターフェイス45を介して照会手段42に、サーバ20側のデータベース23に対する問い合せ文が入力されると、この問い合せ文と同様意味の過去の問い合せ文が及びこの過去の問い合せ文により入手した過去の検索結果がローカルキャッシュ44に保管されているかを問合せ文・結果記録手段43を介して照会する。この照会により、保管されている場合は、過去の検索結果に付されている有効期限を参照して有効期限内であればこの過去の検索結果を問合せ元であるクライアントアプリケーション46側に提供する。これに対し、有効期限が過ぎている場合、又は保管されていない場合は、問い合せ文を、データベース23を有するサーバ20側に送信する。そして、この問い合せ文に対する検索結果をサーバ20側のデータベース23から入手すると、入手した検索結果を問合せ元であるクライアントアプリケーション46側に提供するとともに、前記問い合せ文と対応させて有効期限とともに前記ローカルキャッシュ44に保管させている。
As described above, in the
上述した図5の実施の形態によれば、図1の実施の形態と同様に、クライアント40における検索処理にて発生した問い合わせ文の発行と取り出された検索結果の全てがネットワーク30を介するのではないので、時間的に高コストとなるデータがネットワークを往来する時間を低減させ、処理効率を向上させることができる。また、過去の問い合わせ文の照会を、問い合わせ文そのものをキーとして行うため、照会機能が簡素化され、類似した問い合わせ文が多く繰り返されるシステム程、その効果は向上する。さらに、図5の実施の形態では、有効期限を使用することにより、ローカルキャッシュ44の陳腐化を低減させ、システムとしてのデータの一貫性を向上させることが可能となる。
According to the embodiment of FIG. 5 described above, as in the embodiment of FIG. 1, all of the issuance of query statements generated in the search process in the
次に、図7で示す実施の形態を説明する。この実施の形態では、図5で示したサーバとクライアントとを同一の計算機40上で実現した例である。すなわち、クライアント側の照会手段42とサーバ側のデータベースシステム22とを、外部のネットワーク30を介さずに、ネットワーク部41を経由して直接的に連繋している。
Next, the embodiment shown in FIG. 7 will be described. In this embodiment, the server and the client shown in FIG. 5 are realized on the
この場合、照会手段42は、クライアントアプリケーション46からの依頼に基き、ローカルキャッシュ44に問い合わせ文が存在しない場合、又は存在していても検索結果の有効期限が超過している場合に、問い合わせ文を、ネットワーク部41を経由してデータベースシステム22に直接的に送り、その検索結果を、有効期限と共にデータベースシステム22からネットワーク部41を経由して入手する。その他の機能は、図5で示したものと全て同じであり、説明は省略する。
In this case, based on the request from the
また、図7の実施形態の場合、ネットワーク部41は、図示しない他のクライアントからの問合せ文を外部のネットワーク30により受付け、データベースシステム22による検索結果及びその有効期限を、ネットワーク30経由で他の図示しないクライアントに回答することもできる。
In the case of the embodiment of FIG. 7, the
12 照会手段
14 データ保管用のキャッシュ
16 問い合わせ元であるクライアントアプリケーション
22 データベースシステム
23 データベース
12 Inquiry means 14 Cache for
Claims (6)
前記問い合せ文及びこの問い合せ文により入手した検索結果をデータ保管用のキャッシュに保管しておき、
新たな問い合せ文を入力すると、前記キャッシュに前記新たな問い合せ文と同様意味の過去の問い合せ文及びこの問い合わせ文に対応する過去の検索結果が保管されているかを照会し、
保管されている場合は、この保管されている検索結果を取り出して問合せ元に提供し、保管されていない場合は、前記新たな問い合せ文をデータベースに送って検索結果を求める
ことを特徴とするデータ検索方法。 A data search method for sending an inquiry sentence to a database and obtaining a search result corresponding to the inquiry sentence from the database,
Store the inquiry sentence and the search result obtained by this inquiry sentence in a cache for data storage,
When a new inquiry sentence is input, it is inquired whether a past inquiry sentence having the same meaning as the new inquiry sentence and a past search result corresponding to the inquiry sentence are stored in the cache,
If stored, this stored search result is retrieved and provided to the query source. If not stored, the new query is sent to the database to obtain the search result. retrieval method.
前記問い合せ文、この問い合せ文により入手した検索結果及びこの検索結果に付された有効期限をデータ保管用のキャッシュに保管しておき、
新たな問い合せ文を入力すると、前記キャッシュに前記新たな問い合せ文と同様意味の過去の問い合せ文及びそれに対応する過去の検索結果が保管されているかを照会し、
保管されている場合は、この保管されている検索結果が前記有効期限内かを判断して、前記有効期限内であればこの保管されている検索結果を問い合せ元に提供し、前記有効期限を過ぎている場合又は保管されていない場合は、前記新たな問い合せ文をデータベースに送って検索結果を求める
ことを特徴とするデータ検索方法。 A data search method for sending an inquiry sentence to a database and obtaining a search result corresponding to the inquiry sentence from the database,
The inquiry sentence, the search result obtained by this inquiry sentence, and the expiration date attached to the search result are stored in a cache for data storage,
When a new inquiry sentence is input, an inquiry is made as to whether a past inquiry sentence having the same meaning as the new inquiry sentence and a past search result corresponding thereto are stored in the cache,
If it is stored, it is determined whether the stored search result is within the expiration date, and if it is within the expiration date, the stored search result is provided to the inquiry source, and the expiration date is set. A data search method characterized in that if it has passed or has not been stored, the new query is sent to a database to obtain a search result.
前記問い合わせ文及びこの問い合わせ文により入手した検索結果を保管するデータ保管用のキャッシュと、
前記データベースに対する問い合せ文が入力されると、この問い合せ文と同様意味の過去の問い合せ文及びこの過去の問い合せ文により入手した過去の検索結果が前記キャッシュに保管されているかを照会し、保管されている場合は、前記過去の検索結果を取り出して問合せ元に提供し、保管されていない場合は、前記問い合せ文を前記データベース側に送信し、この問い合せ文に対する検索結果を前記データベース側から入手すると、入手した検索結果を問合せ元に提供するとともに、前記問い合せ文と対応させて前記キャッシュに保管させる照会手段と、
を備えたことを特徴とするデータ検索システム。 A data search system that sends an inquiry sentence to a database and obtains a search result corresponding to the inquiry sentence from the database,
A cache for storing data that stores the query and search results obtained by the query;
When an inquiry sentence for the database is input, it is inquired whether a past inquiry sentence having the same meaning as the inquiry sentence and a past search result obtained by the past inquiry sentence are stored in the cache, and stored. If it is, the past search results are extracted and provided to the query source.If the search results are not stored, the query is sent to the database, and the search results for the query are obtained from the database. Inquiry means for providing the obtained search result to a query source and storing the obtained search result in the cache in correspondence with the query statement;
A data search system characterized by comprising:
前記問い合わせ文及びこの問い合わせ文により入手した検索結果を保管するデータ保管用のキャッシュと、
前記データベースに対する問い合せ文が入力されると、この問い合せ文と同様意味の過去の問い合せ文及びこの過去の問い合せ文により入手した過去の検索結果が前記キャッシュに保管されているかを照会し、保管されている場合は、前記過去の検索結果に付されている有効期限を参照して有効期限内であればこの過去の検索結果を問い合せ元に提供し、この有効期限が過ぎている場合、又は保管されていない場合は、前記問い合せ文を前記データベース側に送信し、この問い合せ文に対する検索結果をデータベース側から入手すると、入手した検索結果を問い合せ元に提供するとともに、この入手した結果を前記問い合せ文と対応させて有効期限とともに前記キャッシュに保管させる照会手段と、
を備えたことを特徴とするデータ検索システム。 A data search system that sends an inquiry sentence to a database and obtains a search result corresponding to the inquiry sentence from the database,
A cache for storing data for storing the query and search results obtained by the query;
When an inquiry sentence for the database is input, it is inquired whether a past inquiry sentence having the same meaning as the inquiry sentence and a past search result obtained by the past inquiry sentence are stored in the cache, and stored. If it is within the expiration date with reference to the expiration date attached to the past search result, the past search result is provided to the inquiry source, and if this expiration date has passed or is stored If not, send the inquiry sentence to the database side, and when the search result for the inquiry sentence is obtained from the database side, the obtained search result is provided to the inquiry source, and the obtained result is referred to as the inquiry sentence. Inquiry means correspondingly stored in the cache together with an expiration date;
A data search system characterized by comprising:
前記問い合わせ文及びこの問い合わせ文により入手した検索結果を保管するデータ保管用のキャッシュと、
前記データベースに対する問い合せ文が入力されると、この問い合せ文と同様意味の過去の問い合せ文及びこの過去の問い合せ文により前記データベースから入手した過去の検索結果が前記キャッシュに保管されているかを照会し、保管されている場合は、前記過去の検索結果を取り出して問い合せ元に提供し、保管されていない場合は、前記問合せ文を前記データベースシステムに送信し、この問い合せ文に対する検索結果を前記データベースシステムから入手すると、入手した検索結果を問い合せ元に提供するとともに、前記問い合せ文と対応させて前記キャッシュに保管させる照会手段と、
を備えたことを特徴とするデータ検索システム。 A database system that has a database in which search results are stored corresponding to a query, and that receives the query and searches the database and outputs a corresponding search result;
A cache for storing data that stores the query and search results obtained by the query;
When an inquiry sentence for the database is input, a past inquiry sentence having the same meaning as the inquiry sentence and a past search result obtained from the database by the past inquiry sentence are inquired about in the cache, If it is stored, the past search result is retrieved and provided to the inquiry source. If it is not stored, the query is sent to the database system, and the search result for the query is sent from the database system. When obtained, inquiry means for providing the obtained search result to the inquiry source, and storing it in the cache in correspondence with the inquiry sentence;
A data search system characterized by comprising:
前記問い合わせ文及びこの問い合わせ文により入手した検索結果を保管するデータ保管用のキャッシュと、
前記データベースに対する問い合せ文が入力されると、この問い合せ文と同様意味の過去の問い合せ文及びこの過去の問い合せ文により入手した過去の検索結果が前記キャッシュに保管されているかを照会し、保管されている場合は、前記過去の検索結果に付されている有効期限を参照して有効期限内であればこの過去の検索結果を問い合せ元に提供し、この有効期限が過ぎている場合、又は保管されていない場合は、前記問い合せ文を前記データベースシステムに送信し、この問い合せ文に対する検索結果を前記データベースシステムから入手すると、入手した検索結果を問い合せ元に提供するとともに、この入手した検索結果を前記問い合せ文と対応させて有効期限とともに前記キャッシュに保管させる照会手段と、
を備えたことを特徴とするデータ検索システム。 A database in which search results are stored corresponding to a query sentence, and an expiration date table in which expiration dates for the search results are respectively set. When the query sentence is received, the database is searched and the corresponding search results are displayed. A database system for outputting with the expiration date;
A cache for storing data for storing the query and search results obtained by the query;
When an inquiry sentence for the database is input, it is inquired whether a past inquiry sentence having the same meaning as the inquiry sentence and a past search result obtained by the past inquiry sentence are stored in the cache, and stored. If it is within the expiration date with reference to the expiration date attached to the past search result, the past search result is provided to the inquiry source, and if this expiration date has passed or is stored If not, send the inquiry sentence to the database system, and obtain the search result for the inquiry sentence from the database system, and provide the obtained search result to the inquiry source. Query means associated with a statement and stored in the cache with an expiration date;
A data search system characterized by comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005285252A JP2007094884A (en) | 2005-09-29 | 2005-09-29 | Data search method and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005285252A JP2007094884A (en) | 2005-09-29 | 2005-09-29 | Data search method and system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007094884A true JP2007094884A (en) | 2007-04-12 |
Family
ID=37980504
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005285252A Withdrawn JP2007094884A (en) | 2005-09-29 | 2005-09-29 | Data search method and system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007094884A (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1980348A2 (en) | 2007-03-30 | 2008-10-15 | Mitsubishi Materials Corporation | Cutting insert |
EP1980349A2 (en) | 2007-03-30 | 2008-10-15 | Mitsubishi Materials Corporation | Cutting insert |
JP2013511768A (en) * | 2009-11-18 | 2013-04-04 | クアルコム,インコーポレイテッド | Method and system for managing electronic messages |
KR101440359B1 (en) * | 2014-02-05 | 2014-09-17 | 고혜경 | OWL-S based Service Discovery Method and System |
US9158817B2 (en) | 2011-06-27 | 2015-10-13 | International Business Machines Corporation | Enhancing online querying service using client memorization |
CN112507199A (en) * | 2020-12-22 | 2021-03-16 | 北京百度网讯科技有限公司 | Method and apparatus for optimizing a search system |
CN114138840A (en) * | 2021-12-08 | 2022-03-04 | 中国建设银行股份有限公司 | Data query method, device, equipment and storage medium |
-
2005
- 2005-09-29 JP JP2005285252A patent/JP2007094884A/en not_active Withdrawn
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1980348A2 (en) | 2007-03-30 | 2008-10-15 | Mitsubishi Materials Corporation | Cutting insert |
EP1980349A2 (en) | 2007-03-30 | 2008-10-15 | Mitsubishi Materials Corporation | Cutting insert |
JP2013511768A (en) * | 2009-11-18 | 2013-04-04 | クアルコム,インコーポレイテッド | Method and system for managing electronic messages |
US8713027B2 (en) | 2009-11-18 | 2014-04-29 | Qualcomm Incorporated | Methods and systems for managing electronic messages |
US9158817B2 (en) | 2011-06-27 | 2015-10-13 | International Business Machines Corporation | Enhancing online querying service using client memorization |
KR101440359B1 (en) * | 2014-02-05 | 2014-09-17 | 고혜경 | OWL-S based Service Discovery Method and System |
CN112507199A (en) * | 2020-12-22 | 2021-03-16 | 北京百度网讯科技有限公司 | Method and apparatus for optimizing a search system |
CN114138840A (en) * | 2021-12-08 | 2022-03-04 | 中国建设银行股份有限公司 | Data query method, device, equipment and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3262325B2 (en) | Agent system and method for supporting construction of electronic mail service system | |
US7660844B2 (en) | Network service system and program using data processing | |
US20040098546A1 (en) | System and method for synchronizing related data elements in disparate storage systems | |
US20050120181A1 (en) | Invalidating cached data using secondary keys | |
US20030093576A1 (en) | Method and system for message management | |
US10885036B2 (en) | Obtaining incremental updates from a database using a partial query | |
US20100115061A1 (en) | Server system, server apparatus, program and method | |
CN110717073B (en) | System and method for realizing flow query processing by combining business data in cloud flow platform | |
CN104199978A (en) | System and method for realizing metadata cache and analysis based on NoSQL and method | |
JP2007094884A (en) | Data search method and system | |
EP1271362A2 (en) | A method of handling a data request | |
JP2003271809A (en) | Profile managing server, managing device and product managing server | |
EP1217805A1 (en) | Method and apparatus for replacing data transmission request expressions | |
US20070130118A1 (en) | Method and apparatus for manipulating data within a remote database in a multiple tier environment | |
JP3811615B2 (en) | Information distribution system, apparatus and method, and recording medium | |
JP2000235514A (en) | Method and system for retrieving information and recording medium recording information retrieval processing program | |
JP3465815B2 (en) | Text filtering system | |
JPH10254752A (en) | Electronic filing system | |
KR20180006518A (en) | Automatically writing service system for sales material kit | |
JP2002169805A (en) | Client-server type document retrieving device | |
JP3498798B2 (en) | Text filtering method | |
JP3601869B2 (en) | Machine translation system | |
JP2004185303A (en) | Www site history retrieving device and method, and program | |
JP2713405B2 (en) | File system | |
JP2003296441A5 (en) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20081202 |