JP2007526537A - 持続的にイベントデータを記憶および提供するためのサーバアーキテクチャおよび方法 - Google Patents
持続的にイベントデータを記憶および提供するためのサーバアーキテクチャおよび方法 Download PDFInfo
- Publication number
- JP2007526537A JP2007526537A JP2006517214A JP2006517214A JP2007526537A JP 2007526537 A JP2007526537 A JP 2007526537A JP 2006517214 A JP2006517214 A JP 2006517214A JP 2006517214 A JP2006517214 A JP 2006517214A JP 2007526537 A JP2007526537 A JP 2007526537A
- Authority
- JP
- Japan
- Prior art keywords
- user
- event
- server
- url
- search
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
Abstract
ウェブサイトシステム(30)は、ウェブサイトユーザのブラウジングセッション中に発生するイベントを反映するイベントデータを持続的に記憶し、他のアプリケーションおよびサービス(38)が当該データをリアルタイムに利用できるようにするイベント履歴サーバシステム(32)を備える。サーバシステム(32)は、例えば、全ての承認されたユーザの全てのマウスクリックに関する情報を記録するために用いられてもよく、インプレッションおよびマウスオーバーイベント等の別のタイプのイベントを記録するためにも用いることもできる。特定ユーザのイベントデータは、イベントタイプ、イベント発生時刻および別の様々な基準に基づいてサーバシステム(32)から検索が可能である。一実施形態において、サーバシステム(32)は、セッションIDごとにイベントデータをキャッシュするキャッシュ層(40)を備え、かつ、前記イベントデータをユーザIDごとに持続的に記憶する持続的記憶層(44)を備える。また、上記記憶されたイベントデータを用いて実現されうる様々なアプリケーションの特徴も開示される。
Description
本発明は、ウェブサイトユーザのブラウズセッション中に発生するイベントを反映するイベントデータの取得、持続的な記憶、および供給を行なうサーバアーキテクチャに関する。また、本発明は、イベント履歴データを利用したパーソナライゼーション技術にも関する。
一般に、ウェブサイトシステムは、ユーザのブラウジングあるいは「クリックストリーム」に関する情報を取得および記憶するための1つまたはそれ以上の機構を備えている。取得されたクリックストリームデータは、承認されたユーザのウェブページをパーソナライズするために一般に用いられる。しかし、典型的には、取得されたクリックストリームデータは、各ユーザのブラウズ履歴に関する非常に限定された情報を提供するものであるか、パーソナライゼーションに限定して用いられるフォーマットで取得されているかの何れかである。
例えば、ウェブサイトの中には、電子カタログのブラウズ中に各ユーザによって行なわれた項目の選択、ブラウズノードの選択、および探索クエリの提出のそれぞれについてのリアルタイム記録を保持しているものもある。このようなブラウズ履歴は、例えば、パーソナライズした項目の提案を生成したり、以前にアクセスしたコンテンツにユーザが戻るための支援を行なうナビゲーション履歴を表示するために有用である。しかし、典型的には、これらのタイプの記録は、新たなタイプのリアルタイム型パーソナライゼーション・アプリケーションを柔軟に構築するために望ましいとされるレベルの詳細および構造を欠いている。
また、一部のシステムは、ウェブサイトが受信した全てのHTTP要求の時系列の記録を含むウェブサーバアクセスログ(「ウェブログ」)を、関連したタイムスタンプおよびユーザID情報と共に保持している。動的に生成されるウェブページの場合、ウェブクエリログは、当該ページ内でユーザに提示される項目のID(一般に、項目の「インプレッション」と呼ばれる)も記録している場合がある。典型的に、これらのログは、より詳細なブラウズ履歴情報を典型的に含んでいるものの、ユーザのクリックストリーム履歴をリアルタイムで抽出および分析するのに十分には適さないフォーマットで保持されている。ウェブログは、様々なパーソナライゼーション機能に有用な情報を得るためにマイニングが可能であるが、大規模なウェブログのマイニングを行なうタスクには、多くの時間または日数を要する可能性があり、場合によっては、抽出されたデータを、それが利用できる時点では陳腐なものにしてしまう。さらに、ウェブログに含まれる詳細情報の多くは、マイニング処理中に無視され、したがってパーソナライゼーションの目的においては実質的に失われる。
本発明は、ウェブサイトユーザのブラウズセッション中に発生するイベントを記述したイベントデータを持続的に記憶するイベント履歴サーバシステムを提供する。イベントデータは、対応するユーザのIDと関連付けて記憶され、イベントデータを用いて特定ユーザ用にウェブページをパーソナライズすることができるウェブサイトアプリケーションがリアルタイムで利用できるようになっている。一実施形態において、イベント履歴サーバは、ウェブサイトの全ユーザの実質的に全ての選択イベント(例えば、マウスクリック)を記述したイベントデータを記録する。イベント履歴サーバは、インプレッション(すなわち、動的に生成されたウェブページ上でユーザに提示された項目)やマウスオーバーイベント等の別のタイプのブラウジングイベントを記述したイベントデータも記録することができる。
各記録イベントに関して記憶されたイベントデータは、イベントオブジェクトとしてデータベース内に記憶されることが好ましい。各イベントオブジェクトは、例えば、一般的なイベントタイプの識別子(例えば、マウスクリック、インプレッション等)および付随する表示要素のタイプ(例えば、カタログ項目、ブラウズノード、探索結果項目等)、イベント値(例えば、選択されたテキスト)、イベントの発生日時を示すタイムスタンプおよび関連したコンテキスト情報を含んでいてもよい。イベント履歴サーバのクエリインタフェイスは、パーソナライゼーションアプリケーション等のアプリケーションが、一般的なイベントタイプ、付随する表示要素のタイプ、発生時刻および場合によってはその他の基準によって特定ユーザのイベントデータを検索することを可能にする。クエリインタフェイスは、「ユーザXは以前にURL Yにアクセスしたか?」および「ユーザXがURL Yにアクセスしたのはいつか?」というセマンティクスを持つクエリもサポートすることが好ましい。より一般的には、クエリインタフェイスは、「タイプTおよび値VのイベントがユーザXのイベント履歴内に存在するか?」というセマンティクスを持つクエリをサポートすることができる。
一実施形態において、イベント履歴サーバシステムは、イベントデータを、対応するブラウズセッションlDと関連付けてキャッシュするキャッシュ層を備え、上記イベントデータを、対応するユーザIDと関連付けて持続的に記憶する持続的記憶層を備える。キャッシュ層は、各キャッシュ層サーバがそれぞれ異なるユーザのセットのイベントデータをキャッシュするように、ブラウズセッションIDごとにパーティションに分割された複数の物理キャッシュ層サーバを備えることが好ましい。持続的記憶層は、2つまたはそれ以上の物理記憶層サーバを備え、当該サーバのいずれもがイベントデータに対する所与のクエリ/要求に応答ができるよう、持続的に記憶されたイベントデータの完全なセットを、それぞれが記憶することが好ましい。
好ましい実施形態においては、記録可能なブラウジングイベントが発生すると、イベント報告コンポーネントは、その特定のブラウジングセッションIDに関連したキャッシュ層サーバに更新を送信し、同サーバは、そこに指定されたイベントデータにより各自のキャッシュを更新する。更新は、また、イベントデータが持続的に記憶されるように、キャッシュ層サーバから記憶層に渡される。イベント履歴サーバシステムのクライアントからのクエリは、まずキャッシュ層サーバによって処理され、同サーバは、該当するイベントデータがキャッシュされていない場合には、当該クエリを持続的記憶層に渡す。
一実施形態において、イベント履歴サーバシステムは、一般的なインターネット探索機能を提供するウェブ探索アプリケーションのユーザによって行なわれた動作を記述したイベントデータを記憶する。このイベントデータは、ユーザによって提出された探索クエリおよび探索結果ページからユーザによって選択された探索結果項目(URL)を含むことが好ましい。記録されたイベントデータは、ユーザ用に探索結果ページをパーソナライズするために用いられることが好ましい。例えば、一実施形態においては、ユーザが当該ユーザによって以前にアクセスされたURL(探索結果項目)を返信する探索を行なうと、探索結果ページにコメントが付され、このURLが以前にアクセスされたことが示され、かつ当該アクセスの日付が示される。
本発明の一側面によると、イベント履歴サーバは、特定ユーザによってアクセスされたURLを反映するユーザ特有のブルーム(Bloom)フィルタを生成し、このブルームフィルタを用いて、特定ユーザが以前に特定のURLにアクセスしたかどうかを効率的に評価する。ブルームフィルタは、項目インプレッション等の別のタイプのイベントが特定ユーザのイベント履歴内に存在するか否かを効率的に評価するために生成および使用されてもよい。
また、ユーザが各自のイベント履歴を閲覧し、編成し、かつこれにコメントを付けることを可能にするアプリケーションの特徴も開示される。
この概要および以下の詳細な説明は、いずれも本発明を定めるものではない。本発明は請求項によって定められる。
以下、イベント履歴サーバシステムを備えるウェブサイトシステムの好適な実施形態について図面を参照しながら説明する。理解できるように、開示されるシステム内で実施される本発明の特徴の多くは、残りの特徴がなくとも実現または使用することができる。以下の記載においては、説明の目的で多数のインプリメンテーションの詳細を記載するが、これは本発明を説明するためのものであって、限定するものではない。
I.概要
図1は、本発明の一実施形態に係るイベント履歴サーバシステム32(「イベント履歴サーバ」)を備えるウェブサイトシステム30を示す。イベント履歴サーバ32は、ユーザのブラウジングセッション中に発生するイベントを示すイベントデータを持続的に記録し、かつこれに対するリアルタイムアクセスを提供するためのサービスを提供する。イベントデータは、ユーザのクリックストリームを記述していることが好ましく、マウスオーバーやインプレッションイベント等の別のタイプのイベントを記述していてもよい。以下に説明するように、イベント履歴サーバ32は、アプリケーションおよびサービスが特定ユーザのイベントデータを柔軟に検索し、またそれに関する情報を要求することを可能にするAPI(アプリケーションプログラムインタフェイス)も提供している。
図1は、本発明の一実施形態に係るイベント履歴サーバシステム32(「イベント履歴サーバ」)を備えるウェブサイトシステム30を示す。イベント履歴サーバ32は、ユーザのブラウジングセッション中に発生するイベントを示すイベントデータを持続的に記録し、かつこれに対するリアルタイムアクセスを提供するためのサービスを提供する。イベントデータは、ユーザのクリックストリームを記述していることが好ましく、マウスオーバーやインプレッションイベント等の別のタイプのイベントを記述していてもよい。以下に説明するように、イベント履歴サーバ32は、アプリケーションおよびサービスが特定ユーザのイベントデータを柔軟に検索し、またそれに関する情報を要求することを可能にするAPI(アプリケーションプログラムインタフェイス)も提供している。
図1に示すように、ウェブサイトシステム30は、ユーザコンピュータ36および/または別の種類の装置(PDA、携帯電話等)から要求を受信および処理する1つ以上のウェブサーバ装置34を備えている。ウェブサーバ装置34上で実行される処理は、ウェブサービスとして実現されうる各種ウェブアプリケーション38と通信を行なう。これらのアプリケーション38は、ウェブサーバ装置34上で実行することができるが、より典型的には、別々のサーバ装置(図示せず)上で実行される。典型的に、所与のシステム内に設けられるウェブアプリケーションの種類は、そのシステムの性質および目的によって決まる。例えば、インターネット探索エンジンサイトは、ユーザがウェブページのインデックスのキーワード探索を行なうことを可能にするための1つ以上の探索アプリケーション38を備えてもよい。電子商取引サイトは、電子カタログの探索、ブラウザツリーによる電子カタログのブラウジング、パーソナライズされた提案の生成、注文の発注、個人アカウントデータの管理といったタスクを実行するためのウェブアプリケーションを備えうる。本説明の目的のために、ウェブアプリケーション38の少なくとも一部は、イベント履歴サーバ32に記憶されたユーザ特有のイベントデータに基づいてパーソナライズされたウェブページコンテンツを供給することを前提としてもよい。
図1に示すように、各ウェブサーバ装置34は、オンラインユーザによって実行される動作に応じてイベント履歴サーバ32に更新を送るイベント報告コンポーネント35を実行することが好ましい。(所与のユーザは、個人である必要はなく、例えば、ユーザコンピュータ36またはユーザアカウントを共有する個人の集合であってもよい)。このような更新は、それぞれ、ユーザのブラウジングセッション中に発生した、マウスクリック、探索クエリの提出、あるいはインプレッション等の特定のイベントを記述したイベントデータを含む、あるいは指定する。イベント報告コンポーネント35は、イベント履歴サーバ32に対する呼び出しを行なうためのAPI(アプリケーションプログラムインタフェイス)のセットを含んでもよく、また、イベント/更新が生成される対象である動作のタイプを指定する設定パラメータを含んでもよい。APIは、アプリケーション38がイベント履歴サーバ32にクエリを提出することを可能にするためにも設けられている。下記のセクションVに記載するように、ブラウジングイベントは、ユーザコンピュータ36上で実行されるブラウザベースのイベント報告コンポーネント(図7)によって、イベント履歴サーバ32に付加的にまたは二者択一的に報告されてもよい。
特定のイベントに関してイベント履歴サーバ32により記憶された上記データセットは、「イベントオブジェクト」として記憶されることが好ましい。一実施形態において、例えば、イベント履歴サーバ32は、ウェブサイトシステム30の全ての承認されたユーザの実質的に全ての選択動作すなわち「マウスクリック」を記述したイベントオブジェクトを持続的に記憶する。この情報は、例えば、アクセスされたURL、アクセス時刻/日、および関連したコンテキスト情報を含んでもよい。イベント履歴サーバは、動的に生成されたウェブページ内でユーザに提示された特定の項目を反映したインプレッションイベントも記録することができる。例えば、データベースから選択されたパーソナライズされた項目リストを含む動的に生成されたウェブページをユーザが閲覧する場合、イベント履歴サーバは、当該項目のそれぞれに関してイベントオブジェクトを記憶してもよいし、あるいは、項目リストを含む1つのイベントオブジェクトを記憶してもよい。記録されうるイベントのタイプ、およびそのようなイベントに関して記録することができるイベントデータのタイプの別の例を以下に示す。イベントオブジェクトは、発生時刻、一般的なイベントタイプ(例えば、マウスクリック対インプレッション)、付随する表示要素のタイプ(例えば、カタログ項目、ブラウズノードやウェブ探索結果URL)、ユーザIDやその他のオブジェクト特性に基づいた検索を可能にするために、イベント履歴サーバ32内において記憶および索引付けされることが好ましい。
イベント履歴サーバ32によって取得されたイベントデータは、ウェブサイトシステム30がホストとなっている特定のウェブサイトまたはウェブサイトのセットをユーザがブラウジング中に、ユーザによって実行された動作を反映している。一部の実施形態においては、このような取得データは、外部の独立したウェブサイトをユーザがブラウジング中にユーザによって実行された動作をも反映していてもよい。例えば、全てのURLアクセス(および場合によっては別のタイプのイベント)をイベント履歴サーバ32に対して報告するブラウザツールバーなどのブラウザプラグインを各自のコンピュータ36にダウンロードすることを、ユーザに対して許可または要求してもよい(以下に記載する図7を参照)。
ウェブアプリケーション38の一部または全てがイベント履歴サーバ32のクライアントとして機能することが好ましい。図1に示すように、ウェブアプリケーションは、主として、イベントクエリをイベント履歴サーバ32に送信することによりイベント履歴サーバ32と対話を行い、特定のイベントの情報を検索または取得する。これらのクエリは、「ユーザYに関して、最新のものからN個、過去のタイプTのイベントを再び呼び出せ。」または「ユーザYに関して今後のN個のタイプTのイベントを再び呼び出せ。」等の固定サイズのイベントデータブロックに対する要求を含むことが好ましい。例えば、ウェブアプリケーション38は、特定ユーザによって提出された過去の50個の探索クエリに関してイベントオブジェクトを要求してもよく、あるいは、特定ユーザによって閲覧された過去の50個のブラウズノードに関してイベントオブジェクトを要求してもよい。検索されたイベントオブジェクトは、ウェブアプリケーション38によって、例えばパーソナライズされた項目提案の生成やナビゲーションを容易にするためのブラウズ履歴データの表示等のあらゆる適切な目的に用いることができる。
イベント履歴サーバ32は、「タイプTかつ値VのイベントがユーザYのイベント履歴内に存在するか?」および「タイプTかつ値VのイベントがユーザYのイベント履歴内で発生したのはいつか?」という意味形式のクエリもサポートすることが好ましい。例えば、ウェブアプリケーションは、イベント履歴サーバ32に照会を行い、特定ユーザが特定のURLに以前にアクセスしたかどうか、かつ、もしアクセスした場合にはいつアクセスしたのかを明らかにすることができる。以下に説明するように、このような特徴を持つ1つのアプリケーションは、特定ユーザによってすでにアクセスされた探索結果URLを強調表示し、かつ、閲覧されたURLが最後にいつアクセスされたかを表示するパーソナライズされたウェブ探索結果ページ(図3を参照)を生成することを含む。イベント履歴サーバ32によってサポートされうるクエリのタイプおよび取得されたイベントデータを利用したアプリケーションの別の例を以下に示す。
図1においてイベントクエリはウェブアプリケーション38から出ているように示されているが、イベント履歴サーバ32は、別のタイプのコンポーネントからのイベントクエリ(および場合によっては更新)に応答してもよい。例えば、データマイニングアプリケーションが、ウェブサイトのブラウジングを向上させる目的でユーザのイベントデータの検索および分析を行い、セキュリティーアプリケーションまたはセキュリティー管理者が、クリックストリームデータを検索してセキュリティー侵害の分析を行なってもよい。更新および/またはクエリをイベント履歴サーバ32に送信するアプリケーションコンポーネントおよびサービスは、本明細書においては「クライアント」と呼ばれ、図1においてはクライアント層39の一部として示されている。
図1に示すように、イベント履歴サーバ32は、キャッシュ層40および持続的記憶層44の2層で構成される。キャッシュ層40は、1組の物理キャッシュ層サーバ42で構成され、これらはそれぞれ、クライアントからの更新およびクエリに対して応答するためのサービスレベルのソフトウェア70(図2)を実行する。各キャッシュ層サーバ42は、イベントデータをイベントオブジェクトの形式で一時的に記憶するキャッシュ43を備える。キャッシュ43は、不揮発性のディスク記憶装置、ランダムアクセスメモリ、またはこれらの組み合わせを用いて実現することができる。以下に説明するように、キャッシュ43は、一定のタイプのクエリに対して応答するためのユーザ特有のブルームフィルタをも記憶していてもよい。クライアント層39、キャッシュ層40および持続的記憶層との間の通信は、ローカルエリアネットワークを介して行なわれることが好ましい。
キャッシュ層サーバ42は、ブラウズセッションIDごとにパーティションに分割されていることが好ましく、これは、このようなサーバ42はそれぞれ、各自の範囲またはグループのセッションIDに関連付けられたイベントデータ(イベントオブジェクト)のみを記憶することを意味する。したがって、例えば、ユーザが新たなブラウジングセッションを開始すると、そのセッションは、当該ブラウジングセッションに対応する全ての更新およびイベントクエリをそれ以降処理する特定のキャッシュ層サーバ42に割り当てられる。1つのインプリメンテーションにおいては、合計9つのデュアルCPUキャッシュ層サーバ42がキャッシュ層40内に設けられ、これらのうちの1つがホットスペアとして用いられる。キャッシュ43は、ステートレスなライトスルーキャッシュとして用いられることが好ましく、これにより、装置42の付加、取り外し、バックアップおよび再起動が容易となる。
以下に説明するように、キャッシュ層40は、クライアント層39と持続的記憶層44との間の中継部として実質的に機能し、これによりシステムがより高いスループットレベルで動作することが可能となっている。キャッシュ層40の使用は好ましいが、イベント履歴サーバ32は、キャッシュ層なしで実現されてもよい。さらに、キャッシュ層40が設けられている場合、キャッシュを行うことが有益でない場合にはこれをバイパスしてもよく、その結果、要求の一部は持続的記憶層44によって直接処理される。
さらに図1を参照すると、持続的記憶層44は、1組の物理記憶層サーバ46で構成されている。図示される実施形態においては、2つの記憶層サーバ46が設けられているが、これより多くあるいは少なく用いてもよい。各記憶層サーバ46は、システム32によって持続的に記憶されたイベントデータの完全なコピーの保持を担っている。したがって、記憶層サーバ46は、2つ以上設けられている場合には、互いのミラーとなっている。記憶層サーバ46はミラーリングされているため、1つの記憶層サーバ46がダウンしたり取り外されたりしても、イベント履歴サービスの全体的な機能に影響を及ぼすことはない。
各記憶層サーバ46は、例えば、数テラバイトのディスクドライブ記憶装置を備えていてもよい。1日につき約100Mのイベントが記録され、かつ各記録イベントについて平均30バイトのデータが記憶される場合、各記憶層サーバ46は、1日につき約3GB(ギガバイト)、すなわち1年につき約1テラバイトのイベントデータを記憶することになる。このような使用量が想定される場合、各記憶層サーバ46は、数年分のイベントデータを記憶および処理する能力を有する。記憶層サーバ46の記憶容量一杯になった場合は、記憶層に新たなディスクドライブを追加してその容量を増加させ、かつ/または古いイベントデータを削除あるいはアーカイブしてもよい。
以下に説明し、図2に示すように、各記憶層サーバ46は、イベントデータを記憶および管理するためのデータベースソフトウェア62を実行し、かつ、キャッシュ層40から受信し、更新およびクエリを処理するためのサービスレベルコード60を実行する。記憶層サーバ46は、低コストの汎用ハードウェアを用いて実現してもよく、バークレー(Berkeley)データベースまたは別の種類の比較的低コストのデータベースを用いてイベントデータを記憶してもよい。
イベント履歴サーバ32は、更新に対して概ね以下のように応答する。ウェブサーバ装置34によって更新がキャッシュ層40に送信されると、対応するセッションIDに割り当てられたキャッシュ層サーバ42は、その更新によって指定されたイベントオブジェクトを含めるよう各自のキャッシュ43を更新する。このイベントが承認されたユーザに対するものである場合、キャッシュ層サーバ42は、この更新を各記憶層サーバ46に対しても(好ましくはパブリッシュ/サブスクライブ(publish−subscribe)プロトコルを用いて)送信し、当該サーバ46は、それぞれ、関連するイベントオブジェクトを、対応するユーザIDと関連付けて自らの持続的記憶装置64に記憶する。各キャッシュ層サーバ42は、記憶層サーバ46に送信するための複数のイベント/更新を集めることが好ましく、その結果、これらのサーバ46はキャッシュ層からの更新をバッチ単位で受信する。イベントオブジェクトは、対応するセッションIDおよび/またはユーザIDと関連付けてキャッシュ43に記憶される。
更新において指定されたイベントデータが未承認のユーザに対するものである場合、キャッシュ層サーバ42は、このイベントオブジェクトを自らのキャッシュ43に(対応するセッションIDと関連付けて)記憶するが、この更新を持続的記憶層44に送信しない。ユーザは、例えば、ユーザが(1)ウェブサイトにとって新規である場合、(2)特定のコンピュータ36からウェブサイトに初めてアクセス中であって、かつログインしていない場合、または(3)クッキーを遮断するように構成されたコンピュータ36からウェブサイトにアクセス中であって、かつログインしていない場合には未承認であってもよい。このように、セッションを通じて、キャッシュ層は未承認ユーザに関するイベントデータを収集する。
ブラウジングセッション中に、未承認ユーザがログインを行うか、アカウントを作成するか、あるいは承認される場合、関連したキャッシュ層サーバ42は、当該ユーザに関して収集されたイベントデータを、そのユーザIDと関連付ける。また、キャッシュ層サーバ42は、一連の更新を記憶層サーバ44に送信し、この収集されたイベントデータをユーザIDと関連付けて持続的に記憶する。このようにして、システムはユーザのイベントを、当該イベントの発生時点でユーザが承認されない場合であっても持続的に取得することを可能にする。さらに、ユーザが未承認である期間中、イベント履歴サーバ32のクライアントは、未承認ユーザのキャッシュされたイベントデータに関する情報をユーザのセッションIDに基づいて検索および要求することができる。
イベント履歴サーバ32は、クライアントからのイベントクエリに関して概ね以下のように応答する。クライアントからイベントクエリを受信すると、キャッシュ層サーバ46は、まず各自のキャッシュ43をチェックして該当するイベントデータがその中に存在するか否かを判定し、データが存在する場合にはクエリに応答する。該当するイベントデータがキャッシュ43に存在しない場合、クエリは記憶層サーバ46のいずれかに渡される。この目的で記憶層サーバ46を選択するために、負荷分散アルゴリズムを用いることができる。選択された記憶層サーバ46は、応答(要求されたイベントオブジェクトを含んでいてもよい)を生成し、この応答をクエリの送信元であるキャッシュ層サーバ42に返信することにより、クエリに対して応答する。次に、キャッシュ層サーバ42は、この応答を要求元のクライアントに渡す。
応答が持続的記憶装置から検索されたイベントデータを含む場合、キャッシュ層サーバ42は、このイベントデータを各自のキャッシュ43にデフォルトで記憶する。この好ましい実施形態において、イベントクエリは、検索されたイベントデータをキャッシュすべきではないことを示してもよく、このような特徴は、例えば、オフラインでのデータマイニングを行う目的で持続的記憶装置から大量のイベントデータを読み出す際にキャシュを行うことを禁止するために用いることができる。
上記で示されたように、イベント履歴サーバ32の上記した実施形態は、ブラウジングイベントを記述したデータを、そのイベントが発生する際に取得し、パーソナライゼーション・アプリケーション38が当該イベントデータをリアルタイムで(すなわち、実質的に直ちに)利用できるようにする。また、イベントデータは、アプリケーション38が各自のクエリを特定のパーソナライゼーション・タスクの実施に必要な特定のタイプおよび項目のイベントデータに限定することを可能にするような形式で利用可能とされる。さらに、オフラインでのデータマイニング分析結果に依存するシステムとは異なり、アプリケーション38は、イベントデータの単なる要約とは違って、「生の」イベントデータ自体へのアクセスを有している。一部の実施形態において、イベント履歴サーバのユーザは、各自のブラウズ履歴がイベント履歴サーバによって記録されるべきか否かを制御するオプションを与えられてもよい(例えば、オプトインまたはオプトアウトのオプションを設けてもよい)。開示されたアーキテクチャの別の特徴および利点について以下に記載する。
II.イベントオブジェクトのコンテンツおよび検索
上記に示されたように、所与のイベントに関して記憶されたデータセットはイベント履歴サーバ32によりイベントオブジェクトとして記憶される。一実施形態において、各イベントオブジェクトは、以下のコンポーネントを含む。すなわち、主題(Subject)、値(Value)、タグ(Tag)および時間(Time)である。以下、これらのコンポーネンのそれぞれについて説明する。一実施形態において、これらのコンポーネントは、3つの一般的なイベントタイプ、すなわちマウスクリック、インプレッションおよびマウスオーバーイベントに関するデータを取得するために用いられる。
上記に示されたように、所与のイベントに関して記憶されたデータセットはイベント履歴サーバ32によりイベントオブジェクトとして記憶される。一実施形態において、各イベントオブジェクトは、以下のコンポーネントを含む。すなわち、主題(Subject)、値(Value)、タグ(Tag)および時間(Time)である。以下、これらのコンポーネンのそれぞれについて説明する。一実施形態において、これらのコンポーネントは、3つの一般的なイベントタイプ、すなわちマウスクリック、インプレッションおよびマウスオーバーイベントに関するデータを取得するために用いられる。
イベントオブジェクトの主題は、マウスクリック、マウスオーバーおよびインプレッションイベントに関して、付随する表示要素のタイプ(例えば、項目、ブラウズノード、外部URLまたは探索クエリを提出するためのリンク等)を示すコードである。ユーザからの探索クエリの提出を記述するために、1つ以上の主題コードが定義されてもよい。イベントの主題は、イベントのタグ(後述)とともに、イベントのタイプ(例えば、ブラウズノードのマウスクリックやカタログ項目のインプレッション等)を完全に指定するものである。
下記の表1は、サポートされうるイベント主題のいくつかの例を記載し、そのイベント主題のそれぞれに関して値フィールドに記憶されたデータを示している。これらの例は、ウェブサイトシステム30が、項目(商品、ニュース記事等)を見つけるためにユーザによってブラウズおよび探索されうる電子カタログのホストとなっており、かつウェブサイトシステム30が外部のウェブサイトおよびウェブページを見つけるための探索エンジンを実現しているということを前提にしている。理解できるように、特定のウェブサイトシステム30内に記録されたイベントのタイプは、主にそのシステムの性質および目的によって決まり、表1に列記されるものと大きく異なる場合がある。
さらに、イベントタイプは、アプリケーションの付加的な特徴をサポートするために、変更または拡張されてもよい。例えば、表1に示されていない一実施形態においては、ユーザによって入力されたコメントを記憶する目的で、「コメント」イベントタイプが定義されている。コメントイベントのためのアプリケーションの一つは、ユーザが各自の探索結果にコメントを付け、後に当該コメントの再呼び出しおよび見直しを行なうことを可能にすることを含む。自らのコメントを他のユーザに対し公開する機能をユーザに与えてもよい。マウスクリック、インプレッションおよびマウスオーバーイベントとは異なり、コメントイベントは、イベントデータを後に検索するために記憶するというユーザからの明示的な要求を表している。
タグは、以下の一部または全てを示すフラグセットとして実現してもよい。(1)一般的なイベントのタイプ(例えば、マウスクリック、インプレッションまたはマウスオーバー)、(2)イベントの値部分が(例えば、特定のテキストストリングが長すぎるために)短縮されたか否か、(3)イベントが「表示不可能」、つまりユーザによって閲覧が不可能であるか否か、および(4)イベントが持続的か一時的か。
タグの「表示不可能」フラグは、例えば、ユーザが自らの閲覧可能なイベント履歴からイベントを効果的に除去することを可能にするために用いることができる。例えば、ウェブサイトシステム30は、アプリケーション38と、それを介して各自のイベント履歴を閲覧および探索することが可能になる関連ユーザインタフェイスとを設け、選択されたイベントを係る履歴から「削除」してもよい。ユーザが特定のイベント(例えば、特定の探索クエリ提出またはブラウズノードアクセス)を削除すると、関連したイベントをユーザが閲覧することを防ぐために、対応するイベントオブジェクトには、イベント履歴サーバ32によって「表示不可能」とマークがつけられるが、イベント履歴サーバ32のクライアントは依然としてこれにアクセスすることができる。
「持続的/一時的」フラグは、ある一定の時点で持続的記憶装置から永久的に削除することができるイベントにマークを付けるために用いてもよい。この特徴は、一定の期間後にはほとんどあるいは全く価値がなくなるイベントオブジェクトを放棄するために用いることができ、その結果、関連した持続的記憶装置は、他のデータの記憶用に利用可能となる。
時間コンポーネントは、イベントの発生時刻を示す数値であり、例えば、1970年からの秒単位で表すことができる。持続的/一時的フラグが「一時的」にセットされている場合は、イベントオブジェクトの有効期限を指定する付加的な値を含んでいてもよい。期限切れのイベントオブジェクトは、バックグラウンドタスクにより、または別の何らかの適切な方法を用いて周期的に持続的記憶装置から削除されてもよい。
イベント履歴サーバ32によって実現されたクエリセットは、クライアントがイベントの主題、値、タグおよび時刻に基づいて所与のユーザまたはセッションに対するイベントオブジェクトを検索することを可能にすることが好ましい。例えば、クライアントは、特定のタイプの表示要素の全てのインプレッション(または全てのマウスクリックイベント)に対するイベントオブジェクト、または特定の表示要素の種類および値の全てのインプレッション(または全てのマウスクリックイベント)を要求することができる。また、クエリセットは、クライアントがイベントの時間範囲(例えば、「最後の10日間」または「2003年2月10日以降」)を指定することを可能にすることが好ましい。
上述のように、クエリセットは、以下の形式のクエリもサポートする。「タイプTかつ値VのイベントがユーザXの履歴内に存在するか?」。イベントのタイプは、一般的なイベントタイプ(例えば、マウスクリックやインプレッション)、付随する表示要素のタイプまたはその両方としてクエリにおいて指定することができる。例えば、「タイプ=ウェブ探索クエリ、かつ、値=ハレー彗星のイベントがユーザXの履歴に存在するか?」という形式のクエリは、ユーザXが、クエリ「ハレー彗星」を用いて一般的なウェブ探索を行なったか否かを明らかにする。さらに、クエリセットは、「ユーザXの履歴においてタイプTかつ値Vのイベントが発生したのはいつか?」というタイプのクエリをサポートする。
III.ソフトウェアアーキテクチャ
図2は、一実施形態におけるキャッシュ層サーバおよび記憶層サーバ42、46上で実行される主要ソフトウェアコンポーネントを示している。図示されたように、各記憶層サーバ46は、キャッシュ層40からのクエリおよび更新を処理するためのサービスコード60を実行する。このサービスコードは、バークレーデータベースを実現するために用いられるソフトウェア等のデータベースソフトウェア62と通信を行なう。データベースソフトウェア62は、ディスクドライブ記憶装置64において、イベントデータの1つまたはそれ以上のデータベースを管理している。一実施形態において、各記憶層サーバ46は、複数のパブリッシュ/サブスクライブ式のサービス処理を実行し、これらは、それぞれ、各自のユーザIDのセットまたは範囲に対応し、かつ、各自のバークレーデータベースにのみアクセスを行なう。このアーキテクチャにより、データベースの管理が大いに簡素化される。各記憶層サーバ46は、その他に、記憶層サーバを同期状態に保つ役割を担う同期サービスコード68をも実行する。同期サービスは、例えば、1つの記憶層サーバが一時的に切断された後に持続的データベースを同期化するために用いられる。
図2は、一実施形態におけるキャッシュ層サーバおよび記憶層サーバ42、46上で実行される主要ソフトウェアコンポーネントを示している。図示されたように、各記憶層サーバ46は、キャッシュ層40からのクエリおよび更新を処理するためのサービスコード60を実行する。このサービスコードは、バークレーデータベースを実現するために用いられるソフトウェア等のデータベースソフトウェア62と通信を行なう。データベースソフトウェア62は、ディスクドライブ記憶装置64において、イベントデータの1つまたはそれ以上のデータベースを管理している。一実施形態において、各記憶層サーバ46は、複数のパブリッシュ/サブスクライブ式のサービス処理を実行し、これらは、それぞれ、各自のユーザIDのセットまたは範囲に対応し、かつ、各自のバークレーデータベースにのみアクセスを行なう。このアーキテクチャにより、データベースの管理が大いに簡素化される。各記憶層サーバ46は、その他に、記憶層サーバを同期状態に保つ役割を担う同期サービスコード68をも実行する。同期サービスは、例えば、1つの記憶層サーバが一時的に切断された後に持続的データベースを同期化するために用いられる。
各キャッシュ層サーバ42は、自己のイベントデータのキャッシュ43にアクセスするキャッシュ層サービスコード70を実行する。イベントデータは、ユーザID(ユーザが承認されている場合)ごとおよびセッションIDごとにキャッシュ43に記憶されていることが好ましい。図2に示すように、キャッシュ層サービスコード70は、クライアントから受信した更新およびクエリを処理するためのコンポーネント72、74を含む。
図2にさらに示すように、両方の種類のサーバ42、46は、ブルームフィルタの生成および処理を行なうためのソフトウェアコンポーネントも含むことが好ましい。以下に説明するように、各ブルームフィルタは、ユーザのイベントデータの一部を圧縮して表現したものであり、関連したイベントオブジェクトを検索することなくユーザが特定の動作を実行したか否かを評価するために用いることができる。例えば、一実施形態において、ブルームフィルタは、所与のユーザが所与のURLにアクセスしたか否かを判定するために必要な処理およびデータ検索を軽減するために用いられる。
IV.探索パーソナライゼーション・アプリケーション例
上記に示されたように、イベント履歴サーバ32の1つのアプリケーションは、特定ユーザによって以前にアクセスされた任意の探索結果項目を識別するパーソナライズされた探索結果ページを生成することを含む。探索結果ページは、このような項目がそれぞれアクセスされた時刻をさらに示してもよい。この特徴は、内部カタログ探索(この場合、探索結果ページは、例えば、ユーザが項目詳細ページを閲覧したカタログ項目を示してもよい)およびウェブ探索(この場合、探索結果ページは、どの外部ウェブページが閲覧されたかを示してもよい)の両方に適用することができる。
上記に示されたように、イベント履歴サーバ32の1つのアプリケーションは、特定ユーザによって以前にアクセスされた任意の探索結果項目を識別するパーソナライズされた探索結果ページを生成することを含む。探索結果ページは、このような項目がそれぞれアクセスされた時刻をさらに示してもよい。この特徴は、内部カタログ探索(この場合、探索結果ページは、例えば、ユーザが項目詳細ページを閲覧したカタログ項目を示してもよい)およびウェブ探索(この場合、探索結果ページは、どの外部ウェブページが閲覧されたかを示してもよい)の両方に適用することができる。
図3は、この特徴の一実施形態に係るウェブ探索結果ページの例を示している。この例において、ウェブ探索クエリ「ロード・オブ・ザ・リング」により、各探索結果項目(3つが図示されている)が対応するURLを有する外部ウェブページまたはサイトである探索結果リストが作成されている。一実施形態においては、探索結果リストに含まれるリンクは、ユーザのブラウザを当該外部ページに直ちにリダイレクトするために用いられる内部リンク(すなわち、これらは元のウェブサーバシステム30を示している)であり、これにより、イベント履歴サーバ32は、ユーザによって閲覧の選択がなされた探索結果(外部URL)を記述したイベントオブジェクトを記録することが可能となる。別の実施形態においては、ユーザの外部URLの選択は、ユーザの選択を検出および報告するジャバスクリプトコンポーネントを実行することによってログ記録される。
図3のリストの第1の項目100は、ユーザが以前にこの特定のURLにアクセスしたことを示す、コメント「閲覧済み」を含む。これにより、ユーザは、すでに閲覧済みのウェブページを容易に識別することができる。ユーザのイベント履歴は、(単にユーザのコンピュータ36上だけではなく)サーバ側で記憶されているため、ユーザが単に別のコンピュータ36から上記特定のウェブペーを閲覧した場合であっても、「閲覧済み」のステイタスは適切に示される。この項目100上でマウスのカーソルを動かすことにより、ユーザは、「以前2月14日に閲覧済み」というマウスオーバーテキストによって示されるように、彼/彼女が最後にこのURLにアクセスした日付を見ることもできる。あるいは、このアクセス日付のテキストは、探索結果テキスト100と共にインライン表示されてもよい。ユーザが特定のURLにアクセスした回数やそのURLを発見した過去の探索クエリのテキスト(現在の探索クエリと異なる場合)等の別の様々なタイプの情報をユーザのイベント履歴に基づいてコメントに組み込むことが可能である。
図4は、探索アプリケーション38がイベント履歴サーバ32と対話を行なって図3に示されるタイプの探索結果ページを生成する一般的な処理を示している。この例においては、ユーザはウェブサイトシステム30によって承認されていることを前提としている。ブロック110で示されるように、探索アプリケーションは、まず探索クエリを受信し、探索を実行して探索結果セットを生成する。探索が一般的なウェブ探索である場合、各探索結果項目は、探索に応答するウェブページのURLの形式となり、(図3に示されるような)このようなウェブページから抽出されたテキストの抜粋とともに表示することができる。当該技術分野において知られているように、このような探索の実行は、探索クエリをウェブクローラープログラム(web crawler program)によって生成されたインデックスと比較することを典型的に含む。探索がウェブサイトシステム30がホストとなっている電子カタログに向けられている場合、各探索結果項目は、対応する項目詳細ページにアクセスするためにクリックすることが可能な項目説明の形式であってもよい。一部の実施形態において、所与の探索において返信された探索結果は、外部ウェブページおよび内部でホストされる電子カタログから選択された項目の両方を含みうる。
ブロック112で示されるように、探索アプリケーションは、次に各探索結果項目(あるいは少なくとも現在の探索結果ページ上で表示されるべき探索項目)に対する別個のクエリをイベント履歴サーバ32に送信し、ユーザがその項目に以前にアクセスしたか否かを判定する。一般的なウェブ探索の場合、このようなクエリはそれぞれ、「ユーザXは、URL=<URL値>を以前に選択したか?」という形式であってもよい。カタログ探索の場合、各クエリは、「ユーザXは、カタログ項目=<項目ID>を以前に選択したか?」という形式であってもよい。以下に説明されるように、イベント履歴サーバ32はこれらのタイプのクエリを効率的に処理するためにブルームフィルタを用いることが好ましいが、ブルームフィルタの使用は省略してもよい。
ブロック114で示されるように、以前にユーザによってアクセスされたと判明した各探索結果項目(存在する場合)に関して、追加のクエリをイベント履歴サーバ32に送信し、当該項目へのユーザの最後のアクセス日(時刻)を要求することが好ましい。最終的に、ブロック116に示されるように、図3に示されたタイプの閲覧済み項目の埋め込みコメントを含む探索結果ページが生成される。探索アプリケーションは、表示のために探索結果項目を順位付け/順序付けを行なう際、各探索結果項目の閲覧済み/未閲覧のステイタスを考慮してもよい。
明らかなように、探索クエリに応じてイベント履歴サーバ32が実際にはアクセスされないように、図4で示す処理を変更することが可能である。例えば、イベント履歴サーバ32の負荷を軽減するために、特定ユーザによって選択された特定の探索結果URLを示すイベントデータを、イベント履歴サーバ32から周期的に検索して別個の「探索パーソナライゼーション」サーバに記憶することが可能である。そして、この別個のサーバを、「ユーザXは外部URL Yにアクセスしたか?」とういうタイプの要求に応じるタスクに割り当てることができる。同じことが、以下に説明する図5の処理に対しても当てはまる。
探索アプリケーションのユーザインタフェイスは、以前に閲覧した項目、以前に閲覧していない項目または特定の期間内に閲覧された項目(例えば、過去7日間)に探索範囲を限定するオプションをユーザに与えることができる。この特徴は、イベント履歴サーバ32から返信されたクエリ結果が、表示されるべき探索結果項目の判定に用いられること以外は、図4に示されるものと同様の処理フローを用いて実現することができる。
明らかなように、上記の探索結果パーソナライゼーションの特徴および図5を参照して説明した特徴は、他のタイプの項目の探索にも適用することができる。例えば、オンラインオークションサイトとの関連では、発見されたオークションのうちユーザによって閲覧されたのはどれか、各オークションが閲覧されたのはいつか、および場合によっては、ユーザがこのようなオークションのそれぞれに入札を行なったか否かを示すコメントをオークションの探索結果に付してもよい。同様に、ユーザによって特定の書き込みが閲覧されたか否か/いつ閲覧されたかを示すコメントを、掲示板の書き込みまたはブログ(ウェブログ)の書き込みの探索結果に付してもよい。
図3に戻って、第2の探索結果項目120は、イベント履歴サーバ32を用いて実現することができる別の特徴を示している。この特徴は、ユーザが以前に同様の探索クエリを提出したかどうか、および、提出した場合には新規探索結果項目(すなわち、過去の探索結果セットに存在しない項目)が見つかったか否かを判定することを含む。この特定例において、探索結果ページは、ユーザが以前2月14日に同様の探索を行なったこと、およびURL「lordotrings.com」に対応する項目が過去の探索において現れなかった新規項目であることを明らかにしている。
図5は、探索アプリケーション38がイベント履歴サーバ32と対話を行なってこの「新規項目コメント」の特徴を実施する一般的な処理を示している。図3に示す種類のコメント付き探索結果ページを生成するために、この処理を図4の処理と組み合わせてもよい。図5に示されたように、探索アプリケーションは、まず探索クエリ(ブロック130)を受信および実行し、イベント履歴サーバ32に照会を行なってユーザが以前に同様のクエリを提出したか否かを判定する(ブロック132)。ユーザがこのクエリを提出していない場合、「新規項目」コメントを加えることなく探索結果ページが生成される(ブロック140)。
同様の探索クエリが以前に提出されていた場合、イベント履歴サーバ32は、最終提出時刻について再度照会を受ける(ブロック134)。また、ブロック136に示されるように、イベント履歴サーバ32は、(存在する場合には)現在の探索結果項目のうちユーザに表示されていない(すなわち、インプレッションイベントの対象となったことがない)のはどれかを判定するための照会を受ける。この照会の範囲を、過去の探索の時点またはその直後に発生したインプレッションに、必要に応じて限定してもよい。ブロック138で示されるように、現在の探索結果セットに何らかの新規探索結果項目が存在する場合、これらに対しては、図3に示すようにコメントが付される(項目120)。新規項目の重要性の順位を上昇させ、新規項目が表示される可能性を高めてもよい。
図5に示された方法の1つの変形は、ユーザが(リピート)探索を同様の探索クエリの過去の実行において現れなかった項目に明示的に限定することを可能にすることである。このようなオプションは、例えば、ウェブサイトの探索ページ上のチェックボックスとして設けることができる。
IV.ユーザが以前に所与の要素を閲覧またはアクセスしたか否かを判定するためのブルームフィルタの使用
上記のように、「ユーザXの履歴内にタイプTかつ値Vのイベントが存在するか?」という形式のクエリに応答する際の持続的なデータ検索の必要性を軽減するために、イベント履歴サーバ32によってブルームフィルタが使用されてもよい。ブルームフィルタは、例えば、特定ユーザが特定URLを閲覧または選択したか否かを判定するために用いることができる。
上記のように、「ユーザXの履歴内にタイプTかつ値Vのイベントが存在するか?」という形式のクエリに応答する際の持続的なデータ検索の必要性を軽減するために、イベント履歴サーバ32によってブルームフィルタが使用されてもよい。ブルームフィルタは、例えば、特定ユーザが特定URLを閲覧または選択したか否かを判定するために用いることができる。
背景として、ブルームフィルタとは、ハッシュ関数のセットによって生成されたビットシーケンスまたはアレイである。ブルームフィルタは、特定の項目が、大きいセットの要素であるか否かを速やかに調べるために用いられる。ブルームフィルタの一般的な応用例の1つは、所与のオブジェクト(オブジェクトのURLとして識別されるような)がウェブページのキャッシュに現在記憶されているか否かをテストすることである。具体的には、オブジェクトがキャッシュに追加されると、オブジェクトのURLにハッシュ関数が適用され、ブルームフィルタのどのビットをONにすべきかが判定される。オブジェクトが要求されると、要求されたオブジェクトのURLにこれらのハッシュ関数が再度適用され、次にブルームフィルタの対応するビットの全てがONになったか否かを判定するテストが行われる。1つ以上のビットがONでなかった場合、オブジェクトはキャッシュに記憶されない。一方、全てのビットがONである場合、要求されたオブジェクトがキャッシュに存在する可能性が非常に高い。したがって「フォールスポジティブ(false positive)」すなわち「偽のヒット」はありうるが、「フォールスネガティブ(false negative)」すなわち「偽のミス」は通常ありえない。
本発明の1つの側面によると、所与のユーザに対し、そのユーザのイベント履歴の何らかの側面またはセグメントを記述するために、1つまたはそれ以上のブルームフィルタが生成される。ブルームフィルタは、持続的記憶層44(図1)によって生成および記憶され、クエリへの応答のためにキャッシュ層40に渡されることが好ましい。異なるタイプのクエリに応答するために、所与のユーザ用に異なるブルームフィルタを生成してもよい。例えば、異なるタイプの活動(例えば、URLアクセス、URLインプレッション、URLアクセスおよびインプレッション、カタログ項目アクセス、マウスオーバーイベント等)用に異なるタイプのブルームフィルタを生成することができる。また、異なる期間用に異なるブルームフィルタを生成してもよい。
図6は、承認されたユーザであるユーザXによるURLアクセスをテストするために、ブルームフィルタが用いられる一般的な処理を示している。同図はURLアクセスに限定されているが、図示される処理フローは、他のタイプのイベント活動にも該当する。図6のステップ1において、記憶層サーバ46は、ユーザX用に、1つ以上のブルームフィルタを生成する。このステップは、例えば、ユーザXに対する関連したクエリまたは更新の受信に応じて行なってもよい。特にURLアクセスに対するブルームフィルタを生成するために、記憶層サービスコード(図2)は、まずユーザXに対するURLアクセスイベントを検索し、アクセスされた各URLにハッシュ関数のセットを適用し、関連したブルームフィルタのビットをセットする。以下に述べるように、ブルームフィルタの大きさは、所望の数のイベントの記憶を可能にしつつフォールスポジティブの確率を所望の閾値未満に維持するように選択することができる。1つの記憶層サーバ46によって生成されたブルームフィルタは、同期サービスにより(1つまたは複数の)別の記憶層サーバに渡されてもよい。ブルームフィルタは、キャッシュ層サーバ42により付加的に、または二者択一的に生成されてもよい。
図6のステップ2において、キャッシュ層サーバは、「ユーザXはURL Yにアクセスしたか?」という形式のクエリを受信する。上述の探索結果コメントの特徴との関連では、1つの探索結果ページを生成する目的で、所与のユーザに関してこのようなクエリを多数受信することができる。ステップ3において、キャッシュ層サーバ42は、ブルームフィルタがキャッシュ43にまだ記憶されていない場合、記憶層サーバ46のうちの1つから該当するブルームフィルタを検索する。
ステップ4において、キャッシュ層サーバ42は、該当するブルームフィルタをテストして、URLに関して、対応するビットがONであるか否かを確かめる。ビットのうち1つ以上がOFFである場合(すなわち、ユーザXの該当イベント履歴においてURL Yへのアクセスが存在しない)場合、キャッシュ層サーバ42は、持続的記憶層にクエリを渡すことなく、NOの回答を返信する(ステップ5)。一方、全てのビットがONである(すなわち、ユーザXのイベント履歴にURLアクセスが存在している可能性が高い)場合、記憶層サーバ46のうちの1つにクエリが渡され(ステップ6)、URLアクセスに対するユーザXの実際のイベントデータがチェックされる。ステップ7において、記憶層サーバ46は、キャッシュ層サーバ42を介してクエリに対する応答を返信する。記憶層サーバに対して照会を行なう代わりに(ステップ6)、キャッシュ層サーバを、ブルームフィルタのテストがポジティブである場合に単にYESの回答を返信するよう構成してもよいが、この手法によると、まれにユーザに対して不正確な結果が提示される場合がある。
URLアクセスを反映した更新がそれ以降ユーザXについて受信されるので、キャッシュ層サーバ42は、関連したブルームフィルタの自身のコピーを更新し、これらの更新を反映させる(しかし、記憶層サーバ46は更新を行なわないことが好ましい)。例えば、ユーザXが図3に示すタイプのウェブ探索結果ページから探索結果項目(URL)を選択する場合、関連したブルームフィルタがキャッシュ43内で更新され、選択されたURLに関連付けられたビットがセットされる。したがって、クエリに応答するためにキャッシュ層によって用いられるブルームフィルタは、該当するユーザの最新のブラウジング活動を反映している。ある時点において、ブルームフィルタを、非アクティブであることを理由にキャッシュ43から放棄してもよく、この時点で、更新されたブルームフィルタがその後の使用のために持続的記憶層に(元のバージョンの代わりに)書き込まれる。
ある時点において、所与のブルームフィルタの容量が満たされる、すなわち、所望の平均フォールスポジティブ確率を超えずにさらなるイベントを記憶することができなくなるかも知れない。この時点で、より大きいイベント容量を提供するために、ブルームフィルタをより大きい(例えば、4キロバイトの代わりに8キロバイトの)ブルームフィルタと交換することができる。
上記した説明においては、承認されたユーザに対するブルームフィルタの生成および使用に焦点をおいたが、ブルームフィルタは、キャッシュ層サーバ42によって、未承認のユーザに関しても生成することができる。例えば、ブラウジングセッションの始めに、割り当てられたキャッシュ層サーバ42は、ユーザに関してフィルタを生成してもよく、また、それ以降、そのユーザに関して、新たなイベントを用いてブルームフィルタを更新してもよい。このような「セッション特有」のブルームフィルタを、上記と同様にクエリに対して応答するために用いることができる。
V.ブラウザベースのイベントデータの報告
図7は、イベント履歴サーバ32が、ブラウザベースのイベント報告コンポーネント160によって報告されたイベントデータを記録する実施形態を示している。イベント報告コンポーネント160は、イベント履歴サーバ32のユーザのコンピュータ36の一部または全てにおいて、ウェブブラウザ162のコンポーネントとして実行される。図示されたように、イベント報告コンポーネント160は、ブラウザツールバーコンポーネント164の一部として実現されることが好ましい。ツールバーコンポーネント164は、例えば、ユーザによってダウンロードおよびインストール可能な任意選択のブラウザプラグインとして設けることができる。あるいは、イベント報告コンポーネント160は、独立型ブラウザプラグインとして、ツールバー以外のプラグインの一部として、またはウェブブラウザ162の固有コードの一部として実現することができる。
図7は、イベント履歴サーバ32が、ブラウザベースのイベント報告コンポーネント160によって報告されたイベントデータを記録する実施形態を示している。イベント報告コンポーネント160は、イベント履歴サーバ32のユーザのコンピュータ36の一部または全てにおいて、ウェブブラウザ162のコンポーネントとして実行される。図示されたように、イベント報告コンポーネント160は、ブラウザツールバーコンポーネント164の一部として実現されることが好ましい。ツールバーコンポーネント164は、例えば、ユーザによってダウンロードおよびインストール可能な任意選択のブラウザプラグインとして設けることができる。あるいは、イベント報告コンポーネント160は、独立型ブラウザプラグインとして、ツールバー以外のプラグインの一部として、またはウェブブラウザ162の固有コードの一部として実現することができる。
ブラウズベースのイベント報告コンポーネント160は、ユーザによってアクセスされた全てのウェブサイトおよびページについてイベントデータを報告することが好ましい。例えば、イベント報告コンポーネント160は、ユーザによってアクセスされた全てのウェブページ上での全てのマウスクリックまたはその他の選択イベントを報告することができる。イベント報告コンポーネント160は、マウスオーバーイベント、インプレッション、ウェブブラウザ162上の「戻る」ボタンの選択等の別のタイプのブラウジングイベントをも報告することができる。
ブラウザベースのイベント報告コンポーネント160は、図1のサーバベースのイベント報告コンポーネント35に代えて用いることができる。あるいは、所与のシステム内で両タイプのイベント報告コンポーネント35、160を用いてもよい。例えば、インストールされたツールバー164を有しないユーザに関しては、イベント履歴サーバ32は、サーバベースのイベント報告コンポーネント35によって報告されたデータのみを取得してもよく、その場合、イベントデータは、1つ以上の特定のウェブサイトのブラウジング中に発生するイベントのみを反映する。自分のコンピュータ36にインストールされたツールバー164を有するユーザに関しては、取得されたイベントデータは、別のウェブサイトにも及んでいてもよい。
ブラウザベースのイベント報告コンポーネント160から収集されたイベントデータは、ユーザに対して様々な異なるパーソナライゼーション・サービスを提供するために用いられることができる。例えば、ユーザが、自分がアクセスした、何らかのユーザ指定の基準を満たす全てのウェブサイトのリストを閲覧することを可能にするサービスを提供することができる。このサービスを用いて、ユーザは、例えば、ウェブ上でそれぞれが行った全ての支払いトランザクションのリストを閲覧したり、アクセスした全ての旅行関連ウェブサイトの履歴を閲覧することができる。このようなサービスを実現するために、イベントオブジェクト内に含まれるデータフィールドを必要に応じて補足することができる。
図7に示されたように、パーソナライズされたツールバーコンテンツは、サーバ側のツールバー・パーソナライゼーション・アプリケーション170によって生成されてもよい。このアプリケーション170は、ユーザに対して表示するためのコンテキスト依存のツールバーメッセージを生成するために、イベント履歴サーバ32から検索されたイベントデータを用いることができる。例えば、ユーザが特定のウェブサイトにアクセスする場合、ツールバー・パーソナライゼーション・アプリケーション170は、そのウェブサイト上でユーザによって実行されたトランザクションの履歴を検索および表示することができる。さらに、ツールバーは、現在のブラウジングセッション中に訪問された全てのウェブサイトまたはページに関するリアルタイムな情報によってパーソナライズされてもよい。
VI.別のパーソナライゼーション・アプリケーション
理解できるように、別の数多くのタイプのパーソナライゼーション・アプリケーションおよび特徴がイベント履歴サーバ32によって可能となる。上述のように、そのようなアプリケーションの1つは、ユーザが自分のイベント履歴を閲覧、編成すること、および場合によってはこれらにコメントを付けることを可能にすることを含む。これは、部分的には、ウェブページのセット等の、ユーザがイベント履歴フォルダを作成し、イベントを選択してこのようなフォルダに追加することができるユーザインタフェイスを提供することにより実現できる。イベントタイプ、イベント値、イベント発生時刻およびその他の様々な基準ごとに、ユーザが自分のイベント履歴を探索することができるイベント探索エンジンを設けてもよい。上述のように、ユーザが特定のイベントを自分のイベント履歴から「削除」することを許可してもよい。
理解できるように、別の数多くのタイプのパーソナライゼーション・アプリケーションおよび特徴がイベント履歴サーバ32によって可能となる。上述のように、そのようなアプリケーションの1つは、ユーザが自分のイベント履歴を閲覧、編成すること、および場合によってはこれらにコメントを付けることを可能にすることを含む。これは、部分的には、ウェブページのセット等の、ユーザがイベント履歴フォルダを作成し、イベントを選択してこのようなフォルダに追加することができるユーザインタフェイスを提供することにより実現できる。イベントタイプ、イベント値、イベント発生時刻およびその他の様々な基準ごとに、ユーザが自分のイベント履歴を探索することができるイベント探索エンジンを設けてもよい。上述のように、ユーザが特定のイベントを自分のイベント履歴から「削除」することを許可してもよい。
本発明を特定の好適な実施形態に関して説明したが、本明細書に記載した全ての特徴および利点が提供されていない実施形態を含む、当業者に明らかな別の実施形態および応用例もまた本発明の範囲に含まれる。したがって、本発明の範囲は、添付の特許請求の範囲を参照することによってのみ定められる。
Claims (45)
- オンラインユーザからの要求に対し、ウェブページを生成および返信することによって応答するウェブサーバシステムであって、承認されたユーザに対するパーソナライズされたコンテンツを該ユーザのブラウズ履歴に基づいて生成する1つ以上のアプリケーションを備えるウェブサーバシステムと、
前記ウェブサーバシステムの複数のユーザのそれぞれのブラウジングセッション中に発生するイベントを記述したイベントデータを持続的に記憶し、前記1つ以上のアプリケーションが前記イベントデータをリアルタイムに利用できるようにして前記ユーザのウェブページのパーソナライゼーションを促進するイベント履歴サーバとを備え、
前記イベント履歴サーバが、前記1つ以上のアプリケーションがイベントタイプごとおよびイベント発生時刻ごとに所与のユーザのイベントデータを検索することができるクエリインタフェイスを、実現しているウェブサイトシステム。 - 前記イベント履歴サーバが、所与のイベントに関して、前記イベントデータを少なくともイベントタイプ識別子、イベント値、ユーザIDおよびタイムスタンプを含むイベントオブジェクトとして記憶する請求項1に記載のウェブサイトシステム。
- 前記イベント履歴サーバが、ユーザIDごとに前記イベントデータを持続的に記憶する少なくとも1つの記憶層サーバを備え、オンラインユーザのイベントデータをキャッシュする少なくとも1つのキャッシュ層サーバをさらに備える請求項1に記載のウェブサイトシステム。
- 前記キャッシュ層サーバが、未承認のユーザのイベントデータをブラウジングセッション中に収集し、前記ブラウジングセッション中に前記未承認のユーザが承認された場合に、その収集されたイベントデータを持続的に記憶するために前記少なくとも1つの記憶層サーバに渡すように構成されている請求項2に記載のウェブサイトシステム。
- 前記イベント履歴サーバが複数のキャッシュ層サーバを備え、そのそれぞれが、所与のユーザがブラウジングセッションを通じて特定のキャッシュ層サーバに割り当てられた状態に保たれるように、それぞれ異なるブラウズセッションIDのセットに割り当てられている請求項1に記載のウェブサイトシステム。
- 前記イベント履歴サーバが、ユーザIDごとに同様なイベントデータを持続的に記憶する複数のミラーリングされた記憶層サーバを備える請求項1に記載のウェブサイトシステム。
- 前記イベント履歴サーバの前記クエリインタフェイスが、「ユーザXはURL Yにアクセスしたか?」という形式のクエリをサポートしている請求項1に記載のウェブサイトシステム。
- 前記イベント履歴サーバの前記クエリインタフェイスが、「ユーザXがURL Yにアクセスしたのはいつか?」という形式のクエリをサポートしている請求項1に記載のウェブサイトシステム。
- 前記イベント履歴サーバが、対応するウェブサイトの全ての承認されたユーザの実質的に全てのマウスクリック動作に関してイベントデータを記録する請求項1に記載のウェブサイトシステム。
- 前記イベント履歴サーバが、動的に生成されたウェブページ上でユーザに対して提示された特定の項目を示すインプレッションイベントデータを記録する請求項1に記載のウェブサイトシステム。
- 前記1つ以上のアプリケーションが、ウェブページのインデックスを探索するための機能を提供するウェブ探索アプリケーションを備え、前記イベント履歴サーバを用いて、現在の探索を行なっているユーザによって以前にアクセスされたウェブ探索結果項目を識別および強調表示する請求項1に記載のウェブサイトシステム。
- 前記1つ以上のアプリケーションが、ユーザに、前記イベント履歴サーバによって記録されたような自分のブラウズ履歴データを対話式に閲覧および編成するための機能を提供するアプリケーションを備える請求項1に記載のウェブサイトシステム。
- 前記イベント履歴サーバが、特定ユーザのイベント履歴を反映したユーザ特有のブルームフィルタを生成し、前記ユーザ特有のブルームフィルタを用いて、前記1つ以上のアプリケーションからのクエリに対して応答する請求項1に記載のウェブサイトシステム。
- ユーザのウェブブラウズセッション中に発生するブラウジングイベントを記述したイベントデータを持続的に記憶し、かつこれらのブラウジングイベントに対するリアルタイムのアクセスを提供する複数の記憶層サーバであって、前記イベントデータを対応するユーザIDと関連付けてインデックス形式で記憶し、持続的に記憶されたイベントデータに対するクライアント要求が前記記憶層サーバのいずれかによって処理可能となるように、互いのミラーとして実現されている記憶層サーバと、
前記記憶層サーバと前記イベント履歴サーバのクライアントとの間の中継部として機能する複数のキャッシュ層サーバであって、それぞれが各キャッシュ内にキャッシュされたイベントデータを記憶しかつ前記キャッシュされたイベントデータを用いて前記クライアントからのクエリに応答する複数のキャッシュ層サーバとを備えるイベント履歴サーバ。 - 各キャッシュ層サーバが、それぞれ異なるユーザのセットに関してイベントデータをキャッシュするように、ブラウジングセッションが特定のキャッシュ層サーバに一意に割り当てられている請求項14に記載のイベント履歴サーバ。
- 前記キャッシュ層サーバが、イベント報告コンポーネントから受信した更新に対して、該更新によって指定されたイベントデータを用いて自分自身のキャッシュを更新すること、および該更新を、そこに指定された前記イベントデータを持続的に記憶するために前記記憶層サーバに転送することにより、応答する請求項14に記載のイベント履歴サーバ。
- 前記記憶層サーバが、所与のイベントに関して、前記イベントデータを、少なくともイベントタイプ識別子、イベント値およびタイムスタンプを含むイベントオブジェクトとして記憶する請求項14に記載のイベント履歴サーバ。
- 前記記憶層サーバおよび前記キャッシュ層サーバが、前記イベント履歴サーバのクライアントが少なくともユーザID、イベント時刻、イベント日付という基準に基づいてイベントオブジェクトを検索することが可能なクエリインタフェイスを実現している請求項17に記載のイベント履歴サーバ。
- 各キャッシュ層サーバが、未承認のユーザのイベントデータをブラウジングセッション中に収集し、前記ブラウジングセッション中に前記未承認のユーザが承認された場合に、その収集されたイベントデータを持続的に記憶するために記憶層サーバに渡すように構成されている請求項14に記載のイベント履歴サーバ。
- 前記キャッシュ層サーバが、「ユーザXはURL Yにアクセスしたか?」という形式のクエリをサポートしている請求項14に記載のイベント履歴サーバ。
- 前記キャッシュ層サーバが、「ユーザXがURL Yにアクセスしたのはいつか?」という形式のクエリをサポートしている請求項14に記載のイベント履歴サーバ。
- 前記記憶層サーバが、対応するウェブサイトの全ての承認されたユーザの実質的に全てのマウスクリック動作に関して、イベントデータを記憶する請求項14に記載のイベント履歴サーバ。
- 前記記憶層サーバが、動的に生成されたウェブページ上でユーザに対して提示された特定の項目を示すインプレッションイベントデータを記録する請求項14に記載のイベント履歴サーバ。
- ユーザからの探索クエリを処理する方法であって、前記ユーザからリモートであるサーバシステム上において、
前記探索クエリを実行し、前記探索クエリに応答するウェブページのURLを含むクエリ結果を生成するステップと、
前記URLのうち少なくとも1つに関して、サーバに照会を行い、前記ユーザに関して記憶されたイベントデータが、前記ユーザが以前に前記URLにアクセスしたことを示しているか否かを判定するステップと、
前記ユーザが以前に前記URLにアクセスしたことを前記イベントデータが示している場合に、前記URLが以前にアクセスされたことを前記ユーザに示すコメントを探索結果ページ内に含めるステップとを含む方法。 - 前記コメントが、前記ユーザに関して記憶された前記イベントデータによって示されるように、前記ユーザが前記URLにアクセスした日付を、さらに示す請求項24に記載の方法。
- 前記サーバが、少なくとも部分的に、前記ユーザに関して記憶されたブルームフィルタを用いて、前記ユーザが以前に前記URLにアクセスしたか否かを評価することにより、前記照会に対して応答する請求項24に記載の方法。
- 前記方法が、前記サーバに対して照会を行い、前記ユーザが前記URLにアクセスした日付を識別し、前記探索結果ページ内に前記日付を含めるステップをさらに含む請求項24に記載の方法。
- 前記方法が、ユーザに関して記憶された前記イベントデータによって示されるように、複数の前記URLのそれぞれに関して、前記サーバに対して個別に照会を行い、前記URLのそれぞれが、前記ユーザによって以前にアクセスされたか否かを判定するステップを含む請求項24に記載の方法。
- 請求項24に記載の方法を実施する実行可能なクエリ処理コードを備える探索エンジンシステム。
- インターネット探索を行うための機能を提供するシステムであって、
ユーザからの探索クエリに対し、該探索クエリに対して応答する外部ウェブページの探索結果URLを列記した探索結果ページを生成および返信することによって応答する探索アプリケーションと、
前記探索結果ページのブラウジング中にユーザによって選択された前記探索結果URLを示すユーザ特有のデータを記録するサーバとを備え、
前記探索アプリケーションが、前記サーバにアクセスし、特定の探索結果URLが探索を行っているユーザによって以前にアクセスされたか否かを判定し、どの探索結果URLが以前にアクセスされたかを示す表示を前記探索結果ページに組み込み、
これによりユーザが、自分自身が以前にアクセスした探索結果URLについて通知をうけるシステム。 - 前記サーバが、特定の探索結果URLが特定ユーザによってアクセスされた日付を示す情報を付加的に記録し、
前記探索アプリケーションが、前記情報を用いて、特定の探索結果URLがアクセスされた前記日付を前記探索結果ページ内でさらに示す請求項30に記載のシステム。 - 前記サーバが、ユーザによって選択された探索結果URLを反映するユーザ特有のブルームフィルタを生成し、かつ、該ユーザ特有のブルームフィルタを用いて、特定ユーザが以前に特定のURLにアクセスしたか否かを評価するように構成されている請求項30に記載のシステム。
- 前記システムが、探索結果URLの選択に応じてユーザを該URLにリダイレクトすることにより、前記ユーザによる前記探索結果URLの選択の追跡を容易にしている請求項30に記載のシステム。
- 前記サーバが、特定ユーザによって提出された特定の探索クエリを示すユーザ特有のデータをさらに記録し、
前記探索アプリケーションが、前記サーバによって記憶された前記データを用いて、現在の探索を行なっているユーザが以前に同様の探索を行なった際に現れなかった探索結果URLを識別し且つ強調表示する請求項30に記載のシステム。 - 前記サーバが、複数のイベントタイプのそれぞれに関して持続的にイベントデータを記憶し、ユーザ特有のイベントデータのイベントタイプごとのリアルタイム検索を提供するクエリセットを実現している請求項30に記載のシステム。
- ブラウズ履歴ベースの探索結果のパーソナライゼーションを提供する方法であって、
探索結果ページのブラウジング中にユーザによって選択された探索結果URLを示すイベント履歴データを保持するステップと、
前記イベント履歴データ内において示されるような前記ユーザによって選択された複数の前記探索結果URLを反映するユーザ特有のブルームフィルタを生成するステップと、
前記ユーザによって提出された探索クエリの結果内での所与のURLの発生に応じて、少なくとも部分的に、前記ユーザ特有のブルームフィルタを分析することにより、前記ユーザが以前に前記所与のURLにアクセスしたか否かを判定するステップと、
前記ユーザが前記所与のURLに以前にアクセスしたと判定された場合に、前記ユーザが以前に前記所与のURLにアクセスしたことを表示することにより、前記ユーザに対する探索結果ページをパーソナライズするステップとを含む方法。 - 前記探索結果URLのそれぞれが前記ユーザによっていつ選択されたかという記録を保持し、かつ、前記ユーザが前記所与のURLにいつアクセスしたかを表示することにより前記探索結果ページをパーソナライズするステップをさらに含む請求項36に記載の方法。
- 前記ユーザ特有のブルームフィルタが、複数の独立したウェブサイトのURLに対する前記ユーザのアクセスを反映する請求項36に記載の方法。
- 前記ユーザ特有のブルームフィルタが、複数のブラウズセッションにわたって前記ユーザによって行なわれた動作を反映する請求項36に記載の方法。
- 前記ユーザが以前に前記所与のURLにアクセスしたか否かを判定する前記ステップが、
前記ブルームフィルタが、前記ユーザの前記所与のURLへのアクセスの可能性を示しているか否かを最初に判定するステップと、
前記ブルームフィルタが前記アクセスの可能性を示している場合に、前記イベント履歴データにアクセスし、前記所与のURLへのアクセスが実際にそこで反映されているか否かを判定するステップとを含む請求項36に記載の方法。 - 前記ユーザが以前に前記所与のURLにアクセスしたか否かを判定する前記ステップが、
前記ブルームフィルタが、前記ユーザの前記所与のURLへのアクセスの可能性を示しているか否かを最初に判定するステップと、
前記ブルームフィルタが前記アクセスの可能性を示している場合に、前記所与のURLを前記ユーザによって以前にアクセスされたものとして取り扱うステップとを含み、その結果、前記ユーザのイベント履歴データに直接アクセスする必要がなくなる請求項36に記載の方法。 - ブラウズ履歴ベースのコンテンツ・パーソナライゼーションを提供する方法であって、
ウェブサイトとのユーザの対話を記述したブラウズ履歴を保持するステップと、
前記ユーザのブラウズ履歴内に含まれる複数のイベントを表すユーザ特有のブルームフィルタを生成するステップと、
少なくとも部分的に、前記ブルームフィルタを分析することにより、前記ユーザの前記ブラウズ履歴内に特定のイベントが存在するか否かを判定するステップと、
前記特定のイベントが前記ユーザの前記ブラウズ履歴内に存在するか否かを前記ウェブページが反映するように、前記ユーザ用に前記ウェブページをパーソナライズするステップとを含む方法。 - 前記ブルームフィルタが、前記ユーザの探索結果URLへのアクセスを反映し、
特定のイベントが前記ブラウズ履歴内に存在するか否かを判定する前記ステップが、前記ブルームフィルタを用いて、前記ユーザが以前に特定の探索結果URLにアクセスしたか否かを評価するステップを含む請求項42に記載の方法。 - 前記ブルームフィルタが、電子カタログから前記ユーザによって選択された複数の項目を反映し、
特定のイベントが前記ユーザの前記ブラウズ履歴内に存在するか否かを判定する前記ステップが、前記ブルームフィルタを用いて、前記ユーザが以前に前記電子カタログから特定の項目を選択したか否かを評価するステップを含む請求項42に記載の方法。 - 前記ブルームフィルタが、項目が前記ユーザに単に表示されただけで選択されなかったイベントを反映し、
前記ユーザ記のブラウズ履歴内に特定のイベントが存在するか否かを判定する前記ステップが、前記ブルームフィルタを用いて、以前に前記ユーザに対して特定の項目が表示されたか否かを評価するステップ含む請求項42に記載の方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/612,395 US7565425B2 (en) | 2003-07-02 | 2003-07-02 | Server architecture and methods for persistently storing and serving event data |
PCT/US2004/018468 WO2005006129A2 (en) | 2003-07-02 | 2004-06-10 | Server architecture and methods for persistently storing and serving event data |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007526537A true JP2007526537A (ja) | 2007-09-13 |
Family
ID=34062354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006517214A Pending JP2007526537A (ja) | 2003-07-02 | 2004-06-10 | 持続的にイベントデータを記憶および提供するためのサーバアーキテクチャおよび方法 |
Country Status (5)
Country | Link |
---|---|
US (4) | US7565425B2 (ja) |
EP (1) | EP1652027A4 (ja) |
JP (1) | JP2007526537A (ja) |
CA (1) | CA2530565C (ja) |
WO (1) | WO2005006129A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015132927A (ja) * | 2014-01-10 | 2015-07-23 | 日本電気株式会社 | 情報処理システム、情報処理装置、監視装置、監視方法、及び、プログラム |
Families Citing this family (298)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7801905B1 (en) * | 2003-11-25 | 2010-09-21 | Prabhdeep Singh | Knowledge archival and recollection systems and methods |
US10296919B2 (en) | 2002-03-07 | 2019-05-21 | Comscore, Inc. | System and method of a click event data collection platform |
US20080189408A1 (en) | 2002-10-09 | 2008-08-07 | David Cancel | Presenting web site analytics |
US8095589B2 (en) | 2002-03-07 | 2012-01-10 | Compete, Inc. | Clickstream analysis methods and systems |
US7885974B2 (en) * | 2002-11-18 | 2011-02-08 | Aol Inc. | Method and apparatus providing omnibus view of online and offline content of various file types and sources |
US7567979B2 (en) * | 2003-08-15 | 2009-07-28 | Microsoft Corporation | Expression-based web logger for usage and navigational behavior tracking |
US7756750B2 (en) | 2003-09-02 | 2010-07-13 | Vinimaya, Inc. | Method and system for providing online procurement between a buyer and suppliers over a network |
US7454417B2 (en) | 2003-09-12 | 2008-11-18 | Google Inc. | Methods and systems for improving a search ranking using population information |
US7505964B2 (en) | 2003-09-12 | 2009-03-17 | Google Inc. | Methods and systems for improving a search ranking using related queries |
US7386791B2 (en) * | 2003-09-24 | 2008-06-10 | Format Dynamics, Llc | Method and systems for creating a digital document altered in response to at least one event |
US20050097089A1 (en) * | 2003-11-05 | 2005-05-05 | Tom Nielsen | Persistent user interface for providing navigational functionality |
US8521725B1 (en) | 2003-12-03 | 2013-08-27 | Google Inc. | Systems and methods for improved searching |
US7451131B2 (en) * | 2003-12-08 | 2008-11-11 | Iac Search & Media, Inc. | Methods and systems for providing a response to a query |
US20060230040A1 (en) * | 2003-12-08 | 2006-10-12 | Andy Curtis | Methods and systems for providing a response to a query |
US7181447B2 (en) * | 2003-12-08 | 2007-02-20 | Iac Search And Media, Inc. | Methods and systems for conceptually organizing and presenting information |
US7774604B2 (en) * | 2003-12-10 | 2010-08-10 | Mcafee, Inc. | Verifying captured objects before presentation |
US20050131876A1 (en) * | 2003-12-10 | 2005-06-16 | Ahuja Ratinder Paul S. | Graphical user interface for capture system |
US8656039B2 (en) * | 2003-12-10 | 2014-02-18 | Mcafee, Inc. | Rule parser |
US8548170B2 (en) | 2003-12-10 | 2013-10-01 | Mcafee, Inc. | Document de-registration |
US7899828B2 (en) * | 2003-12-10 | 2011-03-01 | Mcafee, Inc. | Tag data structure for maintaining relational data over captured objects |
US7814327B2 (en) * | 2003-12-10 | 2010-10-12 | Mcafee, Inc. | Document registration |
US7984175B2 (en) | 2003-12-10 | 2011-07-19 | Mcafee, Inc. | Method and apparatus for data capture and analysis system |
US7774721B2 (en) * | 2003-12-15 | 2010-08-10 | Microsoft Corporation | Intelligent backward resource navigation |
US7890526B1 (en) * | 2003-12-30 | 2011-02-15 | Microsoft Corporation | Incremental query refinement |
US8954420B1 (en) | 2003-12-31 | 2015-02-10 | Google Inc. | Methods and systems for improving a search ranking using article information |
US7281008B1 (en) * | 2003-12-31 | 2007-10-09 | Google Inc. | Systems and methods for constructing a query result set |
US20050149498A1 (en) * | 2003-12-31 | 2005-07-07 | Stephen Lawrence | Methods and systems for improving a search ranking using article information |
US7930540B2 (en) * | 2004-01-22 | 2011-04-19 | Mcafee, Inc. | Cryptographic policy enforcement |
KR100905866B1 (ko) | 2004-03-15 | 2009-07-03 | 야후! 인크. | 사용자 주석이 통합된 검색 시스템 및 방법 |
US7925657B1 (en) | 2004-03-17 | 2011-04-12 | Google Inc. | Methods and systems for adjusting a scoring measure based on query breadth |
US20050223027A1 (en) * | 2004-03-31 | 2005-10-06 | Lawrence Stephen R | Methods and systems for structuring event data in a database for location and retrieval |
US7499958B1 (en) * | 2004-03-31 | 2009-03-03 | Google Inc. | Systems and methods of replicating all or part of a data store |
US8346777B1 (en) * | 2004-03-31 | 2013-01-01 | Google Inc. | Systems and methods for selectively storing event data |
US7680888B1 (en) | 2004-03-31 | 2010-03-16 | Google Inc. | Methods and systems for processing instant messenger messages |
US7725508B2 (en) | 2004-03-31 | 2010-05-25 | Google Inc. | Methods and systems for information capture and retrieval |
US8631076B1 (en) | 2004-03-31 | 2014-01-14 | Google Inc. | Methods and systems for associating instant messenger events |
US20050234929A1 (en) * | 2004-03-31 | 2005-10-20 | Ionescu Mihai F | Methods and systems for interfacing applications with a search engine |
US8161053B1 (en) | 2004-03-31 | 2012-04-17 | Google Inc. | Methods and systems for eliminating duplicate events |
US7333976B1 (en) | 2004-03-31 | 2008-02-19 | Google Inc. | Methods and systems for processing contact information |
US8099407B2 (en) | 2004-03-31 | 2012-01-17 | Google Inc. | Methods and systems for processing media files |
US7941439B1 (en) | 2004-03-31 | 2011-05-10 | Google Inc. | Methods and systems for information capture |
US8275839B2 (en) * | 2004-03-31 | 2012-09-25 | Google Inc. | Methods and systems for processing email messages |
US7412708B1 (en) | 2004-03-31 | 2008-08-12 | Google Inc. | Methods and systems for capturing information |
US8386728B1 (en) | 2004-03-31 | 2013-02-26 | Google Inc. | Methods and systems for prioritizing a crawl |
US7581227B1 (en) * | 2004-03-31 | 2009-08-25 | Google Inc. | Systems and methods of synchronizing indexes |
US8078571B2 (en) * | 2004-04-05 | 2011-12-13 | George Eagan | Knowledge archival and recollection systems and methods |
GB0409582D0 (en) * | 2004-04-29 | 2004-06-02 | British Telecomm | Event notification network |
US7962591B2 (en) * | 2004-06-23 | 2011-06-14 | Mcafee, Inc. | Object classification in a capture system |
US7761439B1 (en) | 2004-06-30 | 2010-07-20 | Google Inc. | Systems and methods for performing a directory search |
US7437364B1 (en) | 2004-06-30 | 2008-10-14 | Google Inc. | System and method of accessing a document efficiently through multi-tier web caching |
US8224964B1 (en) | 2004-06-30 | 2012-07-17 | Google Inc. | System and method of accessing a document efficiently through multi-tier web caching |
US8676922B1 (en) | 2004-06-30 | 2014-03-18 | Google Inc. | Automatic proxy setting modification |
US8620915B1 (en) | 2007-03-13 | 2013-12-31 | Google Inc. | Systems and methods for promoting personalized search results based on personal information |
US8560534B2 (en) * | 2004-08-23 | 2013-10-15 | Mcafee, Inc. | Database for a capture system |
US7483916B2 (en) * | 2004-08-23 | 2009-01-27 | Mcafee, Inc. | Database for a capture system |
US7949849B2 (en) * | 2004-08-24 | 2011-05-24 | Mcafee, Inc. | File system for a capture system |
US7873622B1 (en) | 2004-09-02 | 2011-01-18 | A9.Com, Inc. | Multi-column search results interface |
US8341143B1 (en) | 2004-09-02 | 2012-12-25 | A9.Com, Inc. | Multi-category searching |
US8874570B1 (en) | 2004-11-30 | 2014-10-28 | Google Inc. | Search boost vector based on co-visitation information |
US7440968B1 (en) | 2004-11-30 | 2008-10-21 | Google Inc. | Query boosting based on classification |
US8364670B2 (en) * | 2004-12-28 | 2013-01-29 | Dt Labs, Llc | System, method and apparatus for electronically searching for an item |
US8302011B2 (en) | 2005-01-24 | 2012-10-30 | A9.Com, Inc. | Technique for modifying presentation of information displayed to end users of a computer system |
US7861154B2 (en) * | 2005-02-28 | 2010-12-28 | Microsoft Corporation | Integration of annotations to dynamic data sets |
US8131736B1 (en) * | 2005-03-01 | 2012-03-06 | Google Inc. | System and method for navigating documents |
US8060463B1 (en) | 2005-03-30 | 2011-11-15 | Amazon Technologies, Inc. | Mining of user event data to identify users with common interests |
US7587387B2 (en) | 2005-03-31 | 2009-09-08 | Google Inc. | User interface for facts query engine with snippets from information sources that include query terms and answer terms |
US20060224583A1 (en) * | 2005-03-31 | 2006-10-05 | Google, Inc. | Systems and methods for analyzing a user's web history |
US8239394B1 (en) * | 2005-03-31 | 2012-08-07 | Google Inc. | Bloom filters for query simulation |
US7953720B1 (en) | 2005-03-31 | 2011-05-31 | Google Inc. | Selecting the best answer to a fact query from among a set of potential answers |
US7783631B2 (en) * | 2005-03-31 | 2010-08-24 | Google Inc. | Systems and methods for managing multiple user accounts |
US9256685B2 (en) * | 2005-03-31 | 2016-02-09 | Google Inc. | Systems and methods for modifying search results based on a user's history |
US20060224608A1 (en) * | 2005-03-31 | 2006-10-05 | Google, Inc. | Systems and methods for combining sets of favorites |
US7747632B2 (en) * | 2005-03-31 | 2010-06-29 | Google Inc. | Systems and methods for providing subscription-based personalization |
US7962462B1 (en) | 2005-05-31 | 2011-06-14 | Google Inc. | Deriving and using document and site quality signals from search query streams |
US7492186B2 (en) * | 2005-07-15 | 2009-02-17 | Tabula, Inc. | Runtime loading of configuration data in a configurable IC |
US7831913B2 (en) * | 2005-07-29 | 2010-11-09 | Microsoft Corporation | Selection-based item tagging |
US9105028B2 (en) | 2005-08-10 | 2015-08-11 | Compete, Inc. | Monitoring clickstream behavior of viewers of online advertisements and search results |
US7907608B2 (en) * | 2005-08-12 | 2011-03-15 | Mcafee, Inc. | High speed packet capture |
US8719255B1 (en) | 2005-08-23 | 2014-05-06 | Amazon Technologies, Inc. | Method and system for determining interest levels of online content based on rates of change of content access |
US7818326B2 (en) * | 2005-08-31 | 2010-10-19 | Mcafee, Inc. | System and method for word indexing in a capture system and querying thereof |
US7496557B2 (en) * | 2005-09-30 | 2009-02-24 | International Business Machines Corporation | Microhubs and its applications |
US7730011B1 (en) * | 2005-10-19 | 2010-06-01 | Mcafee, Inc. | Attributes of captured objects in a capture system |
US9697231B2 (en) * | 2005-11-09 | 2017-07-04 | Cxense Asa | Methods and apparatus for providing virtual media channels based on media search |
US7657104B2 (en) * | 2005-11-21 | 2010-02-02 | Mcafee, Inc. | Identifying image type in a capture system |
US7716353B2 (en) * | 2005-12-21 | 2010-05-11 | Bmc Software, Inc. | Web services availability cache |
US9262446B1 (en) | 2005-12-29 | 2016-02-16 | Google Inc. | Dynamically ranking entries in a personal data book |
US7925649B2 (en) * | 2005-12-30 | 2011-04-12 | Google Inc. | Method, system, and graphical user interface for alerting a computer user to new results for a prior search |
US7904759B2 (en) * | 2006-01-11 | 2011-03-08 | Amazon Technologies, Inc. | System and method for service availability management |
US8954426B2 (en) * | 2006-02-17 | 2015-02-10 | Google Inc. | Query language |
US20070185870A1 (en) | 2006-01-27 | 2007-08-09 | Hogue Andrew W | Data object visualization using graphs |
US7925676B2 (en) | 2006-01-27 | 2011-04-12 | Google Inc. | Data object visualization using maps |
US8055674B2 (en) * | 2006-02-17 | 2011-11-08 | Google Inc. | Annotation framework |
US7953730B1 (en) * | 2006-03-02 | 2011-05-31 | A9.Com, Inc. | System and method for presenting a search history |
US8601112B1 (en) | 2006-03-14 | 2013-12-03 | Amazon Technologies, Inc. | Method and system for collecting and analyzing time-series data |
US7979439B1 (en) | 2006-03-14 | 2011-07-12 | Amazon Technologies, Inc. | Method and system for collecting and analyzing time-series data |
US9037698B1 (en) | 2006-03-14 | 2015-05-19 | Amazon Technologies, Inc. | Method and system for collecting and analyzing time-series data |
US8504537B2 (en) | 2006-03-24 | 2013-08-06 | Mcafee, Inc. | Signature distribution in a document registration system |
US8832247B2 (en) * | 2006-03-24 | 2014-09-09 | Blue Coat Systems, Inc. | Methods and systems for caching content at multiple levels |
US20070226504A1 (en) * | 2006-03-24 | 2007-09-27 | Reconnex Corporation | Signature match processing in a document registration system |
US7747749B1 (en) | 2006-05-05 | 2010-06-29 | Google Inc. | Systems and methods of efficiently preloading documents to client devices |
US7689614B2 (en) * | 2006-05-22 | 2010-03-30 | Mcafee, Inc. | Query generation for a capture system |
US8010689B2 (en) * | 2006-05-22 | 2011-08-30 | Mcafee, Inc. | Locational tagging in a capture system |
US7958227B2 (en) * | 2006-05-22 | 2011-06-07 | Mcafee, Inc. | Attributes of captured objects in a capture system |
US9443022B2 (en) | 2006-06-05 | 2016-09-13 | Google Inc. | Method, system, and graphical user interface for providing personalized recommendations of popular search queries |
US7574310B2 (en) * | 2006-06-12 | 2009-08-11 | Kennedy Robert A | Network-enabled electrical power distribution equipment with improved storage system |
US8868533B2 (en) | 2006-06-30 | 2014-10-21 | International Business Machines Corporation | Method and apparatus for intelligent capture of document object model events |
US8949406B2 (en) * | 2008-08-14 | 2015-02-03 | International Business Machines Corporation | Method and system for communication between a client system and a server system |
US8583772B2 (en) | 2008-08-14 | 2013-11-12 | International Business Machines Corporation | Dynamically configurable session agent |
US20080011819A1 (en) * | 2006-07-11 | 2008-01-17 | Microsoft Corporation Microsoft Patent Group | Verification of hit testing |
US20080015878A1 (en) * | 2006-07-17 | 2008-01-17 | Yahoo! Inc. | Real-time user profile platform for targeted online advertisement and personalization |
WO2008091387A2 (en) * | 2006-08-07 | 2008-07-31 | Chacha Search, Inc. | Electronic previous search results log |
US8260909B2 (en) * | 2006-09-19 | 2012-09-04 | Oracle America, Inc. | Method and apparatus for monitoring a data stream |
US8260910B2 (en) * | 2006-09-19 | 2012-09-04 | Oracle America, Inc. | Method and apparatus for monitoring a data stream to detect a pattern of data elements using bloom filters |
US8954412B1 (en) | 2006-09-28 | 2015-02-10 | Google Inc. | Corroborating facts in electronic documents |
US8037060B1 (en) | 2006-09-29 | 2011-10-11 | A9.Com, Inc. | System and method for displaying columns of search results |
US10409849B2 (en) | 2006-09-29 | 2019-09-10 | A9.Com, Inc. | System and method for displaying columns of search results |
KR101266267B1 (ko) | 2006-10-05 | 2013-05-23 | 스플렁크 인코퍼레이티드 | 시계열 검색 엔진 |
US9824107B2 (en) | 2006-10-25 | 2017-11-21 | Entit Software Llc | Tracking changing state data to assist in computer network security |
US8661029B1 (en) | 2006-11-02 | 2014-02-25 | Google Inc. | Modifying search result ranking based on implicit user feedback |
US8255873B2 (en) * | 2006-11-20 | 2012-08-28 | Microsoft Corporation | Handling external content in web applications |
US7937428B2 (en) * | 2006-12-21 | 2011-05-03 | International Business Machines Corporation | System and method for generating and using a dynamic bloom filter |
US7925678B2 (en) * | 2007-01-12 | 2011-04-12 | Loglogic, Inc. | Customized reporting and mining of event data |
US20080209009A1 (en) * | 2007-01-18 | 2008-08-28 | Niraj Katwala | Methods and systems for synchronizing cached search results |
JP2008181189A (ja) * | 2007-01-23 | 2008-08-07 | Global Techno:Kk | 証跡データ抽出方法 |
US8271891B1 (en) * | 2007-02-02 | 2012-09-18 | Sandia Corporation | Computing environment logbook |
US9189561B2 (en) | 2007-02-10 | 2015-11-17 | Adobe Systems Incorporated | Bridge event analytics tools and techniques |
US8065275B2 (en) * | 2007-02-15 | 2011-11-22 | Google Inc. | Systems and methods for cache optimization |
US8812651B1 (en) | 2007-02-15 | 2014-08-19 | Google Inc. | Systems and methods for client cache awareness |
US8938463B1 (en) | 2007-03-12 | 2015-01-20 | Google Inc. | Modifying search result ranking based on implicit user feedback and a model of presentation bias |
US8347202B1 (en) | 2007-03-14 | 2013-01-01 | Google Inc. | Determining geographic locations for place names in a fact repository |
US8694374B1 (en) | 2007-03-14 | 2014-04-08 | Google Inc. | Detecting click spam |
US20080244442A1 (en) * | 2007-03-30 | 2008-10-02 | Microsoft Corporation | Techniques to share information between application programs |
US7974888B2 (en) | 2007-03-30 | 2011-07-05 | Amazon Technologies, Inc. | Services for providing item association data |
US7881984B2 (en) * | 2007-03-30 | 2011-02-01 | Amazon Technologies, Inc. | Service for providing item recommendations |
US20080244428A1 (en) * | 2007-03-30 | 2008-10-02 | Yahoo! Inc. | Visually Emphasizing Query Results Based on Relevance Feedback |
US7921073B2 (en) * | 2007-04-05 | 2011-04-05 | Yahoo! Inc. | System and method for determining impression volumes of content items in a taxonomy hierarchy |
US9092510B1 (en) | 2007-04-30 | 2015-07-28 | Google Inc. | Modifying search result ranking based on a temporal element of user feedback |
US20080270761A1 (en) * | 2007-04-30 | 2008-10-30 | Microsoft Corporation | Techniques to generate event contexts for recurring events |
US7899815B2 (en) * | 2007-05-02 | 2011-03-01 | Yahoo! Inc. | Apparatus and methods for providing search benchmarks |
US8239751B1 (en) | 2007-05-16 | 2012-08-07 | Google Inc. | Data from web documents in a spreadsheet |
US20090006322A1 (en) * | 2007-06-27 | 2009-01-01 | Chang Shannon H | Method for Handling Web Search Results to Be Displayed on a Browser |
US8122360B2 (en) | 2007-06-27 | 2012-02-21 | Kosmix Corporation | Automatic selection of user-oriented web content |
WO2009003514A1 (en) * | 2007-06-29 | 2009-01-08 | Telefonaktiebolaget Lm Ericsson (Publ) | Method of processing event notifications and event subscriptions |
US8694511B1 (en) | 2007-08-20 | 2014-04-08 | Google Inc. | Modifying search result ranking based on populations |
US20090063590A1 (en) * | 2007-08-30 | 2009-03-05 | Microsoft Corporation | Operating System Support of Graceful Degradation for Web Applications |
US8042055B2 (en) | 2007-08-31 | 2011-10-18 | Tealeaf Technology, Inc. | Replaying captured network interactions |
US8191081B2 (en) * | 2007-09-06 | 2012-05-29 | Sap Ag | Condition-based event filtering |
US7428522B1 (en) | 2007-09-27 | 2008-09-23 | Yahoo! Inc. | Real-time search term popularity determination, by search origin geographic location |
US8909655B1 (en) | 2007-10-11 | 2014-12-09 | Google Inc. | Time based ranking |
US8090740B2 (en) * | 2007-10-16 | 2012-01-03 | Microsoft Corp. | Search-centric hierarchichal browser history |
US8954430B1 (en) * | 2007-12-13 | 2015-02-10 | Amazon Technologies, Inc. | Persistent searches |
US20090171754A1 (en) * | 2007-12-28 | 2009-07-02 | Kane Francis J | Widget-assisted detection and exposure of cross-site behavioral associations |
US20090171968A1 (en) * | 2007-12-28 | 2009-07-02 | Kane Francis J | Widget-assisted content personalization based on user behaviors tracked across multiple web sites |
US20090172021A1 (en) * | 2007-12-28 | 2009-07-02 | Kane Francis J | Recommendations based on actions performed on multiple remote servers |
US7984056B1 (en) | 2007-12-28 | 2011-07-19 | Amazon Technologies, Inc. | System for facilitating discovery and management of feeds |
US20090171755A1 (en) * | 2007-12-28 | 2009-07-02 | Kane Francis J | Behavior-based generation of site-to-site referrals |
US8271878B2 (en) * | 2007-12-28 | 2012-09-18 | Amazon Technologies, Inc. | Behavior-based selection of items to present on affiliate sites |
US8250080B1 (en) | 2008-01-11 | 2012-08-21 | Google Inc. | Filtering in search engines |
US8849838B2 (en) * | 2008-01-15 | 2014-09-30 | Google Inc. | Bloom filter for storing file access history |
US20090248612A1 (en) * | 2008-03-31 | 2009-10-01 | Morris Robert P | Methods, Systems, And Computer Program Products For Providing Prior Values Of A Tuple Element In A Publish/Subscribe System |
US9128945B1 (en) | 2008-05-16 | 2015-09-08 | Google Inc. | Query augmentation |
JP2010008601A (ja) * | 2008-06-25 | 2010-01-14 | Fujitsu Ltd | 案内情報表示装置、案内情報表示方法及びプログラム |
US8205242B2 (en) | 2008-07-10 | 2012-06-19 | Mcafee, Inc. | System and method for data mining and security policy management |
US8745018B1 (en) | 2008-07-10 | 2014-06-03 | Google Inc. | Search application and web browser interaction |
US8180771B2 (en) * | 2008-07-18 | 2012-05-15 | Iac Search & Media, Inc. | Search activity eraser |
US9276747B2 (en) | 2008-08-04 | 2016-03-01 | Technology Policy Associates, Llc | Remote profile security system |
US9253154B2 (en) | 2008-08-12 | 2016-02-02 | Mcafee, Inc. | Configuration management for a capture/registration system |
US8452769B2 (en) * | 2008-09-19 | 2013-05-28 | International Business Machines Corporation | Context aware search document |
US8396865B1 (en) | 2008-12-10 | 2013-03-12 | Google Inc. | Sharing search engine relevance data between corpora |
US8214350B1 (en) * | 2009-01-02 | 2012-07-03 | Google Inc. | Pre-computed impression lists |
US8850591B2 (en) | 2009-01-13 | 2014-09-30 | Mcafee, Inc. | System and method for concept building |
US8706709B2 (en) | 2009-01-15 | 2014-04-22 | Mcafee, Inc. | System and method for intelligent term grouping |
US20100185644A1 (en) * | 2009-01-21 | 2010-07-22 | Microsoft Corporatoin | Automatic search suggestions from client-side, browser, history cache |
US10007729B1 (en) | 2009-01-23 | 2018-06-26 | Zakta, LLC | Collaboratively finding, organizing and/or accessing information |
US9607324B1 (en) | 2009-01-23 | 2017-03-28 | Zakta, LLC | Topical trust network |
US10191982B1 (en) | 2009-01-23 | 2019-01-29 | Zakata, LLC | Topical search portal |
US8473442B1 (en) | 2009-02-25 | 2013-06-25 | Mcafee, Inc. | System and method for intelligent state management |
US9477763B2 (en) * | 2009-03-02 | 2016-10-25 | Excalibur IP, LC | Personalized search results utilizing previously navigated web sites |
US20100229100A1 (en) * | 2009-03-03 | 2010-09-09 | Sprint Spectrum L.P. | Methods and Systems for Storing and Accessing Application History |
US20100227682A1 (en) * | 2009-03-04 | 2010-09-09 | Microsoft Corporation | Awarding of avatar items in video game environment |
US20100228701A1 (en) * | 2009-03-06 | 2010-09-09 | Microsoft Corporation | Updating bloom filters |
US8667121B2 (en) | 2009-03-25 | 2014-03-04 | Mcafee, Inc. | System and method for managing data and policies |
US8447722B1 (en) | 2009-03-25 | 2013-05-21 | Mcafee, Inc. | System and method for data mining and security policy management |
KR20100107801A (ko) * | 2009-03-26 | 2010-10-06 | 삼성전자주식회사 | 무선 통신 시스템에서 안테나 선택을 위한 장치 및 방법 |
US8930818B2 (en) * | 2009-03-31 | 2015-01-06 | International Business Machines Corporation | Visualization of website analytics |
US9934320B2 (en) | 2009-03-31 | 2018-04-03 | International Business Machines Corporation | Method and apparatus for using proxy objects on webpage overlays to provide alternative webpage actions |
US20100257403A1 (en) * | 2009-04-03 | 2010-10-07 | Microsoft Corporation | Restoration of a system from a set of full and partial delta system snapshots across a distributed system |
US8261126B2 (en) * | 2009-04-03 | 2012-09-04 | Microsoft Corporation | Bare metal machine recovery from the cloud |
US9009146B1 (en) | 2009-04-08 | 2015-04-14 | Google Inc. | Ranking search results based on similar queries |
US8862574B2 (en) * | 2009-04-30 | 2014-10-14 | Microsoft Corporation | Providing a search-result filters toolbar |
US8447760B1 (en) | 2009-07-20 | 2013-05-21 | Google Inc. | Generating a related set of documents for an initial set of documents |
US9135277B2 (en) | 2009-08-07 | 2015-09-15 | Google Inc. | Architecture for responding to a visual query |
US20110035367A1 (en) * | 2009-08-07 | 2011-02-10 | Gupta Ankur K | Methods And System For Efficient Crawling Of Advertiser Landing Page URLs |
US9087059B2 (en) * | 2009-08-07 | 2015-07-21 | Google Inc. | User interface for presenting search results for multiple regions of a visual query |
US8498974B1 (en) | 2009-08-31 | 2013-07-30 | Google Inc. | Refining search results |
US8478725B2 (en) * | 2009-09-14 | 2013-07-02 | Vmware, Inc. | Method and system for performing live migration of persistent data of a virtual machine |
US8414390B1 (en) | 2009-09-30 | 2013-04-09 | Amazon Technologies, Inc. | Systems and methods for the electronic distribution of games |
US9770654B1 (en) | 2009-09-30 | 2017-09-26 | Amazon Technologies, Inc. | Cross device operation of games |
US8972391B1 (en) | 2009-10-02 | 2015-03-03 | Google Inc. | Recent interest based relevance scoring |
US8874555B1 (en) | 2009-11-20 | 2014-10-28 | Google Inc. | Modifying scoring data based on historical changes |
US8615514B1 (en) | 2010-02-03 | 2013-12-24 | Google Inc. | Evaluating website properties by partitioning user feedback |
US20110208840A1 (en) * | 2010-02-22 | 2011-08-25 | Lee Blackman | Cookie alert |
US8924379B1 (en) | 2010-03-05 | 2014-12-30 | Google Inc. | Temporal-based score adjustments |
US8959093B1 (en) | 2010-03-15 | 2015-02-17 | Google Inc. | Ranking search results based on anchors |
US20110231482A1 (en) * | 2010-03-22 | 2011-09-22 | Strangeloop Networks Inc. | Automated Optimization Based On Determination Of Website Usage Scenario |
US8347021B1 (en) | 2010-04-09 | 2013-01-01 | Google Inc. | Storing application messages |
US8589228B2 (en) * | 2010-06-07 | 2013-11-19 | Microsoft Corporation | Click modeling for URL placements in query response pages |
US8533532B2 (en) * | 2010-06-23 | 2013-09-10 | International Business Machines Corporation | System identifying and inferring web session events |
US9623119B1 (en) | 2010-06-29 | 2017-04-18 | Google Inc. | Accentuating search results |
US8832083B1 (en) | 2010-07-23 | 2014-09-09 | Google Inc. | Combining user feedback |
US8578049B2 (en) * | 2010-10-04 | 2013-11-05 | Futurewei Technologies, Inc. | Content router forwarding plane architecture |
US8806615B2 (en) | 2010-11-04 | 2014-08-12 | Mcafee, Inc. | System and method for protecting specified data combinations |
US8346792B1 (en) | 2010-11-09 | 2013-01-01 | Google Inc. | Query generation using structural similarity between documents |
US20120143725A1 (en) * | 2010-12-02 | 2012-06-07 | Vinimaya Inc. | Methods and systems for influencing search and shopping decisions in electronic procurement |
US10068266B2 (en) | 2010-12-02 | 2018-09-04 | Vinimaya Inc. | Methods and systems to maintain, check, report, and audit contract and historical pricing in electronic procurement |
US9697050B2 (en) * | 2010-12-22 | 2017-07-04 | Sap Se | System and method for scaling for a large number of concurrent users |
US9002867B1 (en) | 2010-12-30 | 2015-04-07 | Google Inc. | Modifying ranking data based on document changes |
GB2503595A (en) | 2011-02-22 | 2014-01-01 | Ibm | On-page manipulation and real-time replacement of content |
US20120240019A1 (en) * | 2011-03-17 | 2012-09-20 | Ebay Inc. | Method and system for tracking web link usage |
US9667713B2 (en) * | 2011-03-21 | 2017-05-30 | Apple Inc. | Apparatus and method for managing peer-to-peer connections between different service providers |
US8498995B1 (en) * | 2011-03-24 | 2013-07-30 | Emc Corporation | Optimizing data retrieval during event data query processing |
US9760414B2 (en) | 2011-05-18 | 2017-09-12 | International Business Machines Corporation | Preserving event data for lazily-loaded macro components in a publish/subscribe system |
US10268656B1 (en) * | 2011-05-19 | 2019-04-23 | Palo Alto Networks, Inc. | Using cache and bloom filters for URL lookups |
US8725730B2 (en) * | 2011-05-23 | 2014-05-13 | Hewlett-Packard Development Company, L.P. | Responding to a query in a data processing system |
US20130024431A1 (en) * | 2011-07-22 | 2013-01-24 | Microsoft Corporation | Event database for event search and ticket retrieval |
US9037696B2 (en) * | 2011-08-16 | 2015-05-19 | Amazon Technologies, Inc. | Managing information associated with network resources |
US8832028B2 (en) * | 2011-08-25 | 2014-09-09 | Oracle International Corporation | Database cloning |
US8504906B1 (en) * | 2011-09-08 | 2013-08-06 | Amazon Technologies, Inc. | Sending selected text and corresponding media content |
US8949371B1 (en) * | 2011-09-29 | 2015-02-03 | Symantec Corporation | Time and space efficient method and system for detecting structured data in free text |
US9836178B2 (en) * | 2011-11-03 | 2017-12-05 | Excalibur Ip, Llc | Social web browsing |
US9313100B1 (en) | 2011-11-14 | 2016-04-12 | Amazon Technologies, Inc. | Remote browsing session management |
US9330188B1 (en) | 2011-12-22 | 2016-05-03 | Amazon Technologies, Inc. | Shared browsing sessions |
US20130246334A1 (en) | 2011-12-27 | 2013-09-19 | Mcafee, Inc. | System and method for providing data protection workflows in a network environment |
US9336321B1 (en) | 2012-01-26 | 2016-05-10 | Amazon Technologies, Inc. | Remote browsing and searching |
US8839087B1 (en) | 2012-01-26 | 2014-09-16 | Amazon Technologies, Inc. | Remote browsing and searching |
US8954580B2 (en) | 2012-01-27 | 2015-02-10 | Compete, Inc. | Hybrid internet traffic measurement using site-centric and panel data |
US9900395B2 (en) | 2012-01-27 | 2018-02-20 | Comscore, Inc. | Dynamic normalization of internet traffic |
US10185822B2 (en) * | 2012-03-14 | 2019-01-22 | Carbon Black, Inc. | Systems and methods for tracking and recording events in a network of computing systems |
KR20130106519A (ko) * | 2012-03-20 | 2013-09-30 | 삼성전자주식회사 | 웹 브라우저의 히스토리 관리 방법 및 장치 |
US20130262445A1 (en) * | 2012-04-02 | 2013-10-03 | Pomian & Corella, Llc | Browsing real-time search results reliably on a mobile computing device |
US8510287B1 (en) | 2012-04-08 | 2013-08-13 | Microsoft Corporation | Annotating personalized recommendations |
US10210480B2 (en) * | 2012-05-31 | 2019-02-19 | Apple Inc. | Avoiding a redundant display of a notification on multiple user devices |
US8977626B2 (en) * | 2012-07-20 | 2015-03-10 | Apple Inc. | Indexing and searching a data collection |
US9348936B2 (en) * | 2012-07-25 | 2016-05-24 | Oracle International Corporation | Heuristic caching to personalize applications |
US8631034B1 (en) * | 2012-08-13 | 2014-01-14 | Aria Solutions Inc. | High performance real-time relational database system and methods for using same |
US8943197B1 (en) | 2012-08-16 | 2015-01-27 | Amazon Technologies, Inc. | Automated content update notification |
US10261938B1 (en) | 2012-08-31 | 2019-04-16 | Amazon Technologies, Inc. | Content preloading using predictive models |
US9349123B1 (en) * | 2012-10-04 | 2016-05-24 | Amazon Technologies, Inc. | Hybrid native networked application |
US9635094B2 (en) | 2012-10-15 | 2017-04-25 | International Business Machines Corporation | Capturing and replaying application sessions using resource files |
US9536108B2 (en) | 2012-10-23 | 2017-01-03 | International Business Machines Corporation | Method and apparatus for generating privacy profiles |
US9535720B2 (en) | 2012-11-13 | 2017-01-03 | International Business Machines Corporation | System for capturing and replaying screen gestures |
US10474735B2 (en) | 2012-11-19 | 2019-11-12 | Acoustic, L.P. | Dynamic zooming of content with overlays |
US20140149392A1 (en) * | 2012-11-28 | 2014-05-29 | Microsoft Corporation | Unified search result service and cache update |
US9965339B2 (en) | 2013-03-15 | 2018-05-08 | One Source Virtual Hr, Inc. | System and method for service provision in a multi-tenant environment |
US9183499B1 (en) | 2013-04-19 | 2015-11-10 | Google Inc. | Evaluating quality based on neighbor features |
US10225136B2 (en) | 2013-04-30 | 2019-03-05 | Splunk Inc. | Processing of log data and performance data obtained via an application programming interface (API) |
US10019496B2 (en) | 2013-04-30 | 2018-07-10 | Splunk Inc. | Processing of performance data and log data from an information technology environment by using diverse data stores |
US10346357B2 (en) | 2013-04-30 | 2019-07-09 | Splunk Inc. | Processing of performance data and structure data from an information technology environment |
US10997191B2 (en) | 2013-04-30 | 2021-05-04 | Splunk Inc. | Query-triggered processing of performance data and log data from an information technology environment |
US10614132B2 (en) | 2013-04-30 | 2020-04-07 | Splunk Inc. | GUI-triggered processing of performance data and log data from an information technology environment |
US10318541B2 (en) | 2013-04-30 | 2019-06-11 | Splunk Inc. | Correlating log data with performance measurements having a specified relationship to a threshold value |
US10353957B2 (en) | 2013-04-30 | 2019-07-16 | Splunk Inc. | Processing of performance data and raw log data from an information technology environment |
US9860143B2 (en) * | 2013-06-26 | 2018-01-02 | Nicolas Bissantz | System for providing information on the traffic on a group of websites |
RU2608668C2 (ru) * | 2014-07-30 | 2017-01-23 | Общество С Ограниченной Ответственностью "Яндекс" | Система и способ управления и организации кэша веб-браузера для обеспечения автономного просмотра |
US9075812B1 (en) * | 2014-09-05 | 2015-07-07 | WhisperText, Inc. | System and method for automatically selecting images to accompany text |
US10002361B2 (en) | 2015-02-27 | 2018-06-19 | Esquify, Inc. | Remote supervision of client device activity |
US9634992B1 (en) | 2015-02-28 | 2017-04-25 | Palo Alto Networks, Inc. | Probabilistic duplicate detection |
US10785310B1 (en) * | 2015-09-30 | 2020-09-22 | Open Text Corporation | Method and system implementing dynamic and/or adaptive user interfaces |
US10304082B1 (en) | 2015-11-12 | 2019-05-28 | Amazon Technologies, Inc. | Personalized network content generation and redirection according to repeat behavior |
US9672487B1 (en) | 2016-01-15 | 2017-06-06 | FinLocker LLC | Systems and/or methods for providing enhanced control over and visibility into workflows where potentially sensitive data is processed by different operators, regardless of current workflow task owner |
US9904957B2 (en) * | 2016-01-15 | 2018-02-27 | FinLocker LLC | Systems and/or methods for maintaining control over, and access to, sensitive data inclusive digital vaults and hierarchically-arranged information elements thereof |
US10019588B2 (en) | 2016-01-15 | 2018-07-10 | FinLocker LLC | Systems and/or methods for enabling cooperatively-completed rules-based data analytics of potentially sensitive data |
US20170352034A1 (en) * | 2016-06-02 | 2017-12-07 | Samsung Electronics Company, Ltd. | Transaction-Record Verification for Mobile-Payment System |
WO2017222617A1 (en) | 2016-06-21 | 2017-12-28 | Oracle International Corporation | Internet cloud-hosted natural language interactive messaging system server collaboration |
JP6952060B2 (ja) | 2016-06-21 | 2021-10-20 | オラクル・インターナショナル・コーポレイション | インターネットクラウドでホストされる自然言語による対話型メッセージングシステムユーザリゾルバ |
EP3472978B1 (en) | 2016-06-21 | 2021-12-15 | Oracle International Corporation | Internet cloud-hosted natural language interactive messaging system sessionizer |
US11477302B2 (en) | 2016-07-06 | 2022-10-18 | Palo Alto Research Center Incorporated | Computer-implemented system and method for distributed activity detection |
US10552728B2 (en) | 2016-07-29 | 2020-02-04 | Splunk Inc. | Automated anomaly detection for event-based system |
US10956481B2 (en) | 2016-07-29 | 2021-03-23 | Splunk Inc. | Event-based correlation of non-text machine data |
US11227208B2 (en) | 2016-07-29 | 2022-01-18 | Splunk Inc. | Automated data-generation for event-based system |
US11314799B2 (en) | 2016-07-29 | 2022-04-26 | Splunk Inc. | Event-based data intake and query system employing non-text machine data |
US10832279B2 (en) | 2016-08-17 | 2020-11-10 | International Business Machines Corporation | Aggregation of unique user invocations in an online environment |
JP7441650B2 (ja) | 2016-09-16 | 2024-03-01 | オラクル・インターナショナル・コーポレイション | エンティティベースの通信を有する、インターネットクラウドによってホストされた自然言語インタラクティブメッセージングシステム |
US10536550B2 (en) * | 2016-11-30 | 2020-01-14 | Facebook, Inc. | Storage of events for a dynamic audience platform |
US10740803B2 (en) | 2016-11-30 | 2020-08-11 | Facebook, Inc. | Scheduling events for a dynamic audience platform |
US10970629B1 (en) * | 2017-02-24 | 2021-04-06 | Amazon Technologies, Inc. | Encodings for reversible sparse dimensionality reduction |
US11657407B1 (en) * | 2017-03-13 | 2023-05-23 | Amazon Technologies, Inc. | Filtering data with probabilistic filters for content selection |
US10825064B1 (en) | 2017-03-13 | 2020-11-03 | Amazon Technologies, Inc. | Preventing duplicate content selection for digital presentation |
US20180262404A1 (en) * | 2017-03-13 | 2018-09-13 | Microsoft Technology Licensing, Llc | Hypermedia-driven record and playback test framework |
US10891678B1 (en) | 2017-04-18 | 2021-01-12 | Amazon Technologies, Inc. | Personalized network content generation and redirection according to time intervals between repeated instances of behavior based on entity size |
US10643178B1 (en) | 2017-06-16 | 2020-05-05 | Coupa Software Incorporated | Asynchronous real-time procurement system |
CN109542339B (zh) * | 2018-10-23 | 2021-09-03 | 拉扎斯网络科技(上海)有限公司 | 数据分层访问方法、装置、多层存储设备和存储介质 |
CN109361778A (zh) * | 2018-12-18 | 2019-02-19 | 厦门商集网络科技有限责任公司 | 一种管理会话的方法及终端 |
US10477287B1 (en) | 2019-06-18 | 2019-11-12 | Neal C. Fairbanks | Method for providing additional information associated with an object visually present in media content |
US11956518B2 (en) | 2020-11-23 | 2024-04-09 | Clicktivated Video, Inc. | System and method for creating interactive elements for objects contemporaneously displayed in live video |
US11418571B1 (en) | 2021-07-29 | 2022-08-16 | Servicenow, Inc. | Server-side workflow improvement based on client-side data mining |
US11809378B2 (en) | 2021-10-15 | 2023-11-07 | Morgan Stanley Services Group Inc. | Network file deduplication using decaying bloom filters |
CN116389444B (zh) * | 2023-04-10 | 2023-09-15 | 北京智享嘉网络信息技术有限公司 | 一种基于用户web应用的流量调度方法以及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020010625A1 (en) * | 1998-09-18 | 2002-01-24 | Smith Brent R. | Content personalization based on actions performed during a current browsing session |
US20020143925A1 (en) * | 2000-12-29 | 2002-10-03 | Ncr Corporation | Identifying web-log data representing a single user session |
Family Cites Families (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5774123A (en) | 1995-12-15 | 1998-06-30 | Ncr Corporation | Apparatus and method for enhancing navigation of an on-line multiple-resource information service |
US6310630B1 (en) * | 1997-12-12 | 2001-10-30 | International Business Machines Corporation | Data processing system and method for internet browser history generation |
US20020013834A1 (en) * | 1998-04-20 | 2002-01-31 | Jeffrey Esakov | Tracking and graphical display of user activity on an information network |
US6448980B1 (en) * | 1998-10-09 | 2002-09-10 | International Business Machines Corporation | Personalizing rich media presentations based on user response to the presentation |
US6751777B2 (en) * | 1998-10-19 | 2004-06-15 | International Business Machines Corporation | Multi-target links for navigating between hypertext documents and the like |
US6453342B1 (en) * | 1998-12-03 | 2002-09-17 | International Business Machines Corporation | Method and apparatus for selective caching and cleaning of history pages for web browsers |
US6513046B1 (en) * | 1999-12-15 | 2003-01-28 | Tangis Corporation | Storing and recalling information to augment human memories |
US6460060B1 (en) * | 1999-01-26 | 2002-10-01 | International Business Machines Corporation | Method and system for searching web browser history |
US6466970B1 (en) | 1999-01-27 | 2002-10-15 | International Business Machines Corporation | System and method for collecting and analyzing information about content requested in a network (World Wide Web) environment |
US7197547B1 (en) * | 1999-05-11 | 2007-03-27 | Andrew Karl Miller | Load balancing technique implemented in a data network device utilizing a data cache |
US7216115B1 (en) * | 1999-11-10 | 2007-05-08 | Fastcase.Com, Inc. | Apparatus and method for displaying records responsive to a database query |
US6785671B1 (en) | 1999-12-08 | 2004-08-31 | Amazon.Com, Inc. | System and method for locating web-based product offerings |
US8775197B2 (en) * | 2000-02-24 | 2014-07-08 | Webmd, Llc | Personalized health history system with accommodation for consumer health terminology |
US6859909B1 (en) * | 2000-03-07 | 2005-02-22 | Microsoft Corporation | System and method for annotating web-based documents |
US8352331B2 (en) * | 2000-05-03 | 2013-01-08 | Yahoo! Inc. | Relationship discovery engine |
US6667751B1 (en) | 2000-07-13 | 2003-12-23 | International Business Machines Corporation | Linear web browser history viewer |
US6571259B1 (en) * | 2000-09-26 | 2003-05-27 | Emc Corporation | Preallocation of file system cache blocks in a data storage system |
KR100401209B1 (ko) * | 2000-11-21 | 2003-10-10 | 삼성전자주식회사 | 모바일 아이피를 사용하는 이동 통신 시스템에서 지역적터널 관리방법 |
US20020069407A1 (en) | 2000-11-28 | 2002-06-06 | Navic Systems, Incorporated | System and method for reporting counted impressions |
US6957390B2 (en) * | 2000-11-30 | 2005-10-18 | Mediacom.Net, Llc | Method and apparatus for providing dynamic information to a user via a visual display |
US7089237B2 (en) | 2001-01-26 | 2006-08-08 | Google, Inc. | Interface and system for providing persistent contextual relevance for commerce activities in a networked environment |
US6768994B1 (en) * | 2001-02-23 | 2004-07-27 | Trimble Navigation Limited | Web based data mining and location data reporting and system |
US20020198882A1 (en) * | 2001-03-29 | 2002-12-26 | Linden Gregory D. | Content personalization based on actions performed during a current browsing session |
US7003565B2 (en) | 2001-04-03 | 2006-02-21 | International Business Machines Corporation | Clickstream data collection technique |
US7707149B2 (en) * | 2001-04-04 | 2010-04-27 | Alorica, Inc | Method, system, and program for customer service and support management |
WO2002084590A1 (en) * | 2001-04-11 | 2002-10-24 | Applied Minds, Inc. | Knowledge web |
US6741990B2 (en) | 2001-05-23 | 2004-05-25 | Intel Corporation | System and method for efficient and adaptive web accesses filtering |
US6917922B1 (en) * | 2001-07-06 | 2005-07-12 | Amazon.Com, Inc. | Contextual presentation of information about related orders during browsing of an electronic catalog |
US6877007B1 (en) * | 2001-10-16 | 2005-04-05 | Anna M. Hentzel | Method and apparatus for tracking a user's interaction with a resource supplied by a server computer |
US7295996B2 (en) * | 2001-11-30 | 2007-11-13 | Skinner Christopher J | Automated web ranking bid management account system |
US6877077B2 (en) * | 2001-12-07 | 2005-04-05 | Sun Microsystems, Inc. | Memory controller and method using read and write queues and an ordering queue for dispatching read and write memory requests out of order to reduce memory latency |
US7370120B2 (en) * | 2001-12-07 | 2008-05-06 | Propel Software Corporation | Method and system for reducing network latency in data communication |
US20050128304A1 (en) * | 2002-02-06 | 2005-06-16 | Manasseh Frederick M. | System and method for traveler interactions management |
US7383248B2 (en) * | 2002-12-12 | 2008-06-03 | Jay Chieh Chen | Hyperlink park and search |
US7765206B2 (en) * | 2002-12-13 | 2010-07-27 | Metaweb Technologies, Inc. | Meta-Web |
US20080177994A1 (en) * | 2003-01-12 | 2008-07-24 | Yaron Mayer | System and method for improving the efficiency, comfort, and/or reliability in Operating Systems, such as for example Windows |
US7162473B2 (en) * | 2003-06-26 | 2007-01-09 | Microsoft Corporation | Method and system for usage analyzer that determines user accessed sources, indexes data subsets, and associated metadata, processing implicit queries based on potential interest to users |
-
2003
- 2003-07-02 US US10/612,395 patent/US7565425B2/en active Active
-
2004
- 2004-06-10 EP EP04754909A patent/EP1652027A4/en not_active Ceased
- 2004-06-10 CA CA2530565A patent/CA2530565C/en active Active
- 2004-06-10 WO PCT/US2004/018468 patent/WO2005006129A2/en active Application Filing
- 2004-06-10 JP JP2006517214A patent/JP2007526537A/ja active Pending
-
2006
- 2006-01-04 US US11/325,009 patent/US7945637B2/en not_active Expired - Fee Related
-
2009
- 2009-07-13 US US12/502,165 patent/US7895325B2/en not_active Expired - Lifetime
-
2011
- 2011-04-29 US US13/098,191 patent/US20110208711A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020010625A1 (en) * | 1998-09-18 | 2002-01-24 | Smith Brent R. | Content personalization based on actions performed during a current browsing session |
US20020143925A1 (en) * | 2000-12-29 | 2002-10-03 | Ncr Corporation | Identifying web-log data representing a single user session |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015132927A (ja) * | 2014-01-10 | 2015-07-23 | 日本電気株式会社 | 情報処理システム、情報処理装置、監視装置、監視方法、及び、プログラム |
US10282239B2 (en) | 2014-01-10 | 2019-05-07 | Nec Corporation | Monitoring method |
Also Published As
Publication number | Publication date |
---|---|
CA2530565A1 (en) | 2005-01-20 |
EP1652027A2 (en) | 2006-05-03 |
US20050033803A1 (en) | 2005-02-10 |
US20060112178A1 (en) | 2006-05-25 |
US7945637B2 (en) | 2011-05-17 |
US20090276407A1 (en) | 2009-11-05 |
CA2530565C (en) | 2012-07-31 |
US20110208711A1 (en) | 2011-08-25 |
US7565425B2 (en) | 2009-07-21 |
WO2005006129A3 (en) | 2006-12-21 |
EP1652027A4 (en) | 2008-06-04 |
WO2005006129A2 (en) | 2005-01-20 |
US7895325B2 (en) | 2011-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7565425B2 (en) | Server architecture and methods for persistently storing and serving event data | |
US11809504B2 (en) | Auto-refinement of search results based on monitored search activities of users | |
US9443022B2 (en) | Method, system, and graphical user interface for providing personalized recommendations of popular search queries | |
US8645390B1 (en) | Reordering search query results in accordance with search context specific predicted performance functions | |
US9323846B2 (en) | Method, system, and graphical user interface for alerting a computer user to new results for a prior search | |
US7499940B1 (en) | Method and system for URL autocompletion using ranked results | |
US7487145B1 (en) | Method and system for autocompletion using ranked results | |
US7747632B2 (en) | Systems and methods for providing subscription-based personalization | |
CA2603087C (en) | Systems and methods for analyzing a user's web history | |
US8166028B1 (en) | Method, system, and graphical user interface for improved searching via user-specified annotations | |
US20080228695A1 (en) | Techniques for analyzing and presenting information in an event-based data aggregation system | |
US9529861B2 (en) | Method, system, and graphical user interface for improved search result displays via user-specified annotations | |
US20060059225A1 (en) | Methods and apparatus for automatic generation of recommended links | |
US20060224608A1 (en) | Systems and methods for combining sets of favorites | |
US20060224624A1 (en) | Systems and methods for managing multiple user accounts | |
US20060224587A1 (en) | Systems and methods for modifying search results based on a user's history | |
US8589391B1 (en) | Method and system for generating web site ratings for a user | |
US20130290369A1 (en) | Contextual application recommendations | |
TW201207640A (en) | Method of recording and searching WebPage | |
Sathiyamoorthi et al. | Data Pre-Processing Techniques for Pre-Fetching and Caching of Web Data through Proxy Server | |
JP2004070957A (ja) | 検索システム | |
Patel et al. | Web Crawler: An Intelligent Agent Through Intellect Webbot |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090902 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091125 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100602 |