JP5374444B2 - 検索装置、検索方法及び検索プログラム - Google Patents

検索装置、検索方法及び検索プログラム Download PDF

Info

Publication number
JP5374444B2
JP5374444B2 JP2010126043A JP2010126043A JP5374444B2 JP 5374444 B2 JP5374444 B2 JP 5374444B2 JP 2010126043 A JP2010126043 A JP 2010126043A JP 2010126043 A JP2010126043 A JP 2010126043A JP 5374444 B2 JP5374444 B2 JP 5374444B2
Authority
JP
Japan
Prior art keywords
document
search
cache storage
response data
acquired
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.)
Active
Application number
JP2010126043A
Other languages
English (en)
Other versions
JP2011253299A (ja
Inventor
壮 日比野
聡 深田
恭太郎 堀口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2010126043A priority Critical patent/JP5374444B2/ja
Publication of JP2011253299A publication Critical patent/JP2011253299A/ja
Application granted granted Critical
Publication of JP5374444B2 publication Critical patent/JP5374444B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、メタデータを検索する技術に関する。
従来、クライアントからの検索クエリに該当するメタデータをRelational DataBase Management System(RDBMS)から検索して検索結果を返却するアプリケーションサーバにおいて、初回問い合わせの検索クエリと検索結果をキャッシュとして保存しておき、2回目以降の同一の検索クエリの問い合わせがあった場合にキャッシュから検索結果を返却することで、応答時間を短縮していた(例えば、特許文献1)。
特開2009−175896号公報
アプリケーションサーバでは、メタデータがラージオブジェクト型で格納されたxml等の構造化文書である場合、RDBMS上の検索時間やRDBMSからのラージオブジェクトの取得時間がボトルネックとなる。ラージオブジェクトとは、RDBMSに格納するデータの型であり、データページを超えたサイズのデータを格納できるという特徴がある。
従来技術のように、初回検索時に返却データをキャッシュしておき、次回以降の問い合わせ時はキャッシュに保存されている返却データを用いることで、応答時間を短縮し、リソースの消費量を低減することができる。しかしながら、検索クエリと返却データを1対1で管理している従来のキャッシュでは、返却データがRDBMS上に格納されたラージオブジェクト型データの集合である場合、RDBMS上で、返却データを構成する1つのラージオブジェクト型データが更新されるとキャッシュされた返却データとRDBMSに不整合が生じるという問題がある。
本発明は、上記に鑑みてなされたものであり、返却データがラージオブジェクト型データの集合である場合に、データベースとの不整合を生じることなく検索の応答時間を短縮することを目的とする。
第1の本発明に係る検索装置は、ドキュメントを格納したデータベースから検索条件に該当する前記ドキュメントを検索する検索装置であって、検索クエリを受信する受信手段と、前記検索クエリを用いて前記データベースを検索し、当該検索クエリの検索条件に該当する1つ以上のドキュメントに関して、前記ドキュメントの識別子及び前記ドキュメントの格納場所を示す格納場所情報を有する検索結果を取得する検索手段と、以前取得したドキュメント、当該ドキュメントの識別子を格納する第1キャッシュ保存手段と、前記検索結果のドキュメントの識別子に対応するドキュメントが前記第1キャッシュ保存手段に存在するか否か判定し、前記ドキュメントが前記第1キャッシュ保存手段に存在する場合は、前記第1キュッシュ保存手段から前記ドキュメントを取得し、存在しない場合は、前記検索結果の格納場所情報に基づいて前記データベースから前記ドキュメントを取得する取得手段と、前記データベースから取得した前記ドキュメントのそれぞれを個別に当該ドキュメントの識別子とともに前記第1キャッシュ保存手段に格納する格納手段と、前記取得手段が取得した1つ以上の前記ドキュメントを結合して応答データを生成する生成手段と、前記応答データを返却する返却手段と、を有することを特徴とする。
第2の本発明に係る検索方法は、検索装置がドキュメントを格納したデータベースから検索条件に該当する前記ドキュメントを検索する検索方法であって、検索クエリを受信するステップと、前記検索クエリを用いて前記データベースを検索し、当該検索クエリの検索条件に該当する1つ以上のドキュメントに関して、前記ドキュメントの識別子及び前記ドキュメントの格納場所を示す格納場所情報を有する検索結果を取得するステップと、前記検索結果のドキュメントの識別子に対応するドキュメントが、以前取得したドキュメント、当該ドキュメントの識別子を格納する第1キャッシュ保存手段に存在するか否か判定し、前記ドキュメントが前記第1キャッシュ保存手段に存在する場合は、前記第1キュッシュ保存手段から前記ドキュメントを取得し、存在しない場合は、前記検索結果の格納場所情報に基づいて前記データベースから前記ドキュメントを取得するステップと、前記データベースから取得した前記ドキュメントのそれぞれを個別に当該ドキュメントの識別子とともに前記第1キャッシュ保存手段に格納するステップと、前記取得手段が取得した1つ以上の前記ドキュメントを結合して応答データを生成するステップと、前記応答データを返却するステップと、を有することを特徴とする。
第3の本発明に係る検索プログラムは、上記検索方法をコンピュータに実行させるための検索プログラムである。
本発明によれば、返却データがラージオブジェクト型データの集合である場合に、データベースとの不整合を生じることなく検索の応答時間を短縮することができる。
本実施の形態における検索装置の構成を示す機能ブロック図である。 レンポンスキャッシュとフラグメントキャッシュを説明する概略図である。 本実施の形態における検索装置の処理の流れを示すフローチャートである。 ドキュメントを取得する処理の流れを示すフローチャートである。
以下、本発明の実施の形態について図面を用いて説明する。
図1は、本実施の形態における検索装置1の構成を示す機能ブロック図である。同図に示す検索装置1は、端末3から検索クエリを受信し、RDBMS2から放送番組やビデオ・オン・デマンドコンテンツの番組メタデータを検索して端末3へ返却する装置である。検索クエリとは、端末3から検索装置1への情報検索要求であり、例えば、タイトル、ジャンル、日時等の検索条件を論理演算子や修飾子で結合したものである。端末3は、検索装置1へ検索クエリを送信し、検索クエリに対する検索結果を応答データとして受信するものであり、例えば、Internet Protocol Television(IPTV)サービスにおける受信端末などがある。
まず、RDBMS2の構成について説明する。RDBMS2は、複数のアトリビュートテーブル201、ドキュメントテーブル202、一次検索結果テーブル203、およびキャッシュ管理テーブル204で構成される。アトリビュートテーブル201は、番組メタデータが記述されたドキュメントを属性に展開したものであり、コンテンツID(crid)、タイトル、概要、出演者等の番組に関する情報(番組メタデータ)で構成されている。ドキュメントとはXML等で記述された構造化文書のことであり、属性とは名前と値のペアで記述される文書の構成要素のことである。ドキュメントテーブル202は、フラグメントID(fid)、フラグメントバージョン(fver)、コンテンツID(crid)、および番組メタデータを返却単位に分割したドキュメント(フラグメント)をラージオブジェクト型としたものを格納する。一次検索結果テーブル203は、検索クエリから生成したhash値と、検索条件に該当する番組メタデータを持つコンテンツIDのリスト(cridlist)を格納する。キャッシュ管理テーブル204は、hash値と、一次検索結果テーブル203に格納した一次検索結果および後述するレスポンスキャッシュの有効期限を格納する。
続いて、検索装置1の構成について説明する。図1に示すように、検索装置1は、クエリ受信部101、キャッシュ有効期限判定部102、構文解析部103、SQL生成部104、検索実行部105、ドキュメント取得部106、応答データ生成部107、応答データ返却部108、レスポンスキャッシュ保存部110、およびフラグメントキャッシュ保存部111を備える。検索装置1が備える各部は、演算処理装置、記憶装置等を備えたコンピュータにより構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムは検索装置1が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。
クエリ受信部101は、端末3から検索クエリを受信する。
キャッシュ有効期限判定部102は、受信した検索クエリからhash値を計算し、キャッシュ管理テーブル204からそのhash値に対応する有効期限、つまり検索クエリに対応する有効期限を取得して、一次検索結果とレスポンスキャッシュの有効期限判定を行う。受信した検索クエリと同じ検索クエリにより検索したことがある場合は、有効期限を取得でき、受信した検索クエリと同じ検索クエリにより検索したことがない場合は、有効期限を取得できない。計算したhash値は、有効期限を付してキュッシュ管理テーブル204に格納される。
構文解析部103、SQL生成部104、検索実行部105は、hash値に対応する有効期限が存在しない場合、あるいは、hash値が有効期限切れの場合に、検索クエリからSQLを生成し、RDBMS2に対して検索を実行する。具体的には、構文解析部103が検索クエリから構文木を作成し、SQL生成部104がその構文木からSQLを生成し、検索実行部105が生成したSQLによりRDBMS2に対して検索を実行する。
ドキュメント取得部106は、RDBMS2から得られる検索結果であるResultSetオブジェクト205からfid、fverを取得し、fidに該当するドキュメント(フラグメント)をフラグメントキャッシュ保存部111、あるいはRDBMS2から取得する。ResultSetオブジェクト205は、fid、fver、および実体データの格納場所を示すoidの情報を含む。ResultSetオブジェクト205から取得したfidに一致するfidのフラグメントがフラグメントキャッシュ保存部111に存在し、ResultSetオブジェクト205から取得したfverがフラグメントキャッシュ保存部111のfver以下の値であれば、fidに該当するフラグメントをフラグメントキャッシュ保存部111から取得する。一致するfidのフラグメントがフラグメントキャッシュ保存部111に存在しない場合、あるいは、ResultSetオブジェクト205から取得したfverがフラグメントキャッシュ保存部111のfverより大きい場合は、ResultSetオブジェクト205のoidに従って、RDBMS2から実体データを取得する。取得した実体データは、フラグメントキャッシュ保存部111に保存する。
応答データ生成部107は、ドキュメント取得部106が取得したドキュメントをデリミタで区切り結合したものを応答データとして生成する。生成した応答データは、hash値とともにレスポンスキャッシュ保存部110に保存する。
応答データ返却部108は、応答データを端末3へ返却する。検索クエリから生成したhash値が有効期限内であって、hash値に対応する応答データがレスポンスキャッシュ保存部110に存在する場合は、応答データ返却部108がレスポンスキャッシュ保存部110からhash値に対応するレスポンスキャッシュ(応答データ)を読み出して端末3へ返却する。hash値が有効期限切れ、あるいはhash値に対応する応答データがレスポンスキャッシュ保存部110に存在しない場合は、応答データ生成部107が生成した応答データを端末3へ返却する。
レスポンスキャッシュ保存部110は、検索クエリから計算したhash値とその検索クエリにより得られた応答データとを関連付けてレスポンスキャッシュとして保存する。
フラグメントキャッシュ保存部111は、fid、fverとともにfidに該当するドキュメント(フラグメント)をフラグメントキャッシュとして保存する。
図2に、レンポンスキャッシュとフラグメントキャッシュを説明する概略図を示す。同図に示す応答データは、番組A,Bに関する情報を検索して得られたものである。番組単位に単数もしくは複数のフラグメントが存在することができる。図2において、番組Aの番組メタデータはフラグメントa1〜a3、番組Bの番組メタデータはフラグメントb1〜b3である。フラグメントa1〜b3は、ドキュメントテーブル202において、fid、fverに関連付けられて格納されている。応答データは、番組A,Bに関する情報を検索して得られた、番組メタデータの返却単位であるフラグメントa1〜b3を結合したものである。
レスポンスキャッシュ保存部110は、検索要求単位で応答データをキャッシュする。具体的には、レスポンスキャッシュ保存部110は、番組A,Bに関する情報を検索するための検索クエリから計算したhash値とフラグメントa1〜b3を結合した応答データとを関連付けて保持する。
フラグメントキャッシュ保存部111は、フラグメント単位でフラグメントをキャッシュする。具体的には、フラグメントキャッシュ保存部111は、ドキュメント取得部106がRDBMS2から取得した各フラグメントa1〜b3とfid、fverとを関連付けて保持する。fidは、フラグメントa1〜b3それぞれに一意に割り付けられた識別子である。fverは、フラグメントのバージョンを表す値であり、例えば、番組Aの番組メタデータであるフラグメントa1が更新された場合、fverが1から2へ更新される。fverとして単純に更新時刻を用いてもよい。
次に、検索装置1の処理の流れについて説明する。
図3は、検索装置1の処理の流れを示すフローチャートである。
クエリ受信部101は、端末3から検索クエリを受信すると、検索クエリからhash値を生成する(ステップS101)。
そして、キャッシュ有効期限判定部102は、そのhash値に対応する有効期限をRDBMS2のキャッシュ管理テーブル204より取得し(ステップS102)、hash値に対応する有効期限の有無を判定する(ステップS103)。
hash値に対応する有効期限が取得できた場合、キャッシュ有効期限判定部102は、その有効期限が期限内か否かを判定する(ステップS104)。期限切れの場合は、一次検索結果テーブル203、キャッシュ管理テーブル204から該当レコードを削除する(ステップS105)。
ステップS103においてhash値に対応する有効期限が無いと判定された場合、あるいはステップS104において取得した有効期限が期限切れと判定された場合は、受信した検索クエリを用いて、構文解析部103、SQL生成部104、検索実行部105によりRDBMS2に対して一次検索を実施する(ステップS106)。一次検索とは、検索条件に該当するコンテンツIDをアトリビュートテーブル201から検索するものである。具体的には、検索条件に従って、アトリビュートテーブル201の属性に該当するコンテンツIDを検索する。一次検索結果である、検索条件に該当するコンテンツIDのリスト(cridlist)を、検索クエリから生成したhash値とともに一次検索結果テーブル203に格納する。
一方、hash値に対応する有効期限が期限内の場合は、hash値に対応する応答データがレスポンスキャッシュ保存部110に存在するか否か判定する(ステップS107)。
レスポンスキャッシュ保存部110にhash値に対応する応答データが存在する場合は、応答データ返却部108は、レスポンスキャッシュ保存部110からその応答データを取得し(ステップS108)、端末3に返却する(ステップS113)。
一次検索を実施した後、あるいはhash値に対応する応答データが存在しない場合は、二次検索を実施する(ステップS109)。二次検索とは、一次検索結果テーブル203の一次検索結果とドキュメントテーブル202を結合し、コンテンツIDのリスト(cridlist)に該当するドキュメントをResultSetオブジェクト205として取得するものである。具体的には、一次検索で得られたコンテンツIDのリスト(cridlist)とドキュメントテーブル202をコンテンツID(crid)で内部結合した表を取得する。
二次検索後、ドキュメント取得部106が二次検索で得られたResultSetオブジェクト205を参照し、フラグメントキャッシュ保存部111あるいはRDBMS2からドキュメントを取得する(ステップS110)。ドキュメントを取得するステップS110の詳細は後述する。
そして、応答データ生成部107が、取得したドキュメントを結合して応答データを生成し(ステップS111)、生成した応答データをhash値とともにレスポンスキャッシュ保存部110に保存する(ステップS112)。
そして、応答データ返却部108が生成した応答データを端末3に返却する(ステップS113)。
続いて、ドキュメントを取得する処理の流れについて説明する。
図4は、ドキュメント取得部106がドキュメントを取得する処理の流れを示すフローチャートである。
まず、ドキュメント取得部106は、ResultSetオブジェクト205よりfid,fverを1件取得し(ステップS201)、fid,fverが取得できたか否か判定する(ステップS202)。fid,fverが取得できない場合は、検索条件に該当するすべてのドキュメントを取得したのでドキュメントを取得する処理を終了する。
そして、取得したfidに対応するフラグメントがフラグメントキャッシュ保存部111に存在するか否か判定する(ステップS203)。取得したfidに対応するフラグメントがフラグメントキャッシュ保存部111に存在する場合、取得したfverとフラグメントキャッシュ保存部111に格納されたフラグメントキャッシュのfverとを比較する(ステップS204)。
取得したfverがフラグメントキャッシュのfver以下の場合は、フラグメントキャッシュ保存部111からドキュメント(フラグメント)を取得する(ステップS205)。
一方、取得したfverがフラグメントキャッシュのfverより大きい場合は、ResultSetオブジェクト205のoidに該当するドキュメントをRDBMS2から取得する(ステップS206)。取得したドキュメントは、fid,fverとともにフラグメントキャッシュ保存部111に保存する(ステップS207)。
ドキュメントを取得した後は、ステップS201に戻り、これらの処理をResultSetオブジェクト205が保持する全てのfidについて行う。
以上説明したように、本実施の形態によれば、応答データを構成する個別のドキュメントをフラグメントキャッシュ保存部111に保存しておき、ドキュメント取得部106は、取得するドキュメントがフラグメントキャッシュ保存部111に存在すればフラグメントキャッシュ保存部111からドキュメントを取得し、存在しなければ、RDBMS2からドキュメントを取得することにより、ドキュメントをRDBMS2から取得する回数を最小限にすることが可能となり、検索の応答時間を短縮することができる。
本実施の形態によれば、フラグメントキャッシュ保存部111にドキュメントのバージョンを保存しておき、ドキュメント取得部106は、フラグメントキャッシュ保存部111のドキュメントのバージョンがRDBMS2のドキュメントのバージョンより古い場合は、RDBMS2からドキュメントを取得することにより、キャッシュされたドキュメントとRDBMS2のドキュメントに不整合が生じない。
また、レスポンスキャッシュ保存部110に検索要求単位で応答データをキャッシュしておくことで、同一の検索クエリを受信した場合には、より応答時間を短縮することができる。
1…検索装置
101…クエリ受信部
102…キャッシュ有効期限判定部
103…構文解析部
104…SQL生成部
105…検索実行部
106…ドキュメント取得部
107…応答データ生成部
108…応答データ返却部
110…レスポンスキャッシュ保存部
111…フラグメントキャッシュ保存部
2…RDBMS
201…アトリビュートテーブル
202…ドキュメントテーブル
203…一次検索結果テーブル
204…キャッシュ管理テーブル
205…ResultSetオブジェクト
3…端末

Claims (9)

  1. ドキュメントを格納したデータベースから検索条件に該当する前記ドキュメントを検索する検索装置であって、
    検索クエリを受信する受信手段と、
    前記検索クエリを用いて前記データベースを検索し、当該検索クエリの検索条件に該当する1つ以上のドキュメントに関して、前記ドキュメントの識別子及び前記ドキュメントの格納場所を示す格納場所情報を有する検索結果を取得する検索手段と、
    以前取得したドキュメント、当該ドキュメントの識別子を格納する第1キャッシュ保存手段と、
    前記検索結果のドキュメントの識別子に対応するドキュメントが前記第1キャッシュ保存手段に存在するか否か判定し、前記ドキュメントが前記第1キャッシュ保存手段に存在する場合は、前記第1キュッシュ保存手段から前記ドキュメントを取得し、存在しない場合は、前記検索結果の格納場所情報に基づいて前記データベースから前記ドキュメントを取得する取得手段と、
    前記データベースから取得した前記ドキュメントのそれぞれを個別に当該ドキュメントの識別子とともに前記第1キャッシュ保存手段に格納する格納手段と、
    前記取得手段が取得した1つ以上の前記ドキュメントを結合して応答データを生成する生成手段と、
    前記応答データを返却する返却手段と、
    を有することを特徴とする検索装置。
  2. 前記検索クエリに対応させて有効期限を保持する有効期限管理テーブルと、
    前記検索クエリに対応させて以前返却した応答データを格納する第2キャッシュ保存手段と、
    前記検索クエリに対応する前記有効期限を取得し、有効期限が取得でき、当該有効期限が期限内の場合は、前記第2キャッシュ保存手段から応答データを取得すると判定する判定手段と、を有し、
    前記返却手段は、前記判定手段が前記第2キャッシュ保存手段から応答データを取得すると判定した場合は、前記第2キャッシュ保存手段から前記検索クエリに対応する前記応答データを取得して返却し、前記生成手段が生成した応答データを返却する場合は、当該応答データを前記検索クエリに対応させて前記第2キャッシュ保存手段に格納することを特徴とする請求項記載の検索装置。
  3. ドキュメントを格納したデータベースから検索条件に該当する前記ドキュメントを検索する検索装置であって、
    検索クエリを受信する受信手段と、
    前記検索クエリを用いて前記データベースを検索し、当該検索クエリの検索条件に該当するドキュメントに関して、前記ドキュメントの識別子及び前記ドキュメントの格納場所を示す格納場所情報を有する検索結果を取得する検索手段と、
    以前取得したドキュメント、当該ドキュメントの識別子を格納する第1キャッシュ保存手段と、
    前記検索クエリに対応させて以前返却した応答データを格納する第2キャッシュ保存手段と、
    前記検索クエリに対応させて有効期限を保持する有効期限管理テーブルと、
    前記検索クエリに対応する前記有効期限を取得し、有効期限が取得でき、当該有効期限が期限内の場合は、前記第2キャッシュ保存手段から応答データを取得すると判定する判定手段と、
    前記検索結果のドキュメントの識別子に対応するドキュメントが前記第1キャッシュ保存手段に存在するか否か判定し、前記ドキュメントが前記第1キャッシュ保存手段に存在する場合は、前記第1キュッシュ保存手段から前記ドキュメントを取得し、存在しない場合は、前記検索結果の格納場所情報に基づいて前記データベースから前記ドキュメントを取得する取得手段と、
    前記取得手段が取得した1つ以上の前記ドキュメントを結合して応答データを生成する生成手段と、
    前記判定手段が前記第2キャッシュ保存手段から応答データを取得すると判定した場合は前記第2キャッシュ保存手段から前記検索クエリに対応する前記応答データを取得して返却し、それ以外の場合は前記生成手段が生成した前記応答データを返却する返却手段と、
    前記データベースから取得した前記ドキュメントを当該ドキュメントの識別子とともに前記第1キャッシュ保存手段に格納するとともに、前記生成手段が生成した応答データを返却する場合は、当該応答データを前記検索クエリに対応させて前記第2キャッシュ保存手段に格納する格納手段と、
    を有することを特徴とする検索装置。
  4. 前記検索結果は、前記ドキュメントのバージョンを有し、
    前記第1キャッシュ保存手段は、前記ドキュメントのバージョンを格納するものであって、
    前記取得手段は、前記検索結果中のバージョンが前記第1キャッシュ保存手段中のバージョンと同じかそれよりも古い場合は、前記第1キュッシュ保存手段から前記ドキュメントを取得し、前記検索結果中のバージョンが前記第1キャッシュ保存手段中のバージョンより新しい場合は、前記検索結果の格納場所情報に基づいて前記データベースから前記ドキュメントを取得し、
    前記格納手段は、前記データベースから取得した前記ドキュメントのバージョンをさらに前記第1キャッシュ保存手段に格納することを特徴とする請求項1乃至3のいずれかに記載の検索装置。
  5. 検索装置がドキュメントを格納したデータベースから検索条件に該当する前記ドキュメントを検索する検索方法であって、
    検索クエリを受信するステップと、
    前記検索クエリを用いて前記データベースを検索し、当該検索クエリの検索条件に該当する1つ以上のドキュメントに関して、前記ドキュメントの識別子及び前記ドキュメントの格納場所を示す格納場所情報を有する検索結果を取得するステップと、
    前記検索結果のドキュメントの識別子に対応するドキュメントが、以前取得したドキュメント、当該ドキュメントの識別子を格納する第1キャッシュ保存手段に存在するか否か判定し、前記ドキュメントが前記第1キャッシュ保存手段に存在する場合は、前記第1キュッシュ保存手段から前記ドキュメントを取得し、存在しない場合は、前記検索結果の格納場所情報に基づいて前記データベースから前記ドキュメントを取得するステップと、
    前記データベースから取得した前記ドキュメントのそれぞれを個別に当該ドキュメントの識別子とともに前記第1キャッシュ保存手段に格納するステップと、
    前記取得手段が取得した1つ以上の前記ドキュメントを結合して応答データを生成するステップと、
    前記応答データを返却するステップと、
    を有することを特徴とする検索方法。
  6. 前記検索クエリに対応させて有効期限を保持する有効期限管理テーブルから前記検索クエリに対応する前記有効期限を取得し、有効期限が取得でき、当該有効期限が期限内の場合は、前記検索クエリに対応させて以前返却した応答データを格納する第2キャッシュ保存手段から応答データを取得すると判定するステップを有し、
    前記返却するステップは、前記判定するステップにおいて、前記第2キャッシュ保存手段から応答データを取得すると判定した場合は、前記第2キャッシュ保存手段から前記検索クエリに対応する前記応答データを取得して返却し、前記生成するステップにおいて生成した応答データを返却する場合は、当該応答データを前記検索クエリに対応させて前記第2キャッシュ保存手段に格納することを特徴とする請求項記載の検索方法。
  7. 検索装置がドキュメントを格納したデータベースから検索条件に該当する前記ドキュメントを検索する検索方法であって、
    検索クエリを受信するステップと、
    前記検索クエリを用いて前記データベースを検索し、当該検索クエリの検索条件に該当するドキュメントに関して、前記ドキュメントの識別子及び前記ドキュメントの格納場所を示す格納場所情報を有する検索結果を取得するステップと、
    前記検索クエリに対応させて有効期限を保持する有効期限管理テーブルから前記検索クエリに対応する前記有効期限を取得し、有効期限が取得でき、当該有効期限が期限内の場合は、前記検索クエリに対応させて以前返却した応答データを格納する第2キャッシュ保存手段から応答データを取得すると判定するステップと、
    前記検索結果のドキュメントの識別子に対応するドキュメントが、以前取得したドキュメント、当該ドキュメントの識別子を格納する第1キャッシュ保存手段に存在するか否か判定し、前記ドキュメントが前記第1キャッシュ保存手段に存在する場合は、前記第1キュッシュ保存手段から前記ドキュメントを取得し、存在しない場合は、前記検索結果の格納場所情報に基づいて前記データベースから前記ドキュメントを取得するステップと、
    前記取得手段が取得した1つ以上の前記ドキュメントを結合して応答データを生成するステップと、
    前記判定するステップにおいて、前記第2キャッシュ保存手段から応答データを取得すると判定した場合は前記第2キャッシュ保存手段から前記検索クエリに対応する前記応答データを取得して返却し、それ以外の場合は前記生成するステップで生成した前記応答データを返却するステップと、
    前記データベースから取得した前記ドキュメントを当該ドキュメントの識別子とともに前記第1キャッシュ保存手段に格納するとともに、前記生成するステップにおいて生成した応答データを返却する場合は、当該応答データを前記検索クエリに対応させて前記第2キャッシュ保存手段に格納するステップと、
    を特徴とする検索方法。
  8. 前記検索結果は、前記ドキュメントのバージョンを有し、
    前記第1キャッシュ保存手段は、前記ドキュメントのバージョンを格納するものであって、
    前記取得するステップは、前記検索結果中のバージョンが前記第1キャッシュ保存手段中のバージョンと同じかそれよりも古い場合は、前記第1キュッシュ保存手段から前記ドキュメントを取得し、前記検索結果中のバージョンが前記第1キャッシュ保存手段中のバージョンより新しい場合は、前記検索結果の格納場所情報に基づいて前記データベースから前記ドキュメントを取得し、
    前記格納するステップは、前記データベースから取得した前記ドキュメントのバージョンをさらに前記第1キャッシュ保存手段に格納することを特徴とする請求項5乃至7のいずれかに記載の検索方法。
  9. 請求項5乃至8のいずれかに記載の検索方法をコンピュータに実行させるための検索プログラム。
JP2010126043A 2010-06-01 2010-06-01 検索装置、検索方法及び検索プログラム Active JP5374444B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010126043A JP5374444B2 (ja) 2010-06-01 2010-06-01 検索装置、検索方法及び検索プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010126043A JP5374444B2 (ja) 2010-06-01 2010-06-01 検索装置、検索方法及び検索プログラム

Publications (2)

Publication Number Publication Date
JP2011253299A JP2011253299A (ja) 2011-12-15
JP5374444B2 true JP5374444B2 (ja) 2013-12-25

Family

ID=45417200

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010126043A Active JP5374444B2 (ja) 2010-06-01 2010-06-01 検索装置、検索方法及び検索プログラム

Country Status (1)

Country Link
JP (1) JP5374444B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014118914A1 (ja) * 2013-01-30 2014-08-07 三菱電機株式会社 配列データキャッシュシステム、配列データキャッシュ管理装置及び配列データキャッシュ方法
KR101544560B1 (ko) * 2014-04-02 2015-08-17 (주)비아이매트릭스 대용량 데이터를 처리하기 위하여 sql 파싱에 의한 2단계 쿼리 및 결과 캐싱을 이용한 온라인 분석 프로세싱 방법
US10242075B2 (en) * 2014-09-25 2019-03-26 Lg Cns Co., Ltd. Database apparatus, database management method performed in database apparatus and storing the same
WO2016208779A1 (ko) * 2015-06-22 2016-12-29 (주) 비아이매트릭스 대용량 데이터를 처리하기 위한 2단계 쿼리 기반 온라인 분석 프로세싱 방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0218641A (ja) * 1988-07-07 1990-01-22 Mitsubishi Electric Corp データ管理方法
JP2001325280A (ja) * 2000-05-15 2001-11-22 Tsubasa System Co Ltd データベース検索システム
JP3850800B2 (ja) * 2003-01-28 2006-11-29 株式会社日立インフォメーションテクノロジー サーバ装置
JP4763587B2 (ja) * 2006-12-11 2011-08-31 株式会社ソニー・コンピュータエンタテインメント キャッシュサーバ、キャッシュサーバの制御方法、プログラム及び情報記憶媒体
JP4207096B2 (ja) * 2008-06-12 2009-01-14 株式会社日立製作所 データベース管理方法

Also Published As

Publication number Publication date
JP2011253299A (ja) 2011-12-15

Similar Documents

Publication Publication Date Title
KR102133951B1 (ko) 짧은 링크 처리 방법, 디바이스, 및 서버
US8402052B2 (en) Search device, search method, and computer-readable recording medium storing search program
RU2691595C2 (ru) Конструируемый поток данных для улучшенной обработки событий
US8185546B2 (en) Enhanced control to users to populate a cache in a database system
US20100281005A1 (en) Asynchronous Database Index Maintenance
KR102144534B1 (ko) 검색 캐시 업데이트 방법 및 장치
US10891302B2 (en) Scalable synchronization with cache and index management
US20130144834A1 (en) Uniform resource locator canonicalization
JP5374444B2 (ja) 検索装置、検索方法及び検索プログラム
WO2008140937A2 (en) Query handling in databases with replicated data
CN111046036A (zh) 数据同步方法、装置、系统及存储介质
WO2015096609A1 (zh) 视频资源的倒排索引文件建立方法及其系统
US20140032494A1 (en) Data index using a linked data standard
US9875249B1 (en) Reducing database fragmentation
JP2012203792A (ja) 有効期限算出装置、有効期限算出方法及び有効期限算出プログラム
US11625399B2 (en) Methods and devices for dynamic filter pushdown for massive parallel processing databases on cloud
US20080263017A1 (en) System for unordered relational database retrieval returning distinct values
CN107004036B (zh) 用以搜索包含大量条目的日志的方法和系统
CN106682197B (zh) 一种搜索缓存更新方法及装置
KR102415155B1 (ko) 데이터 검색 장치 및 방법
CN112732751B (zh) 一种医学数据处理方法、装置、存储介质及设备
CN110750566A (zh) 数据处理方法、装置、缓存系统及缓存管理平台
JP6550308B2 (ja) 情報処理システム及びコンピュータプログラム
JP2012048280A (ja) コンテンツ生成装置、コンテンツ生成方法、コンテンツ生成プログラム
JP2004252789A (ja) 情報検索装置、情報検索方法、情報検索プログラム及びそのプログラムを記録した記録媒体

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130212

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130402

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130917

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130920

R150 Certificate of patent or registration of utility model

Ref document number: 5374444

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350