JP2013206441A - 検索装置、及びプログラム - Google Patents

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

Info

Publication number
JP2013206441A
JP2013206441A JP2012078366A JP2012078366A JP2013206441A JP 2013206441 A JP2013206441 A JP 2013206441A JP 2012078366 A JP2012078366 A JP 2012078366A JP 2012078366 A JP2012078366 A JP 2012078366A JP 2013206441 A JP2013206441 A JP 2013206441A
Authority
JP
Japan
Prior art keywords
search
subset
unit
server
index
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.)
Pending
Application number
JP2012078366A
Other languages
English (en)
Inventor
Keisuke Minami
圭祐 南
Daisuke Ajifu
大介 安次富
Tsunetaro Ise
恒太郎 伊瀬
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2012078366A priority Critical patent/JP2013206441A/ja
Priority to US13/613,400 priority patent/US20130262446A1/en
Priority to CN2012103422773A priority patent/CN103365939A/zh
Publication of JP2013206441A publication Critical patent/JP2013206441A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】ユーザ側端末が、サーバが保持する検索用インデックス全体のうち一部の検索インデックスを取得する場合でも、ユーザ側端末が当該一部の検索インデックスを用いて、適切な検索結果を得ることができる。
【解決手段】 検索用インデックスの全体集合について、複数の部分集合に分けて提供可能なサーバと通信可能な端末であって、 前記複数の部分集合の中から特定の部分集合を指定する指定部と、前記指定部が指定する部分集合を、前記サーバから取得する取得部と、前記取得部が取得した部分集合を保持する保持部と、前記保持部が保持する部分集合の検索用インデックスを用いて検索処理を行う検索処理部と、を備える端末。
【選択図】図1

Description

本発明の実施形態は、検索装置、及びプログラムに関する。
検索処理を高速に実行するために、検索用インデックスを事前に作成しておく検索システムが広く用いられている。検索用インデックスとは、例えば、単語または文節などの部分文字列を、その部分文字列が出現するコンテンツを特定するコンテンツIDに対応付けるデータ構造である。ここで、検索用インデックスに格納させる部分文字列を、検索用インデックスのキー(または見出し語)と呼ぶ。
例えば、部分文字列が英語である場合、検索用インデックスのキーの頭文字は「A」〜「Z」まで存在し得る。
検索用インデックスを用いた検索システムでは、利用者から検索キーワードを含む検索要求を受け取ると、検索処理を実行する。検索処理とは、検索用インデックスから、検索キーワードに一致するキーを探し、そのキーに対応付けられたコンテンツIDを検索結果として利用者に返す処理である。
従来、Webコンテンツの検索サービス等における検索用インデックスは、ユーザ側端末ではなく、Webサーバ等のサービス提供側に置かれていた。そのため、ユーザが、ユーザ側端末(例えばPC)に検索キーワードを入力すると、サービス提供側で、検索用インデックスを用いた検索処理を行っていた。その後、サービス提供側が、ユーザ側端末に検索結果を返していた。
一方、近年、検索用インデックスをサービス提供側からユーザ側にあらかじめ取得しておき、検索処理をユーザ側の装置で行えるシステムも開発されている。
検索用インデックスが、サーバに置かれている場合、ユーザ側端末は、一度サーバにアクセスしたうえで検索処理を行う必要がある。したがって、ユーザ側端末のみで検索処理を実現できる場合と比べて、ユーザが検索キーワードを入力してから、ユーザが検索結果を得るまでの時間が長くなってしまう。より具体的には、ユーザ側端末とサーバとの間で通信を行う時間分長くなってしまう。
一方、ユーザ側端末が、検索用インデックスをあらかじめ取得しておくシステムにおいては、以下のような課題がある。近年、コンテンツの急激な増大などによる情報量の急激な増加により、サーバが保持する検索用インデックス全体のサイズが非常に大きくなる場合がある。このような場合、サーバが保持する検索用インデックス全体のサイズが、検索装置の取得性能(通信速度、記憶容量など)を上回ってしまうことがあった。その結果、ユーザ側端末が、サーバの検索用インデックスの一部分しか取得できない場合が想定される。ユーザ側端末が、サーバの検索用インデックスの一部分を無作為に取得する場合、そもそも検索処理が行えないか、検索処理が行えても適切な検索結果が得られないことが想定される。
例えば、ユーザ側端末が、サーバの検索用インデックスを無作為に取得する場合、サーバは、サーバが保持する検索用インデックスを、検索用インデックスのキーの頭文字のアルファベット順の順番に、ユーザ側端末に送る場合を想定する。この場合、ユーザ側端末が、サーバに保存された検索用インデックスの一部しか取得できない場合、検索用インデックスのキーの頭文字が「A〜F」の検索用インデックスを取得できるが、「G〜Z」までの検索用インデックスを取得できない場合がある。このような場合、ユーザが、検索キーワードとして、頭文字が「G」の言葉を入力した場合、ユーザ側装置は、検索結果を得ることができないことが想定される。
特開2008−109480号公報
本発明の一側面は、ユーザ側端末が、サーバが保持する検索用インデックス全体のうち一部の検索用インデックスを取得する場合でも、ユーザ側端末が当該一部の検索用インデックスを用いて、適切な検索結果を得ることができる。
本発明の一観点にかかる検索装置は、検索用インデックスの全体集合について、複数の部分集合に分けて提供可能なサーバと通信可能な検索装置であって、前記複数の部分集合の中から特定の部分集合を指定する指定部と、前記指定部が指定する部分集合を、前記サーバから取得する取得部と、前記取得部が取得した部分集合を保持する保持部と、前記保持部が保持する部分集合の検索用インデックスを用いて検索処理を行う検索処理部と、を備える。
本発明の第1の実施形態に係る検索装置100を含む通信システムを示す図。 サーバ200が保持する検索用インデックスの部分集合の例を示す図。 検索装置100が保持する検索用インデックスの部分集合の例を示す図。 検索用インデックスの部分集合の取得処理を示すフローチャート。 検索装置100の検索処理を示すフローチャート。 コンテンツ保持部203が保持するコンテンツ情報を示す図。 図1のサーバ200の変形例であるサーバ200Aを示すブロック図。 本発明の第2の実施形態に係る検索装置2100を含む通信システムを示す図。 図8のサーバ2200のコンテンツ保持部2203が保持するデータを示す図。 検索装置2100のコンテンツ保持部2106が保持するデータを示す図。 検索装置2100の取得処理を示すフローチャート。 検索装置2100の検索処理を示すフローチャート。 本発明の第3の実施形態に係る通信システムを示す図。 本発明の第4の実施形態に係る通信システムを示す図。 (a)は、本発明の第4の実施形態に係るサーバ4200を示す図であり、(b)は、サーバ4200の修正辞書保持部4206が記憶するデータを示す図。 検索装置4100の修正辞書保持部4107が記憶するデータを示す図。 本発明の第5の実施形態に係る通信システムを示す図。
以下、本発明の実施の形態について、図面を参照しながら説明する。尚、各図において同一箇所については同一の符号を付すとともに、重複した説明は省略する。
<第1の実施形態>
図1は、第1の実施形態にかかる通信システムを示すブロック図である。
第1の実施形態にかかる通信システムは、検索装置100とサーバ200とネットワーク300とで構成される。ユーザ側端末の検索装置100は、ネットワーク300を介して、サービス提供側のサーバ200と通信可能である。
検索装置100は、例えば、PCや携帯電話などである。検索装置100は、後述するように、サーバ200から検索用インデックスの部分集合を取得し、当該検索用インデックスの部分集合を用いて検索処理を行う。
サーバ200は、例えば、Webサーバやファイルサーバなどである。サーバ200は、サーバ200が保持する検索用インデックスの全体集合を部分集合に分けて提供可能な装置である。例えば、サーバ200は、検索用インデックスの全体集合を所定の観点で分類した集合である、複数の部分集合を保持するインデックス保持部201を備える。サーバ200は、検索装置100からの要求に応じて、検索用インデックスの部分集合を通信部202を用いて検索装置100に提供する。例えば、サーバ200の通信部202が、検索装置100から特定の部分集合の取得要求を受け取ると、当該要求にかかる部分集合をインデックス保持部201から取得するとともに、当該部分集合を検索装置100に応答する。尚、サーバ200は、検索装置100に対して提供可能なコンテンツを保持するコンテンツ保持部203を備えていても良い。ネットワーク300は、例えば、インターネットやLAN(Local Area Network)などである。
検索装置100は、取得部101と、インデックス保持部102と、検索処理部103と部分集合指定部104とを備える。
取得部101は、ネットワーク300を介して、サーバ200から検索用インデックスの部分集合を取得する。例えば、取得部101は、サーバ200に対して、部分集合の取得要求を行い、当該要求に対する応答として部分集合を取得する。検索用インデックスは、例えば、文字列(キーと称する)と、それに対応する検索結果である。ここで、検索結果は、例えば、キーの文字列を含むコンテンツを特定するコンテンツIDである。ここで、コンテンツIDは、例えば、コンテンツの保存先であるURI(Uniform Resource Identifier)である。
サーバ200のインデックス保持部201が保持する検索用インデックスの部分集合の例を図2に示す。例えば、検索用インデックスの部分集合としては、「法律」、「医学」、「数学」等がある。例えば、「法律」に関わる検索用インデックスの部分集合は、キーが法律に関わる用語である検索用インデックスを集めた集合である。当該部分集合の一例として、以下では、サーバ200が保持する検索用インデックスの全体集合のうち、キーが法律に関わる用語である検索用インデックスを漏れなく含む集合である場合を説明する。しかしながら、部分集合は、キーが法律にかかわる用語である検索用インデックスのうち、検索処理に対して適切な検索結果を返せる程度の集合であればよく、キーが法律にかかわる用語である検索用インデックスを、漏れなく含む集合である必要はない。すなわち、部分集合は、サーバ200が、検索用インデックスの全体集合を所定の観点で複数に分類分けした集合の1つの集合であり、検索処理に対して適切な検索結果を返せる程度の集合であれば良い。尚、「法律」に関する部分集合を例に説明したが、これに限られない。
このように、取得部101は、サーバ200から検索用インデックスの部分集合を取得できる。したがって、検索装置100が、サーバ200が保持する検索用インデックスの全体集合を取得できる取得性能を下回っていたとしても、検索装置100は、検索用インデックスの部分集合単位で取得できる。その結果、検索装置100は、検索用インデックスの部分集合を用いた検索処理を行うことでき、部分集合として分類されたことに関する検索処理であれば、適切な処理を行うことができる。ここで、適切な処理の一例を説明する。例えば、「法律」に関わる検索用インデックスの部分集合を取得した場合は、「法律」に関わる検索用インデックスとして、キーの頭文字が「A」から「Z」まで漏れのない検索用インデックスを取得できる。したがって、検索キーワードの頭文字が「A」から「Z」いずれの用語についても、検索結果を得ることができる。このように漏れのない処理が実現できる。
インデックス保持部102は、取得部101がサーバ200から取得した検索用インデックスの部分集合を保持する。図3に、インデックス保持部102が、検索用インデックスの部分集合として、「法律」に関わる検索用インデックスの部分集合を保持する例を示す。
インデックス保持部102は、検索用インデックスの部分集合だけでなく、更に検索用インデックスの部分集合メタデータを保持しても良い。部分集合メタデータは、例えば、部分集合に対するヒューマンリーダブルな名称情報である。例えば、部分集合が、「法律」にかかわる集合である場合、メタデータは、「法律」である。部分集合メタデータは、部分集合に関する更に詳細な説明情報であってもよい。部分集合メタデータは、更に、部分集合メタデータの生成日や有効期限などの日付情報を含んでもよいし、検索用インデックスの部分集合に含まれるキーの数を含んでも良い。
検索処理部103は、インデックス保持部102が保持する検索用インデックスの部分集合を用いて検索処理を行う。例えば、ユーザが検索キーワードを入力すると、検索処理部103は、インデックス保持部102が保持する検索用インデックスの部分集合に含まれる検索用インデックスのキーの中に、検索キーワードと一致する用語を探し、一致したキーに対応するコンテンツIDを取得する。本実施例では、検索処理という場合、検索用インデックスを用いて、コンテンツIDを取得する処理をいうものとする。
部分集合指定部104は、取得部101に対して、サーバ200から取得する検索用インデックスの部分集合を指定する。
図4は、検索装置100による検索用インデックスの部分集合の取得処理を示すフローチャートである。図1及び図4を用いて、検索装置100による、検索用インデックスの部分集合の取得処理を説明する。
まず、部分集合指定部104は、検索装置100が利用する検索用インデックスの部分集合を、数値や文字列を用いて、取得部101に対して指定する(S101)。ここで、部分集合の指定のために用いる数値や文字列は、例えば、部分集合の名称情報そのものである。例えば、部分集合の指定のために用いる文字列は、「法律」である。部分集合の指定のために用いる数値や文字列は、ユーザにより入力された情報であっても良いし、検索装置100に予め埋め込まれた情報であっても良い。
尚、部分集合の指定のために用いる情報は、前述の数値や文字列に限られない。部分集合の指定のために使用する情報は、例えば、検索装置100の状態情報(記憶領域の空き容量や処理能力)や、検索装置に付属するセンサ等から得られる情報(位置情報など)であっても良い。検索装置100の状態情報や位置情報など検索装置100に関わる情報を装置情報と称する。また、部分集合の指定のために用いる情報は、検索装置100に蓄積されたユーザに関するユーザ情報(行動履歴や嗜好情報)であってもよい。例えば、部分集合指定部104は、記憶領域の空き容量や処理能力に応じた、取得可能なデータ量の部分集合を指定する。また、位置情報から、当該位置周辺の地域に関連する部分集合を指定する。例えば、サーバ200が、地域毎に分類した部分集合を保持している場合も想定できる。また、後述するサーバ200Aのように(図7参照)、サーバ200Aが、取得部101の取得要求に応じて部分集合を生成可能な場合、部分集合指定のために用いる情報が位置情報である場合、サーバ200Aは、当該位置から所定の距離以内の範囲に関連する部分集合を提供することもできる。このような場合に、位置情報を用いた処理が有効である。
また、サーバ200が、検索用インデックス全体集合のメタデータとして、取得可能な部分集合を保持している場合、部分集合指定部104は、サーバ200から取得した当該メタデータに示される部分集合の中から検索装置100やユーザが選択した部分集合を指定することもできる。
次に、取得部101は、部分集合指定部104により指定された検索用インデックスの部分集合を、サーバ200から取得する(S102)。例えば、部分集合指定部104が取得する部分集合として「法律」を指定した場合、図2に示すサーバ200のインデックス保持部201から、「法律」に関わる検索用インデックスの部分集合を取得する。
次に、インデックス保持部102は、取得部101が取得した検索用インデックスの部分集合を保存する(S103)。図3に示すように、「法律」に関わる検索用インデックスの部分集合を、インデックス保持部102に保存する。
以降、検索処理部103は、インデックス保持部102が保持する部分集合を用いて検索処理を行うことができるようになる。
次に、検索処理部103が、インデックス保持部102が保持する部分集合を用いて検索処理を行う動作について説明する。図5は、検索装置100の検索処理の動作を示すフローチャートである。以下の説明では、インデックス保持部102が、図3に示すように、「法律」の部分集合を保持している場合を例に説明する。
まず、検索装置100に対して、ユーザが検索キーワードの入力を行う(S201)。例えば、「Patent」というキーワードを入力したとする。なお、検索キーワードの入力は、ユーザによる入力によるものに限られず、予め定められたプログラムに基づいて自動的に入力されてもよい。
次に、検索処理部103は、インデックス保持部102が保持する検索用インデックスの部分集合の中から、検索用キーワードと合致するキーを含む検索用インデックスを探し、当該検索用インデックスのコンテンツIDを検索結果とし取得する(S202)。図3の例では、特許に対応付けられたコンテンツIDは、ID101とID102である。したがって、検索結果は、ID101とID102となる。
尚、更に検索処理部103は、検索処理後に、検索結果であるID101とID102を用いて、検索キーワードに対応するコンテンツも取得することができる。コンテンツを取得する処理も以降で説明する。
検索処理部103は、サーバ200のコンテンツ保持部20にネットワークを介してアクセスして、検索結果を用いてコンテンツを取得する(S203)。尚、サーバ200は、検索装置100からの要求が、検索キーワードの部分集合の取得要求なのか、コンテンツ情報の取得要求なのかを、例えば、通信部202が検知するものとする。図6(a)は、コンテンツ保持部203が保持するコンテンツ情報を示す図である。コンテンツ情報は、コンテンツIDとコンテンツとを対応付けた情報である。検索処理部103は、検索結果がID101及びID102である場合、コンテンツとして、「A guide of patent law」及び「What is a patent?」といったコンテンツを取得できる。
検索処理部103は、コンテンツを取得すると、図示しない表示部を用いて、ユーザに対してコンテンツを表示しても良い。
本発明の実施形態によれば、ユーザ側端末100が、サーバ200が保持する検索用インデックス全体集合について分類された複数の部分集合のうち、いずれかの部分集合を取得し、当該部分集合のインデックスデータを用いて検索処理を行うことで、適切な検索結果を取得できる。
尚、以上の例では、部分集合として、法律、医学、数学のような単位で説明したが、これに限られない。部分集合は、例えば、全商品集合に対して特定カテゴリに該当する商品集合であったり、全店舗に対して特定エリアに位置する店舗集合であったりしてもよい。
また、本実施形態では、サーバ200がインデックス保持部201を備え、あらかじめ検索用インデックスを部分集合ごとに分けて保持している例を説明したが、必ずしも検索用インデックスを部分集合に分けて保持している必要はない。図7にサーバ200の変形例であるサーバ200Aを示す。サーバ200Aは、インデックス保持部205及び部分集合生成部204を備える。インデックス保持部205は、インデックスデータを部分集合に分類せずに保持している。部分集合生成部204は、検索装置100の取得部101から部分集合の取得要求があった場合に、インデックス保持部205のインデックスデータからインデックスデータの部分集合を生成し、提供することができる。サーバ200は、すなわち、インデックスデータの部分集合を提供可能な状態にあれば良い。
また、本実施形態では、検索用インデックスは、単語または文節等の部分文字列を、その部分文字列が出現するコンテンツを特定するコンテンツIDに対応付けるデータ構造を例に説明したが、これに限られない。例えば、検索用インデックスは、数値を、当該数値と関連するコンテンツを特定するコンテンツIDに対応付けるデータ構造であってもよい。また、所定の数値範囲を、当該数値範囲の数値と関連するコンテンツを特定するコンテンツIDに対応付けるデータ構造であっても良い。また、座標を、当該座標に関連するコンテンツを特定するコンテンツIDに対応付けるデータ構造であってもよい。また、座標の所定範囲を、当該所定範囲の座標と関連するコンテンツを特定するコンテンツIDに対応付けるデータ構造であってもよい。また、検索用インデックスは、グラフ構造データにおいて、ノードを、当該ノードと接続関係にあるノードに対応するコンテンツを特定するコンテンツIDに対応付けるデータ構造であってもよい。
また、本実施形態では、検索装置100が、コンテンツの取得先がサーバ200ひとつである例を説明した。しかしながら、検索装置100は、コンテンツIDに応じて、異なるサーバからコンテンツを取得してもよい。
なお、この検索装置100は、例えば、汎用のコンピュータ装置を基本ハードウェアとして用いることでも実現することが可能である。すなわち、取得部101、インデックス保持部102、検索処理部103および部分集合指定部104は、上記のコンピュータ装置に搭載されたプロセッサにプログラムを実行させることにより実現することができる。このとき、検索装置100は、上記のプログラムをコンピュータ装置にあらかじめインストールすることで実現してもよいし、CD−ROMなどの記憶媒体に記憶して、あるいはネットワークを介して上記のプログラムを配布して、このプログラムをコンピュータ装置に適宜インストールすることで実現してもよい。また、インデックス保持部102は、上記のコンピュータ装置に内蔵あるいは外付けされたメモリ、ハードディスクもしくはCD−R、CD−RW、DVD−RAM、DVD−Rなどの記憶媒体などを適宜利用して実現することができる。
<第2の実施形態>
第2の実施形態にかかる検索装置2100は、第1の実施形態にかかる検索装置100と異なり、コンテンツの部分集合も取得する。
図8に、第2の実施形態にかかる通信システムのブロック図を示す。
図8に示すように、第2の実施形態に係る検索装置2100は、第1の実施形態に係る検索装置100と異なり、更に、出力部2105とコンテンツ保持部2106とを備える。
出力部2105は、ディスプレイ装置等であり、ユーザにコンテンツを表示する。尚、出力部2105は、ディスプレイ装置自体でなくても良く、例えば、ディスプレイ装置にコンテンツを出力する処理部であってもよい。
また、第2の実施形態に係る取得部101は、第1の実施形態に関わる取得部101の機能に加えて更に、サーバ2200からコンテンツ情報の部分集合を取得する。
コンテンツ保持部2106は、インデックス保持部102が保持する検索用インデックスの部分集合に対応するコンテンツ情報の部分集合を保持する。ここで、コンテンツ情報とは、例えば、コンテンツIDとWebページなどのコンテンツとの組み合わせからなる情報である。コンテンツ情報は、さらにコンテンツ情報の有効期限情報又はコンテンツ情報の提供元情報を含んでいても良い。
図9及び図10を用いて、コンテンツ情報の部分集合の説明をする。図9は、サーバ2200のコンテンツ保持部2203が記憶する情報の例を示す図である。図10は、検索装置2100のコンテンツ保持部2106が保持する、取得部101によりサーバ2200から取得したコンテンツの部分集合の例を示す図である。
図9に示すように、サーバ2200は、「法律」、「医学」という単位でコンテンツ情報の部分集合を保持する。図10は、検索装置2100が、サーバ2200から「法律」のコンテンツ情報の部分集合を取得した例を示す図である。
以下では、検索装置2100の動作を説明する。
図11は、検索装置2100が、検索用インデックスの部分集合に対応するコンテンツデータの部分集合を取得する処理を示すフローチャートである。
S101〜S103で、検索装置2100は、検索用インデックスの部分集合を取得する。例えば、「法律」に関する部分集合を取得したものとする。取得する方法は、第1の実施形態と同様なので、説明を省略する。
次に、取得部101は、検索用インデックスの部分集合に対応するコンテンツ情報の部分集合を取得する(S304)。取得部101は、「法律」に関するコンテンツ情報の部分集合を取得する。次に、コンテンツ保持部2106が、取得したコンテンツ情報の部分集合を保持する(S305)。
次に、取得したコンテンツ情報を用いた検索装置2100の検索処理及びコンテンツの取得処理を説明する。
図12は、検索装置2100の検索処理及びコンテンツ取得処理を示すフローチャートである。
S201及びS202で、検索装置2100は、検索処理を行い、検索結果としてコンテンツIDを取得する。例えば、検索キーワードを「Patent」として、検索結果として、ID101及び102を取得したとする(図3参照)。検索処理の方法は、第1の実施形態と同様なので、説明を省略する。
次に、検索装置2100は、検索処理の検索結果を用いて、コンテンツ保持部2106のコンテンツ情報を用いて、コンテンツを取得する(S403)。具体的には、ID101に対応するコンテンツである「A guide of patent law」と、ID102に対応するコンテンツである「What is a patent?」とを取得する(図10を参照)。
次に、出力部2105は、取得した2つのコンテンツをユーザに表示する。表示の形態は、例えば、コンテンツの概要を2つのコンテンツ同時に表示する方法がある。ユーザの指示等に応じて、指定されたコンテンツの内容全てを表示しても良い。
検索装置2100によれば、検索用インデックスに加えて、更にコンテンツも保持するため、検索処理及びコンテンツ表示一連の処理を検索装置2100内で処理することができる。その結果、検索キーワードの入力からコンテンツの表示までの処理速度を向上できる。さらには、検索キーワードの入力からコンテンツの表示までの処理において、ネットワーク接続を不要とすることもできる。また、コンテンツ情報に関しても、部分集合で取得することができるため、サーバ2200が保持するコンテンツの全体集合のデータ量が、検索装置2100の取得性能を超えている場合であっても、検索装置2100のコンテンツ表示処理を適切に行うことができる。
なお、本実施例では、サーバ2200が、検索用インデックスの部分集合に対応するコンテンツ情報の部分集合すべてを保持する例を説明した。しかしながら、コンテンツ情報の部分集合は、コンテンツ情報毎に、複数のサーバが別々に保持している場合もある、このような場合、検索装置2100は、検索用インデックスの部分集合に対応するコンテンツ情報の部分集合を取得する際、たとえば、検索用インデックスのコンテンツIDを用いて、複数のサーバ各々からコンテンツ情報を取得し、コンテンツ情報の部分集合を取得する場合もある。
<第3の実施形態>
第3の実施形態にかかる検索装置3100は、インデックス保持部102が保持する検索用インデックスの部分集合のメタデータを表示する。ユーザは、表示されたメタデータを見ることで、検索で利用できる検索用インデックスの部分集合を把握できる。
図13は、第3の実施形態に係る通信システムを示す図である。
第3の実施形態に係る検索装置3100は、第1の実施形態に係る検索装置100と異なり、出力部3105を更に備え、出力部3105が、検索用インデックスの部分集合のメタデータを表示する。
また、本実施形態の取得部101は、部分集合指定部104によって指定された検索用インデックスの部分集合をサーバ200から取得するとともに、検索用インデックスの部分集合に対応する部分集合メタデータをサーバ200から取得し、インデックス保持部102に保存する。例えば、部分集合メタデータは、例えば、部分集合に対するヒューマンリーダブルな名称情報である。例えば、部分集合が、「法律」にかかわる集合である場合、メタデータは、「法律」である。
ユーザは、出力部3105に表示される部分集合メタデータを用いた表示(例えば「法律検索」)を見ることで、どのような検索を行うことができるかを知ることができる。
<第4の実施形態>
第4の実施形態にかかる検索装置4100は、ユーザが入力する検索キーワードの表記ゆれ処理を、検索装置4100内部で処理可能である。
図14は、第4の実施形態に係る検索装置4100の構成を示すブロック図である。
第4の実施形態に係る検索装置4100は、第1の実施形態に係る検索装置100と異なり、
修正辞書保持部4107と、修正部4108とを更に備える。
図15(a)は、第4の実施形態にかかるサーバ4200の構成を示すブロック図である。第4の実施形態に係るサーバ4200は、第1の実施形態のサーバ200と異なり、修正辞書保持部4206を備える。
図15(b)は、修正辞書保持部4206が記憶する情報の1例を示す図である。修正辞書保持部4206は、修正ル−ルや修正辞書の部分集合を保持する。図15(b)には、修正辞書保持部4206が、修正辞書の部分集合として、検索用インデックスの部分集合に対応する部分集合を保持する例を示す。図15(b)の例では、「法律」と「医学」の修正辞書の部分集合を示してある。修正辞書は、例えば、修正前の語句(たとえば、Tokkyo(Japanese)、Batent、Patendなど)と修正後の語句(例えば、Patent)とで構成される。尚、修正ル−ルは、適用条件(例えば、対象が英単語である等)と修正方法(例えば、大文字を小文字に変換する、日本語のひらがなをローマ字変換するなど)とで構成される。
検索装置4100の取得部101は、サーバ4200から、修正ル−ルや修正辞書の部分集合を取得する。
検索装置4100の修正辞書保持部4107は、サーバ4200から取得した修正辞書の部分集合若しくは、修正ル−ルを保持する。図16に、修正辞書保持部4107が保持する修正辞書の部分集合の例を示す。図16の例では、修正辞書の部分集合の例として、「法律」に関する修正辞書を記憶している。
修正部4108は、修正辞書保持部4107が保持する修正ルールや修正辞書を用いて検索キーワードを修正する。修正部4108は、ユーザ入力などから取得した検索キーワードについて、修正を行う。例えば、検索キーワードが、Batentと入力された場合、修正部108は、「Batent」を「Patent」に修正する。
また、本実施形態の検索処理部103は、修正部4108が修正した修正後の検索キーワードを用いて、インデックス保持部102が保持する検索用インデックスの部分集合を用いて検索を行う。例えば、インデックス保持部102が、図3の検索用インデックスの部分集合を記憶している場合、キーとして、「Patent」が存在するため、修正後の検索キーワード「Patent」を用いて検索処理を行うことができる。
修正部108が、「Batent」を「Patent」と修正したため、検索処理部103は、インデックス保持部102のデータを用いて検索処理を行うことができた。
以上のように、本実施形態の検索装置4100によれば、修正部4108が検索キーワードを修正することで、ユーザに対して検索結果を返す確率を上げることができ、ユーザの便宜を高めることができる。
また、修正辞書については、検索用インデックスの部分集合に対応する、辞書データの部分集合を取得できるため、サーバ4200が保持する辞書データの全体集合が、検索装置4100の保持可能なデータ量を上回っている場合でも、部分集合を取得することで、適切な表記ゆれ修正処理を実現できる。
<第5の実施形態>
第5の実施形態にかかる検索装置5100は、検索装置5100の検索処理の検索結果が不十分である場合に、サーバ200にアクセスして検索処理を行い、検索装置5100の検索処理をサーバ200で補うことができる装置である。
図17は、第5の実施形態に係る検索装置5100の構成を示すブロック図である。
第5の実施形態に係る検索装置5100は、第1の実施形態に係る検索装置100と異なり、検索結果判定部5109を備える。
検索結果判定部5109は、検索処理部103の検索結果が十分な結果であるか不十分な結果であるかを判定する。検索結果判定部5109は、例えば、検索処理部103が検索処理をした検索結果であるコンテンツIDが0件である場合、検索結果が不十分であると判定し、それ以外の場合は十分と判定する。尚、検索結果が十分であるか不十分であるかの検索結果の件数は0件を基準としなくても良い。例えば、検索結果の件数が所定の閾値より大きいか、閾値未満かで、判定しても良い。尚、検索結果が不十分である場合として、いくつかの場合が想定できる。第1に、取得部101が取得した、検索用インデックスの部分集合が、検索装置5100が保持可能なデータ量等との関係で、部分集合全てのデータを取得できなかった場合である。例えば、検索用インデックスの部分集合のうち、文字列の頭文字がA〜Fのデータまでは取得し、GからZまでは取得できなかった場合である。この場合、例えば、検索キーワードとして、GからZまでの用語を入力した場合、当該キーワードが検索用インデックスの部分集合の文字列に含まれる用語であっても、検索結果が0件となる。第2に、ユーザが入力した検索キーワードが、インデックス保持部102が保持する検索用インデックスの部分集合の文字列に含まれない場合である。例えば、部分集合が「法律」に関する部分集合であり、入力した検索キーワードが「食べ物」に関する用語である場合である。
検索結果判定部5109が、検索結果が不十分と判定した場合、取得部101がサーバ200にアクセスすることで、サーバ200で検索処理を行うことができる。サーバ200で検索処理を行った場合、取得部101は、サーバ200の検索処理の検索結果を取得する。
本実施形態の検索装置5100によれば、検索結果判定部5109が検索結果を不十分であると判定した場合に、サーバ200で検索処理を補うことができる。その結果、より適切な検索処理を実現できる。
以上説明した少なくとも1つの実施形態の効果は、ユーザ側端末が、サーバが保持する検索用インデックス全体のうち一部の検索インデックスを取得する場合でも、ユーザ側端末が当該一部の検索インデックスを用いて、適切な検索結果を得ることができる。
尚、第1〜第5の実施形態では、サーバと検索装置がネットワークを介して接続される場合を例に説明した。しかしながら、サーバと検索装置は、必ずしも、ネットワークを介して接続される必要はない。サーバと検索装置は、通信可能であれば良い。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
100,2100,3100,4100,5100・・・検索装置、101・・・取得部、102・・・インデックス保持部、103・・・検索処理部、104・・・部分集合指定部、200、200A,2200,4200・・・サーバ、201・・インデックス保持部、202・・・通信部、203,2203・・・コンテンツ保持部、204・・・部分集合生成部、205・・・インデックス保持部、300・・・ネットワーク、2105,3105・・・出力部、2106・・・コンテンツ保持部、4107,4206・・・修正辞書保持部、4108・・・修正部、5109・・・検索結果判定部。

Claims (12)

  1. 検索用インデックスの全体集合について、複数の部分集合に分けて提供可能なサーバと通信可能な検索装置であって、
    前記複数の部分集合の中から特定の部分集合を指定する指定部と、
    前記指定部が指定する部分集合を、前記サーバから取得する取得部と、
    前記取得部が取得した部分集合を保持する保持部と、
    前記保持部が保持する部分集合の検索用インデックスを用いて検索処理を行う検索処理部と、
    を備える検索装置。
  2. 前記指定部は、自端末の状態に関する情報である端末情報に基づいて前記特定の部分集合を指定する
    ことを特徴とする請求項1に記載の検索装置。
  3. 前記端末情報は、前記保持部の記憶領域の空き容量、又は自端末の処理能力であることを特徴とする請求項2記載の検索装置。
  4. 前記指定部は、自端末のユーザに関する情報であるユーザ情報に基づいて前記特定の部分集合を指定する
    ことを特徴とする請求項1又は3記載の検索装置。
  5. 前記ユーザ情報は、前記ユーザの行動履歴又は嗜好履歴である
    ことを特徴とする請求項4記載の検索装置。
  6. 前記検索用インデックスはメタデータを持ち、
    前記取得部は、更に前記検索用インデックデータのメタデータを前記サーバから取得し、
    前記指定部は、前記取得部が取得したメタデータに基づいて部分集合を指定する請求項1記又は5載の検索装置。
  7. 前記サーバは、前記部分集合のメタデータである部分集合メタデータを提供可能であり、
    前記取得部は、前記サーバから前記部分集合メタデータを取得し、
    前記指定部は、前記部分集合メタデータに基づいて前記特定の部分集合を指定する請求項1記載の検索装置。
  8. 前記サーバは、前記部分集合のメタデータである部分集合メタデータを提供可能であり、
    前記取得部は、前記サーバから、前記部分集合メタデータを取得し、
    前記保持部は、前記取得部が取得した前記部分集合メタデータを保持し、
    更に、前記保持部が保持する前記部分集合メタデータをユーザに提示する出力部を備える請求項1記載の検索装置。
  9. 前記取得部は、前記保持部が保持する特定の部分集合を構成する検索用インデックスを用いた検索処理により取得されるコンテンツの集合を、前記検索処理以前に前記サーバから取得する
    ことを特徴とする請求項1に記載の検索装置。
  10. 前記取得部は、前記保持部が保持する特定の部分集合を構成する検索用インデックスを構成する文字列について、表記揺れ修正を行うためのルール又は辞書を取得し、
    前記ルール又は前記辞書を保持する辞書保持部と、
    ユーザが入力した検索キーワードを、前記辞書保持部が保持する前記ルール又は前記辞書を用いて表記揺れ修正を行い、前記検索キーワードを前記文字列に修正する修正部と、
    を備えることを特徴とする請求項1に記載の検索装置。
  11. 前記検索処理部の検索結果が十分であるか不十分であるかを判定する、検索結果判定部を更に備え、
    前記取得部は、前記検索結果判定部が前記検索結果を不十分と判定した場合、前記サーバで処理した検索結果を取得する
    ことを特徴とする請求項1に記載の検索装置。
  12. 検索用インデックスの全体集合について、複数の部分集合に分けて提供可能なサーバと通信可能な端末を制御するプログラムであって、
    前記複数の部分集合の中から特定の部分集合を指定する指定機能と、
    前記指定機能が指定する部分集合を、前記サーバから取得する取得機能と、
    前記取得機能が取得した部分集合を保持する保持機能と、
    前記保持機能が保持する部分集合の検索用インデックスを用いて検索処理を行う検索処理機能と、
    を備えるプログラム。
JP2012078366A 2012-03-29 2012-03-29 検索装置、及びプログラム Pending JP2013206441A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2012078366A JP2013206441A (ja) 2012-03-29 2012-03-29 検索装置、及びプログラム
US13/613,400 US20130262446A1 (en) 2012-03-29 2012-09-13 Search apparatus and computer readable medium
CN2012103422773A CN103365939A (zh) 2012-03-29 2012-09-14 检索装置及程序

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012078366A JP2013206441A (ja) 2012-03-29 2012-03-29 検索装置、及びプログラム

Publications (1)

Publication Number Publication Date
JP2013206441A true JP2013206441A (ja) 2013-10-07

Family

ID=49236441

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012078366A Pending JP2013206441A (ja) 2012-03-29 2012-03-29 検索装置、及びプログラム

Country Status (3)

Country Link
US (1) US20130262446A1 (ja)
JP (1) JP2013206441A (ja)
CN (1) CN103365939A (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0261768A (ja) * 1988-08-29 1990-03-01 Matsushita Electric Ind Co Ltd 電子辞書装置及び電子辞書検索方法
JP2005202714A (ja) * 2004-01-16 2005-07-28 Giken Shoji International Co Ltd 文書検索システム
JP2010537324A (ja) * 2007-08-20 2010-12-02 デンジャー,インコーポレーテッド ワイヤレス通信ネットワークを通じた検索インデックス断片の標的設定した配信

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040260680A1 (en) * 2003-06-19 2004-12-23 International Business Machines Corporation Personalized indexing and searching for information in a distributed data processing system
US20080243788A1 (en) * 2007-03-29 2008-10-02 Reztlaff James R Search of Multiple Content Sources on a User Device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0261768A (ja) * 1988-08-29 1990-03-01 Matsushita Electric Ind Co Ltd 電子辞書装置及び電子辞書検索方法
JP2005202714A (ja) * 2004-01-16 2005-07-28 Giken Shoji International Co Ltd 文書検索システム
JP2010537324A (ja) * 2007-08-20 2010-12-02 デンジャー,インコーポレーテッド ワイヤレス通信ネットワークを通じた検索インデックス断片の標的設定した配信

Also Published As

Publication number Publication date
CN103365939A (zh) 2013-10-23
US20130262446A1 (en) 2013-10-03

Similar Documents

Publication Publication Date Title
US10783200B2 (en) Systems and methods of de-duplicating similar news feed items
EP3345118B1 (en) Identifying query patterns and associated aggregate statistics among search queries
US20130339001A1 (en) Spelling candidate generation
US10242320B1 (en) Machine assisted learning of entities
US9727647B1 (en) Annotating articles
US20140358931A1 (en) Product Record Normalization System With Efficient And Scalable Methods For Discovering, Validating, And Using Schema Mappings
US20120278308A1 (en) Custom search query suggestion tools
US20190188647A1 (en) Multiple element job classification
US9317606B1 (en) Spell correcting long queries
US20170169027A1 (en) Determining a Display Order for Values in a Multi-Value Field of an Application Card
US9208442B2 (en) Ontology-based attribute extraction from product descriptions
US8001138B2 (en) Word relationship driven search
US9886497B2 (en) Indexing presentation slides
CN106202423A (zh) 一种文件排序方法和设备
CN110795617A (zh) 一种搜索词的纠错方法及相关装置
JP6194180B2 (ja) 文章マスク装置及び文章マスクプログラム
US10572592B2 (en) Method, device, and computer program for providing a definition or a translation of a word belonging to a sentence as a function of neighbouring words and of databases
JP6787755B2 (ja) 文書検索装置
JP2013206441A (ja) 検索装置、及びプログラム
US10866993B2 (en) Managing online help information in a data center
CN108268517B (zh) 数据库中标签的管理方法及系统
JP2022014966A (ja) 情報処理装置、ドメイン組織情報生産装置、情報処理方法、ドメイン組織情報生産方法、およびプログラム
JP2010256977A (ja) 情報検索装置およびプログラム
JP5494066B2 (ja) 検索装置、検索方法および検索プログラム
CN110297825B (zh) 数据处理方法、装置、计算机设备以及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140404

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140602

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20141205