[1.検索システムの全体構成]
以下、本発明に係る検索システムの実施形態の例を説明する。図1は、検索システム等の全体構成を示す図である。図1に示すように、検索システム1は、端末とネットワークNを介して接続される。ネットワークNは、インターネットなどのネットワークである。例えば、検索システム1は、ネットワークNを介して広告システム2、ユーザ端末30、施設端末40、及び事業主端末50の各々と接続される。なお、図1では、ユーザ端末30、施設端末40、及び事業主端末50の各々を1台ずつ示しているが、これらは複数台あってよい。
検索システム1は、検索を実行するシステムであり、例えば、検索サーバ10を含む。なお、検索システム1は、少なくとも1つのコンピュータを含めばよく、検索サーバ10以外のコンピュータを含んでもよい。
検索サーバ10は、サーバコンピュータである。検索サーバ10は、制御部11、記憶部12、及び通信部13を含む。制御部11は、少なくとも1つのプロセッサを含む。制御部11は、記憶部12に記憶されたプログラムやデータに従って処理を実行する。記憶部12は、主記憶部及び補助記憶部を含む。例えば、主記憶部はRAMなどの揮発性メモリであり、補助記憶部は、ROM、EEPROM、フラッシュメモリ、又はハードディスクなどの不揮発性メモリである。通信部13は、有線通信又は無線通信用の通信インタフェースであり、ネットワークNを介してデータ通信を行う。
広告システム2は、広告を管理するシステムであり、例えば、広告サーバ20を含む。広告は、商品の購入又はサービスの利用に誘導する情報(コンバージョンに誘導する情報)である。別の言い方をすれば、広告は、商品又はサービスの宣伝を目的とした情報である。広告は、画像によって電子的に提示される。いわゆるクーポンも広告の一例である。
なお、広告システム2は、少なくとも1つのコンピュータを含めばよく、広告サーバ20以外のコンピュータを含んでもよい。また、検索システム1の管理主体と、広告システム2の管理主体と、は互いに同じであってもよいし、異なっていてもよい。また、検索システム1と広告システム2に分かれていなくてもよく、これらのシステムの機能が1つのシステムによって実現されてもよい。
広告サーバ20は、サーバコンピュータである。広告サーバ20は、制御部21、記憶部22、及び通信部23を含む。制御部21、記憶部22、及び通信部23の物理的構成は、それぞれ制御部11、記憶部12、及び通信部13と同様であってよい。
ユーザ端末30は、ユーザが操作するコンピュータである。ユーザは、検索システム1が提供するサービスの利用者であり、エンドユーザということもできる。例えば、ユーザ端末30は、携帯電話機(スマートフォンを含む)、携帯情報端末(タブレット型コンピュータを含む)、又は、パーソナルコンピュータ等である。本実施形態では、ユーザ端末30は、制御部31、記憶部32、通信部33、操作部34、及び表示部35を含む。制御部31、記憶部32、及び通信部33の物理的構成は、それぞれ制御部11、記憶部12、及び通信部13と同様であってよい。
操作部34は、任意の操作を受け付ける入力デバイスであり、例えば、タッチパネルやマウス等のポインティングデバイス、キーボード、又はボタン等である。操作部34は、ユーザによる操作内容を制御部31に伝達する。表示部35は、例えば、液晶表示部又は有機EL表示部等である。表示部35は、制御部31の指示に従って画像を表示する。
施設端末40は、施設の担当者が操作するコンピュータである。施設は、ユーザが予約可能な施設である。検索システム1は、ユーザによる施設の予約を受け付ける。施設は、任意の種類の施設であってよく、例えば、宿泊施設、公共施設、観光施設、又は運動施設等である。
例えば、施設端末40は、携帯電話機(スマートフォンを含む)、携帯情報端末(タブレット型コンピュータを含む)、又は、パーソナルコンピュータ等である。本実施形態では、施設端末40は、制御部41、記憶部42、通信部43、操作部44、及び表示部45を含む。制御部41、記憶部42、通信部43、操作部44、及び表示部45の物理的構成は、それぞれ制御部11、記憶部12、通信部13、操作部34、及び表示部35と同様であってよい。
事業主端末50は、事業主が操作するコンピュータである。事業主は、ユーザに対するサービスの提供者である。別の言い方をすれば、事業主は、施設から広告の掲載依頼を受け付ける者である。
例えば、事業主端末50は、携帯電話機(スマートフォンを含む)、携帯情報端末(タブレット型コンピュータを含む)、又は、パーソナルコンピュータ等である。本実施形態では、事業主端末50は、制御部51、記憶部52、通信部53、操作部54、及び表示部55を含む。制御部51、記憶部52、通信部53、操作部54、及び表示部55の物理的構成は、それぞれ制御部11、記憶部12、通信部13、操作部34、及び表示部35と同様であってよい。
なお、記憶部12,22,32,42,52に記憶されるものとして説明するプログラム及びデータは、ネットワークNを介して供給されるようにしてもよい。また、各コンピュータのハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部(例えば、光ディスクドライブやメモリカードスロット)や外部機器とデータの入出力をするための入出力部(例えば、USBポート)が含まれていてもよい。例えば、情報記憶媒体に記憶されたプログラムやデータが読取部や入出力部を介して、各コンピュータに供給されるようにしてもよい。
[2.検索システムの概要]
本実施形態では、検索システム1を旅行予約サービスに適用する場合を一例として説明する。旅行予約サービスは、ユーザの旅行予約を支援するサービスであり、例えば、宿泊施設、航空券、レンタカー、及びバス等の予約が可能である。なお、検索システム1は、旅行予約以外の任意の場面に適用可能であり、例えば、商品の検索等の種々の場面に適用可能である。
例えば、ユーザがユーザ端末30を操作して、検索サーバ10にアクセスすると、旅行予約サービスのトップ画面が表示部35に表示される。なお、以降説明する画面は、ユーザ端末30に記憶された旅行予約のアプリケーションの画面として表示されてもよいし、ウェブブラウザの画面として示されてもよい。また、本実施形態では、スマートフォン用の画面を例に挙げるが、デスクトップ用又はタブレット用といった他のレイアウトの画面が表示されてもよい。
図2は、トップ画面の一例を示す図である。図2に示すように、例えば、トップ画面G1には、検索条件を入力するための入力フォームF10〜F14と、検索を実行するためのボタンB15と、が表示される。本実施形態では、ユーザがトップ画面G1から宿泊施設を予約する場合を例に挙げる。なお、検索媒体は、旅行予約のウェブサイトに限られず、検索ツール等の任意の媒体であってよい。
入力フォームF10には、地域名や施設名等の任意の文字列がキーワードとして入力される。入力フォームF11には、予め用意された宿泊地域リストの中から任意の地域が入力される。入力フォームF12には、チェックインの日付とチェックアウトの日付が入力される。入力フォームF13には、予約する部屋数と利用人数が入力される。入力フォームF14には、宿泊料金の下限値と上限値の少なくとも一方が入力される。
なお、ユーザは、入力フォームF10〜F14の全てに対して検索条件を入力する必要はなく、少なくとも1つに対して何らかの検索条件を入力すればよい。例えば、ユーザが、入力フォームF10〜F14の少なくとも1つに検索条件を入力してボタンB15を選択すると、ユーザ端末30は、検索サーバ10に検索条件を送信する。
図3は、検索条件が送信された後の処理の概要を示す図である。図3に示すように、検索サーバ10は、検索条件を受信すると、検索条件を満たす宿泊施設を検索して検索結果Aを取得する。図3の例では、検索結果Aに含まれる宿泊施設を一意に識別する施設IDを「h00001」等の文字列で示している。
なお、本実施形態では、検索条件を受信した検索サーバ10が自ら検索を実行する場合を説明するが、検索サーバ10は、外部の検索エンジンに検索を要求してもよい。また、検索エンジンは、人気順、価格が安い順、又は評価が高い順といった条件で検索を実行し、検索結果Aを取得してもよい。
検索サーバ10は、検索結果Aを取得すると、検索結果Aに含まれる宿泊施設ごとに、検索条件が示す日付における在庫(空室)の有無を判定し、当該日付に在庫がある宿泊施設を判定結果Bとして取得する。図3の例では、施設IDが「h00004」と「h00005」の宿泊施設については、検索結果を満たすが、検索条件が示す日付に在庫がなかったため、判定結果Bからは除外される。
なお、宿泊施設に予約開始日が設定されている場合、予約開始日より前であれば、検索条件が示す日付に在庫があったとしても在庫なしと判定されるようにしてもよい。また、宿泊施設が保有する部屋の収容人数や日時といった条件に応じて在庫の有無が判定されてもよい。また、検索条件に子どもの利用が設定されている場合、在庫判定の際に子どもの利用可能性が判定されてもよい。
本実施形態では、検索結果だけではなく、検索条件に応じた広告もユーザ端末30に表示される。ユーザ端末30に表示させる広告は、上限数が定められており、本実施形態では、2つとする。宿泊施設は、広告を出すか否かを自由に決めることができ、入札額等の条件も決めることができる。
例えば、検索サーバ10は、広告サーバ20に検索条件を送信し、広告リストCを要求する。広告サーバ20は、検索条件を受信すると、検索条件を満たす宿泊施設を検索して広告リストCを取得する。本実施形態では、広告サーバ20は、宿泊施設の在庫については管理しておらず、広告リストには、在庫がない宿泊施設が含まれることもある。図3の例であれば、施設IDが「h00009」の宿泊施設については、広告の掲載を希望しており、ユーザの検索条件も満たすが、検索条件が示す日付に在庫がない(判定結果Bに含まれていない)。このため、広告サーバ20は、広告リストCに余裕を持たせるために、上限数よりも多くの広告を広告リストCに含める。
広告リストCには、検索条件が示す日付に在庫がない宿泊施設の広告も含まれているので、検索サーバ10は、判定結果Bと広告リストCを比較して、検索条件が示す日付に在庫がある宿泊施設の広告を特定する。図3の例では、広告リストCにおける施設IDが「h00009」の宿泊施設は、検索条件が示す日付に在庫がない(判定結果Bに存在しない)ので、この宿泊施設は、広告の対象から除外される。更に、広告の上限数が定められているので、検索サーバ10は、上限数以下の広告を取得する。図4の例であれば、施設IDが「h00001」と「h00002」の2つの宿泊施設の広告Dが取得される。
上記のように、本実施形態では、検索結果Aを取得する場合と、広告Dを取得する場合と、の各々で在庫の有無に関する情報が必要になる。この点、在庫判定を別々に実行すると、在庫判定を二重に実行することになり、検索サーバ10の処理負荷が増大する。そこで、検索サーバ10は、検索結果を取得したときの在庫の判定結果Bを保持し、判定結果Bと広告リストCを比較することによって、在庫判定を1回で済ませている。検索サーバ10は、広告Dを特定すると、検索結果画面をユーザ端末30に表示させる。
図4は、検索結果画面の一例を示す図である。図4に示すように、検索結果画面G2の表示領域A20には、ユーザが入力した検索条件が表示される。なお、図4の例では、検索条件として、チェックイン日とチェックアウト日、宿泊地域、大人の人数、及び子どもの人数が指定されており、これらの検索条件を満たし、かつ、検索条件が示す日付に在庫がある宿泊施設が検索される。
検索結果画面G2の表示領域A21には、上限数の数だけ広告Dの内容が表示され、表示領域A22には、判定結果Bの全部又は一部の内容が表示される。図4に示すように、広告は、ユーザの目に留まりやすいように、検索結果よりも優先的に表示され、例えば、検索結果よりも上に表示される。なお、図4では、各宿泊施設の名前と合計金額だけを示しているが、サムネイル画像や宿泊条件といった他の情報が表示されてもよい。
検索結果画面G2には、宿泊施設の予約画面に進むためのボタンB23が表示される。ユーザは、表示領域A21のボタンB23を選択して広告Dの宿泊施設を予約することもできるし、表示領域A22のボタンB23を選択して検索結果Aの宿泊施設を予約することもできる。何れの宿泊施設についても、検索条件が示す日付の在庫が確認されているので、ユーザは、どのボタンB23を選択しても、検索条件が示す日付に在庫がある宿泊施設の予約画面へと進むことができる。
以上のように、検索サーバ10は、検索結果における宿泊施設の在庫判定と、広告リストにおける宿泊施設の在庫判定と、を別々に実行するのではなく、在庫判定を1回で済ませることによって、処理負荷を軽減するようにしている。以降、この技術の詳細を説明する。
[3.検索システム等で実現される機能]
図5は、検索システム1等で実現される機能の一例を示す機能ブロック図である。本実施形態では、検索システム1、広告システム2、ユーザ端末30、施設端末40、及び事業主端末50の各々で実現される機能を説明する。
[3−1.検索システムで実現される機能]
図5に示すように、検索システム1では、データ記憶部100、検索部101、判定部102、保持部103、広告取得部104、及び表示制御部105が実現される。本実施形態では、これら各機能が検索サーバ10で実現される。
[データ記憶部]
データ記憶部100は、記憶部12を主として実現される。データ記憶部100は、検索や在庫判定に必要なデータを記憶する。ここでは、データ記憶部100が記憶するデータの一例として、施設データベースDB1、在庫データベースDB2、入札内容データベースDB3、及び広告設定データベースDB4を説明する。
図6は、施設データベースDB1のデータ格納例を示す図である。図6に示すように、施設データベースDB1は、宿泊施設に関する各種情報を格納するデータベースである。例えば、施設データベースDB1には、宿泊施設の施設ID、施設情報、及び部屋情報が格納される。
施設情報は、宿泊施設全体に関する情報であり、例えば、宿泊施設の名前、住所、連絡先、建物の画像、敷地内の施設、設備、及び価格帯などが格納される。部屋情報は、宿泊施設における個々の部屋に関する情報であり、例えば、部屋を一意に識別する部屋ID、部屋の名前、利用可能人数、部屋のタイプ、間取り、広さ、バス・トイレの有無、及び部屋の紹介文などが格納される。
各施設IDに関連付けられた施設情報と部屋情報は、検索時のインデックスとして用いられる。例えば、宿泊地が検索条件として入力された場合には、施設情報の住所がインデックスとなる。また例えば、利用人数が検索条件として入力された場合には、部屋情報の利用可能人数がインデックスとなる。各宿泊施設の担当者は、施設端末40を操作し、施設情報と部屋情報を登録することができる。
なお、施設データベースDB1に格納される情報は、上記の例に限られない。例えば、複数の属性の中で宿泊施設又は各部屋が属する属性が格納されていてもよい。属性は、宿泊施設が属するカテゴリであり、例えば、施設のタイプ、エリア、又は価格帯等である。他にも例えば、属性は、子どもの利用可否、ペットの利用可否、バリアフリー対応であるか否か、又は英語対応の可否であってもよい。また例えば、施設データベースDB1には、各部屋の価格又は宿泊施設の口コミといった情報が格納されていてもよい。これらの情報は、検索時のインデックスとして利用可能である。
図7は、在庫データベースDB2のデータ格納例を示す図である。図7に示すように、在庫データベースDB2は、各宿泊施設の在庫情報を格納するデータベースである。例えば、在庫データベースDB2には、施設ID、部屋ID、利用日、及び在庫情報が格納される。即ち、各宿泊施設の部屋ごとに、複数の利用日の各々の在庫情報が管理されている。
在庫情報は、在庫の有無を示す情報である。宿泊施設の場合、空きがあることは在庫があることに相当し、空きがないことは在庫がないことに相当する。在庫情報は、残りの在庫数を示す。宿泊施設の場合、残りの在庫数は、残室数である。在庫情報が閾値以上であることは、在庫があることを意味し、在庫情報が閾値未満であることは、在庫がないことを意味する。本実施形態では、この閾値を1とするが、2以上の閾値を設けておき、在庫が少なくなったときに実質的に在庫がないと判定されるようにしてもよい。なお、在庫情報は、任意の形式の情報であってよく、数値に限られない。例えば、在庫情報は、在庫があるか否かを示すフラグのような情報であってもよい。
各宿泊施設の在庫情報は、常に最新の状態に保たれており、リアルタイムで更新される。例えば、検索サーバ10は、宿泊施設の予約を受け付けると、当該宿泊施設の在庫情報を変更する。また例えば、宿泊施設が直接予約を受け付けた分については、施設の担当者が施設端末40を操作して検索サーバ10にアクセスし、在庫情報を変更する。また例えば、提携する他の旅行予約サービスが存在する場合には、検索サーバ10は、他の旅行予約サービスとの間で在庫情報の整合性を取る。なお、在庫情報を更新する手段は、これらに限られず、他の手段によって在庫情報が更新されるようにしてもよい。例えば、施設端末40は、外部管理システムを介して、一括で在庫情報を入力してもよい。
なお、図7の例では、宿泊施設の部屋ごとに在庫情報が存在する場合を説明したが、在庫情報は、宿泊施設全体の在庫を示してもよい。この場合、在庫情報は、宿泊施設が有する部屋全体の在庫の合計数となる。
図8は、入札内容データベースDB3のデータ格納例を示す図である。図8に示すように、入札内容データベースDB3は、宿泊施設によって登録された広告の入札内容を格納するデータベースである。例えば、入札内容データベースDB3には、施設IDと広告条件とが格納される。広告条件は、宿泊施設により登録された広告の条件であり、例えば、キーワード、地域名称、及び入札金額等の情報が格納される。広告条件は、広告リストに含める宿泊施設を検索する際のインデックスとなる。なお、入札金額は、広告が表示されたり選択されたりした場合に宿泊施設が事業主に支払う単価である。
図9は、広告設定データベースDB4のデータ格納例を示す図である。図9に示すように、広告設定データベースDB4は、事業者によって登録された広告の設定内容を格納するデータベースである。例えば、広告設定データベースDB4には、検索結果画面G2に表示させる広告の上限数、日程条件、及び入札条件等の情報が格納される。なお、日程条件は、ユーザが検索した時点、ユーザが検索時に指定した利用日、又はユーザが予約した日付の何れかを示す。
なお、データ記憶部100に記憶されるデータは、上記の例に限られない。例えば、データ記憶部100は、ユーザ端末30に表示させる画面のレイアウトデータ(ユーザインタフェースデータ)や画像データ等を記憶してもよい。また例えば、データ記憶部100は、複数のユーザの各々に関する情報を格納するユーザデータベースを記憶してもよい。例えば、ユーザデータベースには、氏名、住所、性別、年齢、職業、画面の閲覧履歴、及び宿泊施設の予約履歴といった情報が格納される。また例えば、データ記憶部100は、検索エンジンのプログラムを記憶してもよい。
[検索部]
検索部101は、制御部11を主として実現される。検索部101は、ユーザ端末30(ネットワークNを介して接続された端末の一例)から入力した検索条件に基づいて、検索を実行する。
検索条件は、検索時のクエリとなる情報である。検索条件は、任意の条件を入力可能であり、例えば、キーワード(文字列)、数値、属性、又はこれらの組み合わせによって表現される。検索条件は、AND条件が指定されてもよいし、OR条件が指定されてもよい。
例えば、検索条件は、複数項目のうちユーザ端末から入力した少なくとも1つの項目を含む。項目とは、検索条件の構成要素(検索条件に含まれる情報)の種類である。図2の入力フォームF11〜F14の例であれば、「宿泊地」、「日程」、「部屋数/人数」、「合計料金」といった4項目が用意されており、ユーザは、少なくとも1つの項目の条件を入力する。入力フォームF10に入力されるキーワードも検索条件の一例である。
本実施形態では、検索部101により検索される宿泊施設は、アイテムの一例である。このため、本実施形態で宿泊施設と記載した箇所は、アイテムと読み替えることができる。アイテムとは、検索対象となる情報(データ項目)であり、例えば、ユーザが予約するサービスであってもよいし、ユーザが購入する商品であってもよい。アイテムは、データアイテムと呼ばれることもあり、データベース内の個々のレコードということもできる。なお、宿泊施設内の個々の部屋がアイテムに相当してもよい。
検索部101は、ユーザ端末30が検索サーバ10に送信した検索条件に基づいて、検索を実行する。検索部101は、当該検索条件をクエリとし、施設データベースDB1に格納された各宿泊施設の施設情報及び部屋情報をインデックスとして、検索を実行する。
本実施形態では、ウェブページの検索等で利用される公知の検索エンジンによって検索が実行される場合を例に挙げる。例えば、検索部101は、検索エンジンに検索条件を入力し、検索エンジンから出力された検索結果を取得する。本実施形態では、検索エンジンがデータ記憶部100に記憶されているものとするが、外部コンピュータの検索エンジンを利用してもよい。検索エンジンは、施設データベースDB1にアクセス可能であり、宿泊施設ごとに、検索条件との一致度を示すスコアを計算する。検索エンジンは、各宿泊施設のスコアに基づいて、検索結果を出力する。
検索結果は、検索条件に応じた宿泊施設のリストである。検索条件に応じた宿泊施設は、検索条件を満たす宿泊施設、検索条件と合致(一致)する宿泊施設、又は検索でヒットした宿泊施設ということもできる。検索結果には、検索条件に応じた少なくとも1つの宿泊施設が含まれており、その件数は任意であってよい。検索結果に含まれる宿泊施設の件数は、上限数が定められていてもよいし、特に上限数が定められていなくてもよい。検索条件に応じた宿泊施設が存在しなければ、検索結果が0件になることもある。
例えば、検索エンジンは、スコアが閾値以上の全ての宿泊施設を検索結果に含める。また例えば、検索エンジンは、スコアが高い順に所定数の宿泊施設を選択して検索結果に含める。検索部101は、検索エンジンから出力された検索結果を取得する。本実施形態では、検索エンジンは、在庫の有無は判定しないので、検索エンジンから出力された検索結果には、検索条件が示す日付に在庫がない宿泊施設が含まれることもある。なお、検索エンジンは、検索条件が示す日付の在庫の有無を判定してもよい。即ち、検索エンジンは、後述する判定部102に相当する機能を備えていてもよい。
なお、検索自体は、公知の検索アルゴリズムを利用可能であり、検索エンジンを利用した方法に限られない。例えば、検索部101は、インターネット等の検索で利用される検索エンジンではなく、独自の検索アルゴリズムを利用して検索を実行してもよい。この検索アルゴリズムは、任意の内容であってよく、例えば、キーワードとの完全一致又は部分一致を利用してもよいし、検索条件に含まれる数値と同じ又は似た値が検索されてもよい。
[判定部]
判定部102は、制御部11を主として実現される。判定部102は、検索部101の検索結果に含まれる複数の宿泊施設の各々の在庫情報に基づいて、各宿泊施設の在庫の有無を判定する。各宿泊施設の在庫情報は、在庫データベースDB2に格納されているので、判定部102は、在庫データベースDB2に基づいて、検索結果に含まれる各宿泊施設の在庫の有無を判定する。
本実施形態では、判定部102が、検索結果に含まれる全ての宿泊施設について、検索条件が示す日付における在庫の有無を判定する場合を説明するが、判定部102は、一部の宿泊施設についてのみ、検索条件が示す日付における在庫の有無を判定してもよい。例えば、判定部102は、検索条件が示す日付における宿泊施設の在庫情報が閾値以上であるか否かを判定する。判定部102は、当該在庫情報が閾値以上であれば在庫があると判定し、当該在庫情報が閾値未満であれば在庫が無いと判定する。
[保持部]
保持部103は、制御部11を主として実現される。保持部103は、判定部102の判定結果を保持する。判定部102の判定結果とは、検索条件が示す日付における各宿泊施設の在庫の有無を識別可能な情報である。保持とは、データ記憶部100又は他の情報記憶媒体に情報を記録することである。別の言い方をすれば、保持は、判定部102の判定結果をすぐに消去せず、事後的に参照できるように残すことである。保持された判定結果は、任意のタイミングで参照可能であり、本実施形態では、広告取得部104によって参照される。
図3で説明したように、本実施形態では、検索結果には、検索条件に応じた宿泊施設の施設IDが含まれる。なお、検索結果には、施設IDだけではなく、部屋IDも格納されるようにしてもよい。保持部103は、検索結果のうち、検索条件が示す日付に在庫がないと判定された宿泊施設の施設IDを消去し、検索条件が示す日付に在庫があると判定された宿泊施設の施設IDを残す。施設IDが残った宿泊施設は、検索条件が示す日付に在庫があることを意味する。保持部103は、検索結果のうち、検索条件が示す日付に在庫があると判定された宿泊施設の施設IDについてのみデータ記憶部100に記録することによって、判定結果を保持する。
なお、判定部102の判定結果を保持する方法は、上記の例に限られない。例えば、保持部103は、検索結果に含まれる各宿泊施設の施設IDに関連付けて、検索条件が示す日付における在庫の有無を示す在庫フラグを保持してもよい。他にも例えば、保持部103は、検索結果に含まれる各宿泊施設の在庫情報を、そのまま判定結果として保持してもよい。保持された判定結果は、任意のタイミングで消去され、例えば、検索結果画面G2が表示された場合に消去される。
[広告取得部]
広告取得部104は、制御部11を主として実現される。広告取得部104は、判定部102の判定結果に基づいて、検索条件を満たし、かつ、在庫がある宿泊施設の広告を少なくとも1つ取得する。先述したように、本実施形態では、日付ごとに在庫情報が管理されているので、在庫がある宿泊施設は、検索条件が示す日付に在庫がある宿泊施設を意味する。即ち、他の日付に在庫があったとしても、検索条件が示す日付に在庫がない宿泊施設については、在庫がある宿泊施設に該当しない。
広告は、検索条件の全てを満たす宿泊施設の広告であってもよいし、検索条件の一部だけを満たす宿泊施設の広告であってもよい。別の言い方をすれば、検索結果の取得で利用される検索条件と、広告の検索で利用される検索条件と、は同じであってもよいし異なっていてもよい。例えば、検索条件には含まれないユーザ属性等の情報が広告の検索で利用されてもよい。
広告を取得するとは、広告を表示させるために必要な情報を取得することである。別の言い方をすれば、広告を取得するとは、表示すべき広告を特定することである。例えば、広告が示す宿泊施設の施設IDを取得すること、広告の画像データを取得すること、広告が示す宿泊施設のページへのリンクを取得すること、及び、宿泊施設の施設情報又は部屋情報を取得することは、広告を取得することに相当する。
広告取得部104は、判定部102の判定結果を流用することによって、検索条件を満たす宿泊施設の広告のうち、検索条件が示す日付に在庫がある宿泊施設の広告を少なくとも1つ特定する。例えば、広告取得部104は、検索条件に応じた広告リストを取得し、保持部103により保持された判定結果と広告リストとに基づいて、検索条件が示す日付に在庫があるアイテムの広告を少なくとも1つ取得する。
図3で説明したように、広告リストは、検索条件を満たす宿泊施設の広告の一覧である。先述したように、広告リストの生成時点では、在庫判定は実行されていないので、広告リストには、検索条件が示す日付に在庫がない宿泊施設の広告が含まれることもある。例えば、広告リストには、施設IDだけではなく、部屋ID、広告が示す宿泊施設のページへのリンク、及び広告の画像データ等が含まれていてもよい。
広告取得部104は、保持部103により保持された判定結果と広告リストとを比較し、広告を取得する。例えば、広告取得部104は、保持された判定結果に含まれる宿泊施設が広告リストに含まれるか否かを判定し、広告リストに含まれる宿泊施設の広告を取得する。また例えば、広告取得部104は、保持された判定結果に基づいて、広告リストの中から、検索条件が示す日付に在庫がある宿泊施設の広告を取得する。
本実施形態では、広告リストは、外部の広告システム2によって生成されるので、広告取得部104は、外部の広告システム2に対し、広告リストを要求し、広告システム2により生成された広告リストを取得する。広告取得部104は、広告システム2から取得した広告リストの中から、検索条件が示す日付に在庫がある宿泊施設の広告を取得する。なお、広告取得部104は、1つの広告だけを取得してもよいし、複数の広告を取得してもよい。検索条件を満たす宿泊施設の広告が存在しない場合、又は、検索条件が示す日付に在庫がある宿泊施設の広告が存在しない場合には、広告が取得されないこともある。
本実施形態では、検索結果画面G2には、予め表示可能な広告の上限数が定められており、広告取得部104は、上限数よりも多い広告を含む広告リストを取得し、広告リストに基づいて上限数以下の広告を取得する。上限数は、固定値であってもよいし可変値であってもよい。また、上限数は、全ユーザで共通であってもよいし、ユーザに応じて定められていてもよい。広告取得部104は、上限数いっぱいの広告を取得しなければならないわけではなく、1つ以上上限数以下の広告を取得すればよい。
[表示制御部]
表示制御部105は、制御部11を主として実現される。表示制御部105は、検索結果のうち在庫がある少なくとも1つの宿泊施設と、少なくとも1つの広告と、を検索結果画面G2に表示させる。本実施形態では、表示制御部105が検索サーバ10によって実現されるので、表示制御部105は、判定部102の判定結果と広告取得部104の取得結果とに基づいて、検索結果画面G2の表示データを生成し、ユーザ端末30に送信する。
表示データは、検索結果画面G2を表示させるためのデータであればよく、検索結果画面G2全体を示すデータであってもよいし、検索結果画面G2の一部を示すデータであってもよい。例えば、ウェブブラウザで検索結果画面G2を表示させる場合には、表示データは、HTMLデータである。また例えば、ユーザ端末30のプログラム(例えば、旅行予約アプリ)を利用して各画面を表示させる場合には、表示データは、画面のフレームにはめ込む画像やテキスト情報である。
[3−2.広告システムで実現される機能]
図5に示すように、広告システム2では、広告リスト生成部200が実現される。本実施形態では、広告リスト生成部200が広告サーバ20で実現される。なお、広告サーバ20は、施設データベースDB1、入札内容データベースDB3、及び広告設定データベースDB4と同等の内容のデータベースを記憶してもよいし、これらのデータベースを記憶せずに、検索サーバ10に記憶されたこれらのデータベースにアクセス可能であってもよい。広告リストは、これらの少なくとも1つのデータベースの内容に基づいて生成される。
広告リスト生成部200は、制御部21を主として実現される。広告リスト生成部200は、検索条件を満たす宿泊施設の広告リストを生成する。全ての宿泊施設が広告の対象となってもよいが、本実施形態では、各宿泊施設が広告を出すか否かを自由に指定できるので、広告リスト生成部200は、検索条件を満たし、かつ、広告を出す宿泊施設の広告リストを生成する。
本実施形態では、広告リスト生成部200は、検索結果画面G2における広告の上限数よりも多くの広告を含む広告リストを生成する。広告リストに含まれる広告には、上限数(検索結果画面G2における広告の上限数よりも多い数)が設けられていてもよいし、特に上限数が設けられていなくてもよい。また、検索条件を満たす宿泊施設が少ない場合には、検索結果画面G2における広告の上限数よりも少ない広告を含む広告リストが生成されてもよい。
先述したように、検索結果を取得するための検索条件と、広告リストを生成するための検索条件と、は異なっていてもよい。例えば、広告リスト生成部200は、ユーザにより入力された検索条件だけでなく、ユーザの属性に基づいて広告リストを生成してもよい。また例えば、広告リスト生成部200は、各宿泊施設が登録した広告条件に基づいて、広告リストを生成してもよい。例えば、広告リスト生成部200は、広告条件に含まれるキーワードや地域名に合致する広告リストを生成してもよいし、入札金額に応じて重み付けしたスコアに基づいて広告リストを生成してもよい。
なお、広告リストに含まれる広告には、優先度が付けられていてもよい。例えば、広告リスト生成部200は、入札金額が高いほど優先度が高くなるように、広告リストを生成してもよい。また例えば、広告リスト生成部200は、広告条件に含まれるキーワードや地域名に合致するほど優先度が高くなるようにしてもよい。優先度が高いほど、広告取得部104によって選択されやすくなるものとする。
[3−3.ユーザ端末で実現される機能]
図5に示すように、ユーザ端末30では、検索条件入力部300が実現される。検索条件入力部300は、制御部31を主として実現される。検索条件入力部300は、操作部34の検出信号に基づいて、ユーザによる検索条件の入力を受け付け、当該検索条件を検索サーバ10に送信する。例えば、ユーザがトップ画面G1のボタンB15を選択すると、検索条件入力部300は、入力フォームF10〜F14の各々に入力された情報を含む検索条件を、検索サーバ10に送信する。
[3−4.施設端末で実現される機能]
図5に示すように、施設端末40では、施設設定部400、在庫設定部401、及び入札内容設定部402が実現される。
[施設設定部]
施設設定部400は、制御部41を主として実現される。施設設定部400は、操作部44の検出信号に基づいて、施設データベースDB1に施設情報と部屋情報を登録する。例えば、施設設定部400は、宿泊施設の担当者によって入力された施設情報と部屋情報を検索サーバ10に送信し、宿泊施設の施設IDに関連付けて施設データベースDB1に登録する。
[在庫設定部]
在庫設定部401は、制御部41を主として実現される。在庫設定部401は、操作部44の検出信号に基づいて、在庫データベースDB2の在庫情報を更新する。例えば、在庫設定部401は、宿泊施設の担当者によって在庫情報の変更操作が行われると、その旨を検索サーバ10に送信し、宿泊施設の施設IDに関連付けられた在庫情報を変更する。変更操作は、在庫の増減を指示する操作であってもよいし、最新の在庫数を入力する操作であってもよい。
[入札内容設定部]
入札内容設定部402は、制御部41を主として実現される。入札内容設定部402は、操作部44の検出信号に基づいて、入札内容データベースDB3に入札条件を設定する。例えば、入札内容設定部402は、宿泊施設の担当者によって入力された広告条件を検索サーバ10に送信し、入札内容データベースDB3に登録する。
[3−5.事業主端末で実現される機能]
図5に示すように、事業主端末50では、広告設定部500が実現される。広告設定部500は、制御部51を主として実現される。広告設定部500は、操作部54の検出信号に基づいて、広告設定データベースDB4に広告の設定内容を登録する。例えば、広告設定部500は、事業主によって入力された広告の上限数、日程条件、及び入札条件等を検索サーバ10に送信し、広告設定データベースDB4に登録する。
[4.検索システム等において実行される処理]
図10は、検索システム1等において実行される処理の一例を示すフロー図である。図10に示す処理は、制御部11,21,31が、それぞれ記憶部12,22,32に記憶されたプログラムに従って動作することによって実行される。下記に説明する処理は、図5に示す機能ブロックにより実行される処理の一例である。なお、図10においては、S3〜S5における検索処理が実行された後に、S6〜S7における広告リストの生成処理が実行される場合を説明するが、検索処理と、広告リストの生成処理と、は並行して実行可能である。
図10に示すように、まず、ユーザ端末30は、トップ画面G1を表示部35に表示させる(S1)。例えば、トップ画面G1のURLが選択された場合、又は、旅行予約アプリが起動された場合に、S1の処理が実行される。ユーザ端末30は、検索サーバ10からトップ画面G1の表示に必要なデータを受信し、トップ画面G1を表示させる。
ユーザ端末30は、操作部34の検出信号に基づいて、ユーザが入力した検索条件を検索サーバ10に送信する(S2)。S2においては、ユーザ端末30は、入力フォームF10〜F14の各々にユーザが入力した検索条件を表示させる。ユーザ端末30は、ボタンB15が選択されると、入力フォームF10〜F14の各々に入力された検索条件を検索サーバ10に送信する。
検索サーバ10は、検索条件を受信すると、施設データベースDB1の検索を実行する(S3)。S3においては、検索サーバ10は、検索条件をクエリとし、施設データベースDB1に格納された施設情報及び部屋情報をインデックスとして検索を実行し、検索結果を取得する。
検索サーバ10は、在庫データベースDB2に基づいて、S3における検索結果に含まれる各宿泊施設の在庫の有無を判定する(S4)。S4においては、検索サーバ10は、在庫データベースDB2を参照し、検索結果に含まれる宿泊施設ごとに、検索条件が示す日付の在庫情報を取得する。検索サーバ10は、在庫情報が1以上の宿泊施設については在庫ありと判定し、在庫情報が0の宿泊施設については在庫なしと判定する。
検索サーバ10は、S4における在庫の判定結果を保持する(S5)。S5においては、検索サーバ10は、検索結果に含まれる宿泊施設ごとに、S4における判定結果を記憶部12に記録する。
検索サーバ10は、広告システム2に対し、検索条件を送信して広告リストを要求する(S6)。広告リストの要求は、所定形式のデータが送信されることによって行われるようにすればよい。広告リストの要求には、ユーザが入力した検索条件が含まれるものとする。なお、広告リストの要求には、検索結果画面G2における広告の上限数等の情報が含まれていてもよい。
広告サーバ20は、要求を受信すると、広告リストを生成して検索サーバ10に送信する(S7)。S7においては、広告サーバ20は、検索条件をクエリとし、広告条件をインデックスとして広告を検索する。広告は、施設データベースDB1及び入札内容データベースDB3に基づいて検索されてもよいし、広告用に用意された施設のデータベースに基づいて検索されてもよい。広告サーバ20は、検索結果に含まれる広告のうち、入札金額の高い順に所定個数の広告を選択し、広告リストを生成する。先述したように、当該所定個数は、検索結果画面G2における広告の上限数よりも多いものとする。
検索サーバ10は、広告リストを受信すると、S5において保持した判定結果に基づいて、広告リストの中から、検索条件が示す日付に在庫がある宿泊施設を特定し、当該宿泊施設の広告を取得する(S8)。S8においては、検索サーバ10は、広告リストに含まれる広告が示す宿泊施設のうち、S4で在庫ありと判定された宿泊施設を特定し、当該宿泊施設の広告を取得する。
検索サーバ10は、S4における検索結果と、S8で取得した広告と、を含む検索結果画面G2の表示データを生成してユーザ端末30に送信する(S9)。S9においては、検索サーバ10は、S4における検索結果を表示領域A22に配置し、S8で取得した広告を表示領域A21に配置して検索結果画面G2の表示データを生成する。
ユーザ端末30は、表示データを受信すると、検索結果画面G2を表示部35に表示させ(S10)、本処理は終了する。以降、ユーザがボタンB23を選択すると、宿泊施設の予約画面に進む。ユーザがトップ画面G1に戻る操作をすると、S1の処理から再び実行され、ユーザが検索条件を入力し直すとS2の処理から再び実行される。
以上説明した検索システム1によれば、宿泊施設の検索時に実行した在庫の判定結果に基づいて、検索条件が示す日付に在庫がある宿泊施設の広告を取得して検索結果画面G2を表示させ、在庫の判定を二重に実行せず1回の判定で済ませることにより、在庫判定に対する検索サーバ10の処理負荷を軽減することができる。また、在庫判定を1回で済ませることにより、検索条件が示す日付に在庫がある宿泊施設の広告を迅速に特定することができ、検索結果画面G2の表示に要する時間を短縮し、検索結果画面G2を表示させる処理を高速化することができる。また、広告サーバ20が在庫の有無を判定する場合には、広告サーバ20側でも在庫データベースDB2を管理する必要があるが、広告サーバ20は、検索条件が示す日付における在庫の有無を判定する必要がなく、在庫データベースDB2を管理する必要がないので、広告サーバ20のメモリ消費量を削減することができる。また、検索結果画面G2における検索結果と広告は、何れも在庫があることが確認されているので、広告主である宿泊施設の利用増大が期待される。ユーザからしてみても検索の二度手間が生じることなく宿泊施設を予約することができる。
また、検索システム1は、宿泊施設の検索時に実行した在庫の判定結果を保持し、保持された判定結果と広告リストに基づいて、検索条件が示す日付に在庫がある宿泊施設の広告を取得することにより、判定結果と広告リストの比較という簡易な処理により、検索条件が示す日付に在庫がある宿泊施設の広告を特定することができる。
また、検索システム1は、外部の広告システム2に対し、広告リストを要求し、広告システム2から広告リストを取得することにより、検索サーバ10が広告リストを生成する処理を実行する必要がなくなるので、検索サーバ10の処理負荷を軽減することができる。
また、検索システム1は、検索結果画面G2に予め表示可能な広告の上限数よりも多い広告を含む広告リストの中から上限数以下の広告を取得することにより、検索結果画面G2に表示される広告数が上限数よりも少なくなることを防止することができる。即ち、広告リストに含まれる広告が上限数と同値である場合、何れかの広告の在庫がなかった場合には、検索結果画面G2に表示される広告が上限数よりも少なくなってしまう。しかし、本実施形態のように、上限数より多くの広告を含めて広告リストを生成することにより、上限数の広告を表示させる確率を高めることができる。
[5.変形例]
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
(1)例えば、広告サーバ20が広告リストの生成処理に時間を要した場合、検索結果画面G2がユーザ端末30になかなか表示されない可能性がある。このため、検索サーバ10は、所定の期限までに広告リストを取得できなかった場合には、広告を含まない検索結果画面G2をユーザ端末30に表示させてもよい。
本変形例の表示制御部105は、所定の期限までに少なくとも1つの広告が取得されなかった場合には、少なくとも1つの広告を含まない検索結果画面を表示させる。所定の期限は、任意の期限が設定されてよく、例えば、検索条件を受信してから所定時間後であってもよいし、広告リストを要求してから所定時間後であってもよい。当該所定時間の長さは、任意の長さであってよく、例えば、1秒〜10秒程度であってもよいし、それ以上であってもよい。
表示制御部105は、リアルタイムクロック等を利用して計時処理を実行し、所定の期限が訪れたか否かを判定する。表示制御部105は、所定の期限が訪れるまでに広告が取得された場合には、広告を含む検索結果画面G2をユーザ端末30に表示させる。一方、表示制御部105は、所定の期限が訪れるまでに広告が取得されなかった場合には、広告を含まない検索結果画面G2をユーザ端末30に表示させる。即ち、表示制御部105は、広告の取得が完了するのを待つことなく、広告を含まない検索結果画面G2をユーザ端末30に表示させる。
変形例(1)によれば、所定の期限までに広告が取得されなかった場合には、広告を含まない検索結果画面G2がユーザ端末30に表示されるので、検索結果画面G2の表示に要する時間を短縮し、検索結果画面G2を表示させる処理を高速化することができる。また、所定の期限が訪れた場合には、検索サーバ10は、検索結果画面G2を表示させて広告を取得しないので、検索サーバ10の処理負荷を軽減することができる。更に、広告サーバ20に広告リストを取得させる処理を中断させる場合には、広告サーバ20の処理負荷を軽減することもできる。
(2)また例えば、検索サーバ10が在庫のある宿泊施設の広告を取得しようとしても、ユーザが利用日を入力しなかった場合には、どの時点の在庫の有無を判定すべきかを特定できない。この場合、検索サーバ10は、ユーザが直近で入力した利用日の在庫の有無を判定してもよい。
なお、利用日は、所定項目の条件の一例である。このため、本変形例で利用日と記載した箇所は、所定項目の条件と読み替えることができる。所定項目は、利用日に限られず、任意の項目であってよい。所定項目は、検索条件として指定可能な複数の項目のうち、重要な項目として定められた項目であってよく、例えば、利用人数や地域名であってもよい。
本変形例のデータ記憶部100は、過去の検索時にユーザにより入力された検索条件を記憶する。データ記憶部100は、所定項目の入力内容だけを記憶してもよいし、検索条件の全てを記憶してもよい。また、データ記憶部100は、ユーザが過去に入力した全ての検索条件を記憶してもよいし、直近の検索条件(今回入力された検索条件の1回前に入力された検索条件)だけを記憶してもよい。他にも例えば、データ記憶部100は、過去数ヶ月に入力された検索条件を記憶してもよい。
広告取得部104は、ユーザ端末30から所定項目の条件が入力されなかった場合には、過去の検索時にユーザ端末30から入力した所定項目の条件を満たし、かつ、在庫がある宿泊施設の広告を少なくとも1つ取得する。本変形例では、所定項目の条件が利用日なので、広告取得部104は、ユーザ端末30から利用日が入力されなかった場合には、過去の検索時にユーザ端末から入力した利用日に在庫がある宿泊施設の広告を少なくとも1つ取得する。
例えば、検索部101は、実施形態で説明した処理と同様にして、利用日を含まない検索条件に基づいて、検索結果を取得する。判定部102は、過去の検索時にユーザにより入力された利用日を取得し、検索結果に含まれる宿泊施設の当該利用日の在庫情報に基づいて、当該利用日における在庫の有無を判定する。広告取得部104は、当該判定結果に基づいて、少なくとも1つの広告を取得する。判定部102の判定結果に基づいて広告を取得する処理自体は、実施形態で説明した通りである。
変形例(2)によれば、ユーザ端末30から所定項目の条件が入力されなかった場合には、過去の検索時にユーザ端末30から入力した所定項目の条件に基づいて広告を取得することにより、ユーザにとって有益な広告を提示することができる。
また、過去の検索時にユーザ端末30から入力した利用日は、今回の検索でもユーザが検索しようとしている確率が高いので、このような利用日に基づいて広告を取得することにより、より有益な広告を提示することができる。
(3)また例えば、変形例(2)において、ユーザが過去に入力した利用日で宿泊施設の予約が完了している場合には、その利用日に在庫がある宿泊施設の広告を出しても、ユーザがその広告を選択する確率が低く、広告の効果が低い。このため、この場合には、特に利用日を指定せずに、任意の日付で在庫がある宿泊施設が検索されて広告が表示されるようにしてもよい。
本変形例のデータ記憶部100は、ユーザの予約履歴を記憶する。例えば、検索サーバ10は、ユーザによる宿泊施設の予約を受け付けるたびに、当該ユーザのユーザIDに関連付けて、予約内容をデータ記憶部100に記録する。予約内容には、ユーザが予約した宿泊施設の施設ID、部屋ID、利用日、及び利用人数といった情報が含まれる。また、予約内容には、ユーザが検索時に入力した検索条件が含まれていてもよい。
本変形例の広告取得部104は、ユーザ端末30から入力した利用日における予約が完了した場合には、当該利用日を用いずに、検索条件を満たし、かつ、在庫があるアイテムの広告を少なくとも1つ取得する。広告取得部104は、ユーザ端末30から利用日が入力されなかった場合、ユーザの予約履歴に基づいて、過去の検索時にユーザ端末30から入力した利用日で予約が完了しているか否かを判定する。
予約が完了していないと判定された場合には、広告取得部104は、変形例(2)のようにして、過去の検索時にユーザ端末30から入力した利用日に基づいて広告を取得する。一方、予約が完了したと判定された場合には、広告取得部104は、過去の検索時にユーザ端末30から入力した利用日を用いずに広告を取得する。この場合、判定部102は、在庫の判定をしなくてもよいし、予め定められた日付の在庫の判定をしてもよい。判定部102が在庫の判定をしない場合には、特に在庫の有無を判定せずに検索結果と広告が表示されることになる。
変形例(3)によれば、ユーザが過去に入力した利用日で宿泊施設の予約が完了している場合には、当該利用日を用いずに広告を取得することにより、有益な広告を提示することができる。
(4)また例えば、上記変形例を組み合わせてもよい。
また例えば、実施形態では、旅行予約サービスのトップページに相当するトップ画面G1から検索条件が入力された場合の画面遷移について説明したが、他のページから同様の画面遷移がなされてもよい。例えば、検索サーバ10がエリアごとの観光案内を示す観光ページを提供し、当該観光ページからユーザが施設情報を閲覧した場合に、同様の画面遷移がなされてもよい。即ち、観光ページからユーザが施設情報を閲覧した場合に、利用日に応じた在庫判定と、広告リストの生成と、が実行されて、施設情報のページに広告が表示されてもよい。また例えば、外部の検索エンジンから検索条件が入力され、当該検索エンジンの検索結果から施設情報が閲覧された場合に、同様の画面遷移がなされてもよい。即ち、外部の検索エンジンの検索結果から施設情報が閲覧された場合に、検索条件が示す日付に応じた在庫判定と、広告リストの生成と、が実行されて、施設情報のページに広告が表示されてもよい。
また例えば、広告取得部104が判定部102の判定結果に基づいて広告を取得する処理は、上記説明した例に限られない。広告取得部104は、検索結果のうち、検索条件が示す日付に在庫がある少なくとも1つの宿泊施設の中から、広告として指定された少なくとも1つのアイテムを特定し、当該特定した少なくとも1つの宿泊施設の広告を取得してもよい。即ち、広告取得部104は、入札内容データベースDB3に基づいて、検索結果のうち、検索条件が示す日付に在庫がある宿泊施設の中から、広告の掲載を希望する宿泊施設を特定し、当該宿泊施設の広告を取得してもよい。この場合、広告リストを取得せずに、検索条件が示す日付に在庫のある宿泊施設の広告を取得することができる。
また例えば、検索システム1は、検索結果の取得と広告リストの生成の両方を実行してもよい。また例えば、検索結果画面G2には、広告の上限数が定められていなくてもよい。
また例えば、検索システム1を旅行予約サービスに適用する場合を説明したが、検索システム1は、任意の検索をする場面に適用可能である。日付ごとの在庫の概念がないサービスに検索システム1を適用してもよく、例えば、検索システム1を電子商取引に適用してもよい。この場合、検索システム1は、ユーザが入力した検索条件に基づいて、商品を検索し、在庫の有無を判定する。検索システム1は、在庫の判定結果に基づいて、検索条件を満たし、かつ、在庫がある商品を少なくとも1つ取得し、検索結果とともに表示させるようにすればよい。他にも例えば、検索システム1は、レストラン予約、チケット購入、イベント予約、又はセミナー申し込みといった在庫の概念のある種々のサービスに適用可能である。
また例えば、複数のコンピュータの各々で機能が分担されてもよい。例えば、また例えば、データ記憶部100で記憶されるものとして説明したデータは、検索サーバ10とは異なるデータベースサーバによって記憶されてもよいし、検索システム1の外部にあるデータベースサーバによって記憶されていてもよい。