JP2015511347A - 検索結果へのアクセスを改良するシステム及び方法 - Google Patents

検索結果へのアクセスを改良するシステム及び方法 Download PDF

Info

Publication number
JP2015511347A
JP2015511347A JP2014553406A JP2014553406A JP2015511347A JP 2015511347 A JP2015511347 A JP 2015511347A JP 2014553406 A JP2014553406 A JP 2014553406A JP 2014553406 A JP2014553406 A JP 2014553406A JP 2015511347 A JP2015511347 A JP 2015511347A
Authority
JP
Japan
Prior art keywords
search
render
search result
page
search results
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.)
Granted
Application number
JP2014553406A
Other languages
English (en)
Other versions
JP6013514B2 (ja
JP2015511347A5 (ja
Inventor
バーカード、ティモ
マーコベック、ジーガ
ベンゼル、クリストファー
Original Assignee
グーグル・インク
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by グーグル・インク filed Critical グーグル・インク
Publication of JP2015511347A publication Critical patent/JP2015511347A/ja
Publication of JP2015511347A5 publication Critical patent/JP2015511347A5/ja
Application granted granted Critical
Publication of JP6013514B2 publication Critical patent/JP6013514B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3325Reformulation based on results of preceding query
    • G06F16/3326Reformulation based on results of preceding query using relevance feedback from the user, e.g. relevance feedback on documents, documents sets, document terms or passages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3325Reformulation based on results of preceding query
    • G06F16/3326Reformulation based on results of preceding query using relevance feedback from the user, e.g. relevance feedback on documents, documents sets, document terms or passages
    • G06F16/3328Reformulation based on results of preceding query using relevance feedback from the user, e.g. relevance feedback on documents, documents sets, document terms or passages using graphical result space presentation or visualisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90324Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本開示の態様は、検索結果ページのプリレンダリングを行うシステム100及び方法300を提供する。検索エンジンは、クライアントから受信した検索クエリーを処理してもよい。検索エンジンは、検索クエリー302に応答して1つ又は複数の検索結果を決定してもよい。この1つ又は複数の検索結果は、検索結果がクライントに受信されるときに、クライアントはプリレンダ命令400に関連付けられる検索結果のプリレンダを行うように、プリレンダ命令900に関連付けられてもよい。プリレンダ命令は、関連性700に基づく検索結果のランキング、又は選択800の可能性に基づく検索結果のランキングを含めて、様々な態様で検索結果に関連付けられてもよい。測定基準及び分析データは、検索結果のプリレンダリングプロセス1000を改善するためにクライアントから収集されてもよい。【選択図】図1

Description

(関連出願の相互参照)
この出願は、「検索結果へのアクセスを改良するシステム及び方法」と題して2012年1月19日に出願された米国特許出願13/353,626の利益を主張するものとし、その開示事項は参照により本出願に組み込まれるものとする。
ワールドワイドウェブの出現により、現在のユーザは、今だかつてないほど多くの情報をすぐに利用できるようになった。様々なウェブサイトは、参照情報、ビジネス及び金融の書類、ソーシャルネットワーキング、及びその他へのアクセスを提供して、殆ど全ての要求と興味を満足させる。広く普及した広帯域のインターネットへのアクセスにより、これらのサイトへのいまだかつてないほどの速いアクセスが可能となる。
しかしながら、現在の高速インターネットサービスが速いにもかかわらず、ウェブを閲覧する行為は瞬間的てはない。ユーザがページ上のリンクを選択し又はテキスト領域内にユーアールエル(URL)を入れるときに、データがホストから要求されてクライアントへ送信され、ブラウザーに表示されるまでに遅れ時間が生じる。ユーザは、彼らが要求したサイトが読み込まれるのを待つ間、通常は無駄に過ごす。高速インターネットのアクセスはその遅延時間を2〜3秒に制限しうる一方、この短い遅延時間でさえ積もり積もれば生産性において毎年数千時間の工数の損失が生じる。
本開示の態様は、検索結果ページのプリレンダリング(prerendering)のシステム及び方法を提供する。インターネット検索エンジンは、クライアントから受信する検索クエリーを処理してもよい。インターネット検索エンジンは、検索クエリーに応答して1つ又は複数の検索結果を決定してもよい。1つ又は複数の検索結果は、プリレンダ命令と関連付けられてもよく、その結果その検索結果がクライアントにより受信された時に、クライアントはそのプリレンダ命令に関連付けられた検索結果をプリレンダする。プリレンダ命令は、関連性に基づいて検索結果をランキングすること、又は選択の可能性に基づいて検索結果をランキングすることを含め、様々な態様でその検索結果と関連付けられてもよい。測定基準及び分析データは、検索結果プリレンダリングプロセスを改良するためにクライアントから収集されてもよい。例えば、ユーザがプリレンダ命令に関連付けられたリンクを選択したか否かに関する統計は、プリレンダの予測を改善するためにキャプチャされ(captured)てもよい。
測定基準及び分析データは、ユーザが前記測定基準及び分析データを提供することを「承諾」(opt−in)することを要求するプロセスによりキャプチャされ得る。システム及び方法は、例えば、個人識別情報の匿名化、データの集約、公にしにくい情報のフィルタリング、暗号化、パーソナル特性を除去するための公にしにくい情報のハッシングまたはフィルタリング、情報の記憶の有効期限、及び/またはデータの使用もしくは共用の制限を含むクライアントデータのためのプラバシー保護を提供し得る。データは、個々のクライアントデータは公開されないように、匿名にされ集約され得る。ユーザは、データの収集及び共有を可能とすることにオプトイン/オプトアウトする機会が与えられても良い。
本開示の態様は、検索結果ページを用いてプリレンダリングするためにコンピュータを利用する方法を説明する。この方法は、プロセサーを用いて、検索クエリーに応答して少なくとも1つの検索結果を決定するステップと、前記少なくとも1つの検索結果を備える検索結果ページを生成するステップと、前記少なくとも1つの検索結果の中で少なくとも1つのプリレンダ候補を特定するステップであって前記少なくとも1つのプリレンダ候補は選択されそうな検索結果を示す、前記特定するステップと、前記少なくとも1つのプリレンダ候補に対するプリレンダ命令を前記検索結果ページに埋め込むステップと、検索クエリーを供給したクライアントデバイスに前記検索結果ページを提供するステップとを備える方法であってもよい。前記少なくとも1つのプリレンダ候補は、少なくとも1つの信号を用いて特定され、前記少なくとも1つの信号は、前記検索結果を選択するのに使用する周波数、前記検索エンジンから前記検索結果へ流れるトラフィックの量、前記クライアントデバイスの位置、又は前記検索結果に関連付けられる1つ又は複数のリソースの大きさのいずれかである。前記プリレンダ命令は、前記少なくとも1つの検索結果に関連付けられるハイパーテキスト・マークアップ言語タグ内に埋め込まれていてもよい。前記プリレンダ命令は、クライアント側スクリプトによりクライアントデバイスに提供されてもよい。前記方法は、前記プリレンダ候補が表示されるときに選択されたかどうかを示す前記クライアントデバイスから測定基準を受信するステップと、前記測定基準を用いて後続する検索クエリーに応答して将来のプリレンダ候補を特定するステップと、をさらに含んでも良い。前記測定基準は、選択されたリンクがプリレンダされかどうかと、前記選択されたリンクの読み込み時間とのうち少なくとも1つであってもよい。前記方法は、前記検索結果ページに実験識別子を埋め込むステップであって、前記実験識別子は、前記少なくとも1つのプリレンダ候補を特定するのに使用される特定の方法に対応する、前記埋め込むステップと、前記検索結果ページに関連付けられる1つ又は複数のリダイレクション動作を用いて選択動作に関連付けられる前記実験識別子、及び前記少なくとも1つのプリレンダ候補が選択されたかどうかを特定するステップと、をさらに含んでもよい。
本開示の態様は、検索結果ページを用いてプリレンダするためにコンピュータを利用する方法をも説明する。この方法は、検索クエリーを検索エンジンに送信するステップと、前記検索クエリーに応答する一連の検索結果を受信するステップであって、前記一連の検索結果は、少なくとも1つの前記検索結果は、プリレンダリングの候補であることを示す少なくとも1つのプリレンダ命令を備える、前記受信するステップと、少なくとも1つのプリレンダ命令を特定するステップと、前記少なくとも1つのプリレンダ命令に関連付けられる前記少なくとも1つの検索結果をプリレンダするステップと、を含んでもよい。この方法は、前記一連の検索結果から選択された検索結果において実行される選択動作を監視するステップと、もし、前記選択された検索結果が前記少なくとも1つの検索結果であるなら、前記少なくとも1つの検索結果を交換によりアクティブなブラウザインスタンスに入れる、交換ステップと、をさらに含んでもよい。この方法は、前記一連の検索結果から選択された検索結果の選択に関連付けられる前記測定基準を記憶するステップと、前記測定基準を送信して、後続する検索クエリーに応答してプリレンダリング候補の選択を改善するために統計データを提供するステップと、をさらに含んでもよい。この測定基準は前記測定基準は、前記選択された検索結果、前記選択された検索結果が前記少なくとも1つの検索結果であるかどうか、及び前記選択された検索結果にアクセスするためのページ読み込み時間のうちの少なくとも1つであってもよい。この方法は、少なくとも1つの検索結果に関連付けられるハイパーリンクにプリレンダタグを挿入するために前記プリレンダ命令を実行するステップをさらに含んでもよい。前記測定基準は、前記一連の検索結果に埋め込まれた実験識別子と、前記少なくとも1つの検索結果をプリレンダリングの候補として選択する方法を示す前記実験識別子と、をさらに含んでもよい。
本開示の態様は、命令を備える非一時的なコンピュータ可読記憶媒体を提供してもよい。プロセサーにより実行された時に、前記命令は以下の方法を実行してもよく、前記方法は、検索クエリーを検索エンジンに送信するステップと、前記検索クエリーに応答して一連の検索結果を受信するステップであって、前記一連の検索結果は、前記検索結果のうち少なくとも1つがプリレンダリングの候補であることを示す少なくとも1つのプリレンダ命令を備える、前記受信するステップと、前記少なくとも1つのプリレンダ命令を特定するステップと、前記少なくとも1つのプリレンダ命令に関連付けられる前記少なくとも1つの検索結果をプリレンダするステップと、を備える。この命令は、前記一連の検索結果から選択された検索結果において実行される選択動作を監視するステップと、もし、前記選択された検索結果が前記少なくとも1つの検索結果であるなら、前記少なくとも1つの検索結果を交換によりアクティブなブラウザインスタンスに入れるステップをさらに含んでもよい。前記命令は、前記一連の検索結果から選択された検索結果の選択に関連付けられる測定基準を記憶するステップと、後続する検索クエリーに応答して前記測定基準を送信してプリレンダリング候補の選択を改善するための統計データを提供するステップと、をさらに含んでもよい。前記測定基準は、前記選択された検索結果、前記選択された検索結果が前記少なくとも1つの検索結果であるかどうか、及び前記選択された検索結果にアクセスするためのページ読み込み時間のうちの少なくとも1つであってもよい。前記測定基準は、前記一連の検索結果に埋め込まれた実験識別子をさらに備え、前記実験識別子がプリレンダリングを行う候補として前記検索結果のうちの前記少なくとも1つを選択する方法を示してもよい。
本開示の態様は、検索結果ページを用いてプリレンダする処理システムを提供してもよい。前記処理システムは、少なくとも1つのプロセサーに接続されたメモリと、前記少なくとも1つのプロセサーを備えてもよい。前記プロセサーは、検索クエリーに応答して少なくとも1つの検索結果を決定し、前記少なくとも1つの検索結果を備える前記検索結果ページを生成し、前記少なくとも1つの検索結果の中で、選択されそうな検索結果を示す少なくとも1つのプリレンダ候補を特定し、前記少なくとも1つのプリレンダ候補のためのプリレンダ命令を前記検索結果ページに埋め込み、前記検索クエリーを提供するクライアントデバイスに前記検索結果ページを提供するように構成されてもよい。前記少なくとも1つのプリレンダ候補は、少なくとも1つの信号を使用して特定され、前記少なくとも1つの信号は、前記検索結果を選択するのに使用する周波数、前記検索エンジンから前記検索結果へ流れるトラフィックの量、前記クライアントデバイスの位置、又は前記検索結果に関連付けられる1つ又は複数のリソースの大きさのいずれかであってもよい。前記プリレンダ命令は、前記少なくとも1つの検索結果に関連付けられるハイパーテキスト・マークアップ言語タグ内に埋め込まれていてもよい。前記プリレンダ命令は、クライアント側のスクリプトによりクライアントデバイスに提供されてもよい。前記プロセサーは、前記プリレンダ候補が表示されるときに選択されるかどうかを示す前記クライアントデバイスからの測定基準を受信し、前記測定基準を用いて後続する検索クエリーに応答して将来のプリレンダ候補を特定するようにさらに構成されてもよい。前記測定基準は、選択されたリンクがプリレンダされかどうかと、前記選択されたリンクの読み込み時間とのうち少なくとも1つであってもよい。前記プロセサーは、前記検索結果ページに前記少なくとも1つのプリレンダ候補を特定するのに使用される特定の方法に対応する実験識別子を埋め込み、前記検索結果ページに関連付けられる1つ又は複数のリダイレクション動作を用いて選択動作に関連付けられる前記実験識別子、及び前記少なくとも1つのプリレンダ候補が選択されたかどうかを特定するようにさらに構成されてもよい。
図1は、この開示の態様に従ってプリレンダリングを提供する検索システムの例を表示するシステム略図である。 図2は、この開示の態様に従ってプリレンダリング命令を用いた検索結果ページの例を示す図である。 図3は、この開示の態様に従ってウェブページのプリレンダリングを行う方法の例を示すフローチャートである。 図4は、この開示の態様に従ってプリレンダを行うナビゲーションイベントを示す方法の例を示すフローチャートである。 図5は、この開示の態様に従ってプリレンダ動作中にウェブ・インプレッション統計を管理する方法の例を示すフローチャートである。 図6は、この開示の態様に従ってプリレンダ動作を管理する方法の例を示すフローチャートである。 図7は、この開示の態様に従ってプリレンダ動作を構成する方法の例を示すフローチャートである。 図8は、この開示の態様に従って検索結果ページ内に埋め込まれたプリレンダ命令を処理する方法の例を示すフローチャートである。 図9は、この開示の態様に従って検索結果ページ内にプリレンダ命令を埋め込む方法の例を示すフローチャートである。 図10は、この開示の態様に従ってプリレンダ測定基準を取得する方法の例を示すフローチャートである。
本願の開示の態様、特徴および利点は、以下の好ましい実施形態の説明及び添付図を参照して考慮することで理解できる。以下の説明は本開示を限定するものではなく、本開示の範囲は添付請求項及び均等範囲により定義される。
例示的実施形態に従った一定の処理が、直線状に発生するものとして図に示されているが、本出願書類に特にはっきりと記載されない限りこれは要件ではない。異なる処理が異なる順序又は同時に実行されてもよい。
この開示は、プリレンダ(prerender)命令と共に検索結果のページを提供するシステム及び方法を記載する。この開示の態様のおかげで、ユーザによるイベントの選択より前にナビゲーションイベントに関連付けられたコンテンツを表示することにより、ナビゲーションイベント(例えば、検索結果ハイパーリンクをクリックすること)のユーザの選択とナビゲーションイベントに関連付けられたコンテンツの表示との間の遅延を最小化する。例えば、この方法とシステムは、ユーザが関連するリンクを選択する前に先行してネットワークからコンテンツをリクエストするために、ウェブを閲覧する間に次にリクエストされそうなユーアールエルを予測することができ、したがって、ユーザがウェブページ上でハイパーリンクを選択する時に待ち時間を最小にすることができる。プリレンダリング動作を実行し、プリレンダリング動作を構成し、プリレンダリング動作を管理する様々な方法を記載する。この適用を目的として、用語「プリレンダリング」は、一般にウェブアドレスのコンテンツを読み込むのに必要な資源(例えば、任意の実行可能コード、スクリプト言語、ファイル、及び/または対話型オブジェクト)を要求し、ウェブブラウザーインスタンスにそのコンテンツを読み込む動作をいう。プリレンダリングは、スクリプトを解釈すること、ページを配置すること、および不可視のブラウザインスタンス内のページを表示することを含めてページをレンダリングするプロセスを含む。
ユーザが、インターネット検索エンジンを用いてブラウザーにおいて検索クエリーを実行する時、そのインターネット検索エンジンは、プリレンダ命令を伴う検索クエリーに応答して提供される1つ又は複数の検索結果にフラグを立てることができる。これらのプリレンダ命令は、ウェブページ(例えば、ページソース内のハイパーテキスト・マークアップ言語(HTML)タグを介して)自身の中に埋め込まれてもよく、または非同期JAVAスクリプト(AJAX)等の他の方法によりブラウザーに示されてもよい。様々な例示的な実施形態がウェブブラウザーに関連して説明されているが、用語「ブラウザー」は、インターネットアドレスを用いてコンテンツをフェッチする任意のアプリケーションをも含むように広義に解釈し得る。例えば、ブラウザーは、スマートフォン上で実行するアプリケーション、ラップトップまたはデスクトップコンピュータ上で実行するインターネット検索エンジンを表示するウェブブラウザー、ウェブブラウザー内に埋め込まれた検索ツールバー、コンピュータのオペレーティングシステムに含まれる検索アプリケーション等を含み得る。
インターネット検索エンジン等の高トラフィックサイトはプリレンダリングに特有の課題が生じ得る。例えば、もし検索エンジンがよく使用されている検索クエリーに対する検索結果を良いプリレンダ候補として誤って分類し、ユーザはその検索結果を高い頻度では選ばないなら、誤って分類された検索結果を提供するウェブサーバーにおいては、追加されたページビューが無いのに追加のトラフィックが発生することになる。これにより、プリレンダされたページがネットワークを超えてダウンロードされ、隠されたブラウザインスタンスにおいて実行されるため、ホストページの帯域を浪費し、ユーザのコンピュータのシステム資源を浪費する結果となる。したがって、プリレンダリング動作と関連するリンクの選択を改善するのに使用するために、システムの測定基準を監視することが望ましい。システム及び方法の態様は、プリレンダリングの経験を改善する目的で自発的にデータを収集することを承諾したクライアントにより提供されたデータを用いてこれらの測定基準を監視する機能を提供することができる。
図1は、本開示の態様にしたがってスタンドアロンで又はネットワーク構成で使用され得る様々なコンピュータデバイスを記述するコンピュータシステムの概略図を提示する。例えば、この図は、ネットワーク106を介して通信するクライアントデバイス102とサーバー104とを有するコンピュータネットワーク100を示す。クライアントデバイス102により、ユーザは検索クエリーを用いて検索動作を開始するために検索クエリーを提出できるようになる。サーバー104は、検索クエリーを受信し、検索クエリーを用いて検索処理を実行する。サーバー104は、1つ又は複数のプリレンダ命令を検索クエリーに応答してユーザに提供された検索結果に関連付けることもできる。
クライアントデバイス102は、当業者に良く知られているコンピュータのデバイスであり得る。例えば、クライアントデバイス102は、ラップトップコンピュータ、デスクトップコンピュータ、ネットブック、ラックマウント方式のサーバー、スマートフォン、セルラー方式の電話機、または命令を実行するプログラム可能なハードウェアもしくはソフトウェアを含む任意の他のデバイスであり得る。コンピュータのデバイス102は、プロセサー108、メモリ110及び汎用コンピュータに通常存在する他の部品を含み得る。メモリ110は、プロセサー108によりアクセス可能な命令112及びデータ114を記憶し得る。プロセサー108は、クライアントデバイス102の動作を制御するために命令112を実行し、データ114にアクセスすることができる。
プロセサー108は、様々な商業的に利用可能な汎用プロセサー等の任意の適切なプロセサーであってもよい。あるいは、プロセサー108は、特定用途向け集積回路(「ASIC」)又はフィールド・プログラマブル・ゲート・アレイ(「FPGA」)等の専用制御部であってもよい。
メモリ110は、ハードディスクドライブ、メモリカード、リードオンリーメモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、ディーブイディー(「DVD」)または他の光ディスク、及び他の書き込み可能なリードオンリーメモリ等の電子デバイスの助けにより読み取り可能なデータを記憶するコンピュータ読み取り可能な媒体、または他の媒体を含め、プロセサー108によりアクセス可能な情報を記憶するように動作する任意の種類の有形のメモリであり得る。システム及び方法は、前述の物の異なる組み合わせを含むことができ、命令及びデータの異なる部分が異なる種類の媒体に記憶される。
図1は、それぞれが単一のブロック内に存在するものとしてプロセサー108及びメモリ110をそれぞれ機能的に表示しているが、プロセサー108とメモリ110は、実際には複数のプロセサーとメモリを備えておりこれらを同じ物理的ハウジング内に格納してもよく同じ物理的ハウジング内でなくてもよいと理解されるべきである。したがって、プロセサー、コンピュータ又はメモリに言及することは、並列に動作し得るまたはし得ないとにかかわらずプロセサーの一群、コンピュータの一群又はメモリの一群に言及することを含むと理解することができる。
命令112は、直接的に(機械コード等の)又は間接的に(スクリプト等の)プロセサー108によって実行される任意の命令のセットであり得る。例えば、命令112は、持続的なコンピュータ読み取り可能な媒体にコンピュータコードとして記憶され得る。その点に関して、用語「命令」及び「プログラム」は、ここでは殆ど同じ意味で使われ得る。命令112は、プロセサー108により直接処理するためのオブジェクトコードフォーマットで、又はスクリプトもしくはリクエストに応じて解釈されもしくは前もってコンパイルされる独立ソースコードモジュールの一群を含む任意の他のコンピュータ言語で記憶され得る。命令の機能、方法及びルーティンは、以下により詳細に説明する(図2−10を参照)。
クライアントデバイス102の動作を容易にするために、命令112は、ブラウザー116を備えてもよい。ブラウザー116は、例えば、ページを取得するインターネット検索エンジンを提供するウェブブラウザー等の、クライアントデバイス102が検索操作を実行し検索結果を受け取るためのインタフェースを提供する。ブラウザー116は、ウェブ検索結果ページ118において検索クエリーに応答して受信される検索結果を表示する機能を持ち得る。ブラウザー116は、もしユーザがプリレンダされたページ122に関連付けられた巡航操作(navigation operation)を選択するなら、即時のナビゲーションを可能とするためにプリレンダされたページ122をプリレンダするよう動作し得る。ブラウザー116は、ブラウザー116により実行される表示と巡航操作に関連付けられる測定基準120を追跡することもできる。上記に説明したように、ブラウザー116により収集された任意の測定基準120は、ユーザのプライバシーと匿名性を保つために、匿名で所定の位置に保護された状態で維持される。上記に説明したように、ブラウザー116は、検索結果を受信しその検索結果をユーザに対し表示するのに適した任意のアプリケーションであってよい。ブラウザー116は、ブラウザタブ等の様々なインスタンスにおけるコンテンツの複数のセットを維持し得る。プリレンダリングは、ユーザから不可視のブラウザインスタンスにおけるプリレンダされたページ122を表示することにより、及び、プリレンダされたページ122に関連付けられた巡航操作を選択したときに不可視のブラウザインスタンスを可視のブラウザインスタンスに交換することにより、実行され得る。
データ114は、命令に従ってプロセサー108により検索され、記憶され、修正され得る。例えば、アーキテクチャは、いかなる特定のデータ構造に限定されないが、データは、コンピュータ・レジスタ内に、複数の異なるフィールド並びにレコードを有するテーブル、拡張マークアップ言語(「XML」)ドキュメントもしくはフラットファイルとして、リレーショナル・データベース内に記憶され得る。このデータは、二進値もしくはユニコード等の、しかしこれらに限定されない、任意のコンピュータ読み取り可能なフォーマットにフォーマットされ得る。このデータは、番号、説明文、専用コード、同じメモリもしくは異なる複数メモリ(他のネットワークの場所を含む)の他の領域に記憶されたデータの参照又は関連のあるデータを算出する機能により使用される情報等の、関連のある情報であることを確認するに十分な任意の情報を備え得る。
データ114は、上で説明したようにウェブ検索結果ページ118、測定基準120、及びプリレンダされたページ122を記憶することができる。ウェブ検索結果ページ118及びプリレンダされたページ122は、ブラウザー116に関連付けられたブラウザインスタンスに表示されたページとして記憶され得る。測定基準120は、局所的に記憶されることがあり、周期的にサーバー104に送信されることがあり、またはサーバー104で直接算出され記憶され得る。
サーバー104は、クライアントデバイス102から提供される検索クエリーを用いて検索動作を実行するよう機能し得る。サーバー104は、クライアントデバイス102に提供される検索結果のウェブページ内に1つ又は複数のプリレンダタグを埋め込むこともできる。サーバー104は、複数の要因によりクライアントデバイス102に提供される検索結果内の候補となるリンクを特定することができる。例えば、サーバー104は、一連の検索結果の中でプリレンダリングに最も適切な候補として最も関連のあるリンクを見つけることができる。サーバー104は、プリレンダリング動作を改善するためにクライアントデバイス102により提供される測定基準120等の測定基準を集める機能をも有し得る。例えば、サーバー104は、プリレンダリング動作によりユ―ザが節約する時間、プリレンダリング動作のヒット率とミス率(例えば、プリレンダされた検索結果が検索結果のリストから選択される頻度)、又は他の様々な指標についての測定基準を受信することができる。
サーバー104は、クライアントデバイス102と同様にメモリ126に接続するプロセサー124を有する構成となっている場合がある。メモリ126は、サーバー104の動作を容易にするために一連の命令128及びデータ130を備えることができる。命令128は、検索エンジン132と、プリレンダアプリケーション134とを含むことができる。検索エンジン132は、検索クエリーに応答してクライアント102に検索結果を提供するように動作する。例えば、検索エンジン132は、インターネット検索エンジンであってもよい。プリレンダアプリケーション134は、プリレンダリングの候補として検索エンジン132が生成した検索結果132から検索結果を定めるように動作する。プリレンダアプリケーション134は、埋め込まれた命令138を有する一連の検索結果を作り出すために検索結果136と共にプリレンダ命令を含む。検索結果136及び埋め込まれた命令を有する一連の検索結果138がデータ130に記憶されてもよい。クライアントデバイス102が受信するときに、クライアントデバイス102は、どの検索結果をプリレンダするかを決めるために埋め込まれた命令を処理する。
プリレンダアプリケーション134は、1つ又は複数のHTMLタグをプリレンダ候補の検索結果に関連付けられたリンクに追加することにより、検索結果136内に命令を埋め込み得る。例えば、ウェブサイトの一例であるexample.comへのリンクに対するHTMLは、プリレンダアプリケーション134がウィキペディア(Wikipedia)に関連付けられた検索結果がプリレンダリングの良い候補であることを見つけたことに応えて、プリレンダアプリケーション134により、"<a href="http://www.example.com"> example </a>" から "<link rel="prerender" href="http://www. example.com"/> <a href=http://www.example.com> example </a>" へ修正され得る。
クライアントデバイス102及びサーバー104は、それぞれネットワークの別個のノードであってもよく、直接的及び間接的にネットワーク106の他のノードと通信するように動作する。例えば、クライアントデバイス102は、ネットワーク106経由でサーバー104と通信するように動作する携帯電話機を備えても良い。
クライアントデバイス102とサーバー104の間に介在するノード及びネットワーク106は、様々な構成を備えることができ、インターネット、ワールドワイドウェブ、イントラネット、仮想プライベート・ネットワーク、ローカルなイーサネットネットワーク、1つ又は複数の会社に独占的所有権がある通信プロトコルを用いたプライベート・ネットワーク、セルラー方式の無線ネットワーク(例えば、Wi−Fi)、インスタント・メッセージ、ハイパーテキスト転送プロトコル(「HTTP」)並びに簡易メール転送プロトコル(「SMTP」)、及び上述の様々な組み合わせを含む、様々なプロトコルを用いることができる。通常、システムは、複数の接続されたコンピュータを含み得ることを理解すべきである。例えば、サーバー104の機能は、検索エンジン132及びプリレンダアプリケーション134を接続制御する別個のノードにより複数のノードを越えて広がることができる。
上述のように情報が送信され又は受信されるときに一定の利点が得られるが、このシステム及び方法の他の態様では、情報を伝達するいかなる特定の方法に限定されることはない。例えば、ある態様では、情報は、光ディスクまたは携帯ドライブ等の媒体により送信してもよい。他の態様では、情報は、非電子的なフォーマットで送信され、手作業でシステムに入力されてもよい。
図2は、本開示の態様に従ってプリレンダリング命令を用いた検索結果ページ200の例を説明する図である。示された検索結果ページ200は、検索クエリー「テスト検索クエリー」に応答して受信された一連の検索結果を示す。プレーンテキストのクエリーが示されているが、検索は画像、ビデオ、または他の任意の情報源に基づく検索を含めて任意の適切な検索クエリーにより実行してもよい。検索結果ページ200は、1つ又は複数の検索結果202を含む。検索結果202のそれぞれはHTMLデータ204に関連付けられている。表示された検索結果202に対するこのHTMLデータ 204は、その検索結果202に「link rel='prerender’」なる表現(term)が埋め込まれていることを示し、これはHTMLデータ204に関連付けられた検索結果202が検索結果200を示すブラウザーによりプリレンダされるべきであることを示す。
図3は、本開示の態様にしたがってウェブページをプリレンダリングするための例示的な方法300を表現するフローチャートである。方法300の態様は、ユーザがネットワークコンテンツを検索する前にそのネットワークコンテンツをリクエストすることにより、ネットワークコンテンツを読み込むための時間を最小にするように動作する。方法300は、ユーザによる検索対象になりそうであると判断されるウェブページをプリレンダリングすることにより、ユーザがウェブを閲覧を経験する際の時間遅れを防ぐために、クライアント102等のコンピュータのデバイスにより実行され得る。例えば、方法300は、ブラウザー116の要素により実行され得る。方法300の態様がクライアント102に対して表示される間に、方法300は、サーバー104、又は命令を受け入れるように設計されたハードウェア及び/またはソフトウェアを有するデバイスによっても実行され得る。方法300の例示的態様は、単一のナビゲーションイベントに関連付けられる単一のページのプリレンダリングに関連するが、方法300は、順次的な複数のページのプリレンダリングまたは複数の並行したプリレンダリングインスタンスの複数のページのプリレンダリング等の、1つ又は複数のナビゲーションイベントに関連付けられた複数のページをプリレンダリングすることにも広く適用可能である。
段階302では、クライアント102は、ウェブブラウザー内の次のナビゲーションイベントを決定する。次のナビゲーションイベントは、検索結果ページ内にサーバー104により埋め込まれたプリレンダ命令により、定められ得る。例えば、検索エンジンは、最も関連のある結果に関連付けられる特定のリンクがウェブブラウザーによりプリレンダされるべきであることを示すために一連の検索結果内にタグを埋め込むことができる。ウェブページ内にプリレンダリングタグを埋め込む方法を以下に記載する(図4、8−10を参照のこと)。
段階304においては、クライアント102は、段階302で特定されたナビゲーションイベントに関連付けられるコンテンツをリクエストする。このリクエストは、ハイパーテキスト転送プロトコル(HTTP)GETリクエスト、ファイル転送プロトコル(FTP)リクエスト、又は当技術分野で知られている他の任意のネットワークデータ・アクセス・リクエストを備えてもよい。ウェブコンテンツの第1のセットは、HTTPGETリクエストに応えて提供されてもよく、HTTPGETリクエストがきっかけとなりウェブコンテンツの第1のセットを踏まえて追加のHTTPGETリクエストを導く。例えば、HTTPGETリクエストは、結果としてベースウェブページがウェブブラウザーに送信されることもあり得、これは追加のGETリクエストのように他のページを読み込む動作をトリガーし得る。ベースウェブページは、複数の埋め込まれた画像を有することができ、これらの画像は各画像に対してHTTPGETリクエストを用いてフェッチされ描画される。説明したようにプリレンダリングプロセスは、関連するスクリプトを含め、ウェブページ全部をリクエストしてもよく、そしてこれらのスクリプトを実行してもよい。リクエストに応じて、ナビゲーションイベントに関連付けられたウェブコンテンツは、ウェブブラウザーに送信される。例えば、サーバー104は、そのコンテンツをウェブブラウザーに送信しても良い。検索エンジンの例に戻り、埋め込まれたプリレンダタグを有するウェブページを受信すると、クライアント102は、検索エンジンにより特定された隠しブラウザインスタンスにおける一番上の検索結果に関連付けられるURLに関連付けられるウェブページをリクエストし、表示する。
段階306では、クライアント102は、段階302において決定されたナビゲーションイベントに関連付けられたコンテンツを表示する。このコンテンツは、ユーザから隠されたウェブブラウザーの他のインスタンスにおいて表示されてもよい。例えば、このコンテンツは、他のプロセスにより、または隠しウェブブラウザータブにおいて表示されてもよい。いくつかの態様においては、クライアント102は、複数のナビゲーションイベントに関連付けられるコンテンツを表示してもよい。例えば、ナビゲーションイベントは、ナビゲーションイベントの起こる可能性の大きさに関連付けられてより高い又はより低い値をとる優先度値に関連付けられてもよい。このようなものとして、クライアント102は、クライアント102の性能に依存して最も起こる可能性の高い順に「n」個のイベントを表示してもよい(図7参照)。
いくつかの態様では、表示されたコンテンツは、リダイレクション動作を含んでもよい。リダイレクション動作の例としては、第1のページ、例えば、www.a.comを読み込む動作により、そのブラウザーが、www.b.com等の第2のページを読み込む場合がある。リダイレクションは、HTMLタグ、JAVAスクリプトナビゲーション・コマンド、または同様のものに応答して行われてもよい。プリレンダされたページがリダイレクション動作をリクエストした場合、上記のリダイレクション動作は、他のインスタンスで行われてもよい。
いくつかの態様においては、第1のリダイレクション動作は、それに続くリダイレクションを引き起こしてもよい。例えば、www.a.comは、www.b.comを引き起こしてもよく、www.b.comは、www.c.comを引き起こしてもよい。このシステム及び方法の態様は、リダイレクション動作の履歴を記憶し、及び最初のページがプリレンダすると判断されたことに応じて、シリーズ内の最後のページをプリレンダすること等により、この事実を扱うことができる。いくつかの態様では、方法300は、最終結果のページ(すなわち、リダイレクション動作の最後におけるページ)が判明したときに中間のページをプリレンダしないで一連のシリーズの中で最後のページのみをプリレンダすることにより、リダイレクション動作を省くことができる。
段階308において、クライアント102は、ユーザが段階302において特定の期間内に特定されたリンクを選択したかどうかを判定してもよい。例えば、方法300は、10秒、20秒、30秒、1分、5分、または他の任意のタイムフレームだけ待ってもよい。いくつかの態様においては、このタイムフレームは、ウェブブラウザーに関連付けられるオプションメニュー内で構成可能であってもよい。このタイムフレームは、サーバー104により指定されてもよい。例えば、サーバー104は、タグに関連付けられたコンテンツが廃棄される前に保存されるべき時間を示すタイムアウト値をプリレンダタグ内に埋め込んでもよい。もし、ユーザが、この期間内にリンクを選択した場合は、方法300は、段階312に進む。選択しなかった場合は、方法300は、段階310に進む。
段階310において、クライアント102は、プリレンダされたコンテンツを破棄する。プリレンダ動作に関連付けられたシステム資源を解放し、古いデータがユーザに提示されることを防止するために、プリレンダされたコンテンツは、このようにして有効期限が切れるようにされる。いくつかの態様では、異なる種類のデータに対しては異なる有効期限が指定され得る。例えば、ニュース速報記事、株価情報、配信フィード、などのすぐに変化しそうなデータはすぐに古くなる可能性がより高く、10秒、20秒、または1分などのより短い有効期限タイマーに関連付けられることもある。参考記事、アーカイブ、成績データ(box scores)等の変化する可能性の低いデータは、1時間、6時間、24時間、1週間等のより長い有効期限タイマーに関連付けられてもよい。いくつかの態様では、待ち時間は、ページの種類に基づく。例えば、もしユーザが長いニュース記事を見ているなら、次のページを選択する前に記事の現在のページを読む時間をユーザに与えるために記事の次のページをプリレンダリングする時に、より長い待ち時間が特定され得る。いくつかの態様では、待ち時間は、ページ内に埋め込まれた生存期間(time−to−live(TTL))パラメータにより決定される。いくつかの態様では、待ち時間は、ブラウザー内でハードコードされている。プリレンダされたコンテンツが廃棄された後に方法300は終了するが、いくつかの態様では、ユーザがウェブコンテンツを閲覧する時に方法300を無制限に繰り返してもよい。
段階312においては、クライアント102は、段階302において決定されたナビゲーションイベントをユーザが選択するのに応えて交換によりプリレンダされたコンテンツを含む他のインスタンスを現在のユーザインスタンスに入れる。このようにして、クライアント102は、ナビゲーションイベントに関連付けられたコンテンツを、データがリクエストされホストサーバーから受信するまでの間の遅れ時間なしに直ちに表示する。検索結果の例に戻ると、もしユーザが最も関連のある結果を選択するなら、その関連付けられたページは、他のインスタンスにおいて既に読み込まれており、したがって、ユーザがリンクをクリックすれば直ちに利用可能となる。いくつかの態様においては、ユーザは、プリレンダリング動作の完了に先立ってナビゲーションイベントを選択してもよい。このようなケースでは、部分的に読み込まれたページは、現在のユーザインスタンスに置き換えられる。そして、部分的に読み込まれたページは、現在のユーザインスタンスに読み込みが通常通り続く。そして方法300は、プリレンダされたコンテンツがユーザに利用可能となるようにした後に終了する。
図4は、プリレンダすべきナビゲーションイベンを示す例示的方法400を記述するフローチャートである。ある態様では、サーバー104等のコンテンツをホストするサーバーは、ウェブブラウザーがプリレンダするナビゲーションイベントを指定することができる。サーバーがプリレンダされた1つ又は複数のリンクを特定することができることは、サーバーがどのナビゲーションイベントが最もありそうであるかについての最も良い情報を有している、又はサーバーが読み込みのバランスをとる動作等のために個々のホストされるリンクに関連付けられる帯域を管理することを望む等の多くの理由により、最適であり得る。したがって、サーバー104は、クライアント102のプリレンダモジュール210にどのコンテンツに表示すべきかを指示する、プリレンダタグ又はタグをホストされるページ内に埋め込んでもよい。
段階402においては、サーバー104は、ホストされるウェブページ内の1つ又は複数のリンクを特定する。例えば、サーバー104は、クライアント102からのクエリーに応答してウェブサイトのリストを生成する。各検索結果は、そのクエリーに応答して提供されるページの特定のリンクに関連付けられていてもよい。
段階404において、サーバー104は、段階402で特定されたリンクから選ばれる、プリレンダすべき1つ又は複数のリンクを選択する。プリレンダのリンクは、様々な目的に対して、ユーザのナビゲーション履歴、総計のナビゲーション履歴、最も関連のあるリンク等を確認することによる等の様々な方法で選択されてもよい。いくつかの態様では、リンクは、個々のクエリーに応答して最も頻繁にクリックされるリンクを分析する検索エンジンにより選択される。例えば、検索エンジンは、個々のクエリーに応答してどのリンクがクリックされるかを示す「クリックスルー」データを収集し、個々のリンクが選択される頻度に基づいてプリレンダすべき1つ又は複数のリンクを選択してもよい。検索エンジンの例を継続するために、サーバー104は、一番上の検索結果、又は一番上から「n」個の検索結果をプリレンダすべき最適リンクとして特定してもよい。いくつかの態様では、サーバー104は、さらにプリレンダすべき最適なリンクはランク番号1とし、その次に適当なリンクをランク番号2とし、以下同様にランク付けすることにより、プリレンダすべきリンクのランキングを特定してもよい。サーバー104は、ランクではなく、リンクのそれぞれが選択される可能性を特定してもよい。例えば、サーバー104は、特定のリンクがユーザにより選択される可能性が50%、25%、又は80%であることを示してもよい。クライアントにより実行されるプリレンダ動作が、例えば、可能性が少なくとも50%以上、少なくとも80%以上、または他の閾値、等の可能性の閾値に関連付けられるリンクをプリレンダすることを選択してもよい。
段階406においては、サーバー104は、1つ又は複数のプリレンダタグに段階404で特定される1つ又は複数のリンクを埋め込む。例えば、サーバー104は、最適なリンク又はプリレンダすべきリンクを特定するためのハイパーテキスト・マークアップ言語(HTML)タグを含んでもよい。上記のように、プリレンダタグは、プリレンダを保つ時間を指定するTTL値およびランキング値を含んでもよい。検索エンジンの例を続けると、サーバー104は、検索結果の関連性の程度によりその結果のプリレンダする順序をランク付けするとともに、プリレンダタグを有する検索結果のそれぞれを特定してもよい。
段階408では、プリレンダタグが埋め込まれたページがページをリクエストしたクライアントに送信される。そして、方法400は、ページを送信した後に終了する。
図5は、本開示の態様に従ってプリレンダ動作の間にウェブ・インプレッション統計を管理する方法500の例を説明するフローチャートである。ウェブサイトは、多くの場合、何のコンテンツが閲覧されるか、どのページがアクセスされるか、これらのページがどんな順序でアクセスされるか、そしてそれぞれのページにどれだけの時間が費やされるかについて追跡する。このようなデータの保存及び解析は、「ウェブサイト分析」と広く呼ばれている。これらの統計は、サイト運営者により様々な目的で使用され得るデータを提供する。例えば、このデータの使用例の1つとしては、このコンテンツとともに表示される広告の比率を計算することがある。しかし、いくつかの例では、ユーザは、プリレンダされたコンテンツに関連付けられたナビゲーションイベントを選択しないこともある。したがってデータの収集に支障を来たし得る。例えば、所与のページがユーザに送信される回数によりユーザのインプレッションを追跡する伝統的モデルは、もはや正確な結果をもたらさないことがある。なぜならユーザはコンテンツが毎回送信されるたびに閲覧するわけではないことがことがあるからである。したがって、サーバー104等のサーバーは、プリレンダされたコンテンツを考慮に入れたインプレッションを正確に追跡する方法を提供し得る。このような方法の1つを以下に説明する。この方法の特定の実施例が、広告のコンテンツのインプレッションの統計を管理することに関して提供され得るが、本方法の態様は、プリレンダのリクエストに応答して提供されるページに対して正確なウェブサイト分析を確実にするのに広く適用できることが理解されるべきである。
段階502においては、サーバー104は、クライアント102等のコンピュータのデバイスからプリレンダのリクエストを受信する。いくつかの態様においては、このコンテンツリクエストはコンテンツリクエストとともに送信されるJAVAスクリプトAPIを介してプリレンダ動作のためのものであることをクライアント102が示すこと等により、プリレンダのリクエストは、スクリプトのアプリケーション・プログラミング・インタフェース(API)を用いて特定されてもよい。プリレンダリクエストには、そのリクエストがプリレンダリクエストであることを示す、修正HTTPヘッダーが添付されても良い。いくつかの態様では、サーバー104は、サーバー104上で実行するアプリケーションを用いてイベント通知の登録をすること等により、APIにより提供されるように、クライアント102からイベント通知を受信するように構成される。いくつかの態様では、サーバー104は、サーバーが帯域制限されており、またはそうでなくてもプリレンダリングを許したくない等の場合にプリレンダリクエストに応答してコンテンツを送信しない選択もできる。このようにしてプリレンダリクエストの通知を提供することにより、サーバー104は、プリレンダリクエストを処理することを「見合わせる」ことができる。例えば、サーバー104は、帯域制限されているかも知れずしたがって、プリレンダされていないコンテンツをホストすることに集中する必要があることがある。いくつかの態様では、サーバー104は、検索結果のリストに示されるように検索エンジンによるコンテンツのプリレンダリングを防ぐために、そのようなものであることを示すHTMLメタタグを含めることにより、又は、サーバー上にホストされる「robots.txt」ファイルに記入することにより、処理することを「見合わせる」(opt−out)こともあり得る。
段階504では、サーバー104は、ある改訂済みのコンテンツと共に一部分のウェブページを送ってもよい。多くの例では広告インプレッションは、広告画像が送信される回数に基づいて決定されるのであるから、例えば、サーバー104は、プリレンダリクエストに応答して広告コンテンツに関連付けられる画像を提供しなくてもよい。同様の方法がスクリプト又は実行可能なコンテンツ等の他の方法で提供される広告に適用してもよい。一例として、サーバー104は、ベースウェブページを提供することによりプリレンダリクエストに応答してもよい可能性がある。ベースウェブページの結果として、クライアント102は、ベースウェブページにより特定されるコンテンツに対する1つ又は複数の追加のHTTPGETリクエストを開始してもよい。サーバー104は、ベースウェブページ内で特定される広告画像に対するHTTPGETリクエストに応答してコンテンツを送信しないという選択をしてもよい。
いくつかの態様では、コンテンツの改訂されたバージョンは、コンテンツが改訂されていることを受信するコンピュータのデバイスに示す、改訂された画像、スクリプト等に関連付けられた特定のHTTPエラーコードを含んでもよい。このようにして、クライアント102は、あるコンテンツが利用できないことではなく、そのコンテンツが改訂されており後に提供される予定であることが知らされる。したがって、クライアント102は、アクセスした後そのコンテンツを読み込む間に特定の図又は一時的な表示とともに改訂されたコンテンツを示すことを選択してもよく、又は改訂されたコンテンツが白紙に見えるようにしてもよい。
いくつかの場合には、クライアント102は、ディスプレイ改訂されたコンテンツをどのように正しく表示するかを知らなくてもよく、この場合は、クライアント102はプリレンダ動作を途中停止してもよい。さらに、ユーザがコンテンツにアクセスする時に、クライアント102は、プリレンダされたページが閲覧されたことをサーバー104に通知してもよい。これに応答して、サーバー104は、その改訂されたコンテンツをクライアント102に送信してもよい。
段階506では、サーバー104は、そのコンテンツのプリレンダがユーザにより閲覧されたことの確認を受信する。上記のように、ウェブブラウザーを通して提供されたAPIにより、サーバー104にコンテンツの閲覧の通知がされてもよい。例えば、スクリプトは、イベント通知をサーバー104に通信してもよい。もし、サーバー104がこのようなイベント通知に対して登録されているなら、サーバー104は改訂されたコンテンツをクライアント102に送信する等の適切な動きを取ってもよい。プリレンダコンテンツが閲覧されたことをサーバー104に知らせることにより、サーバー104は、いかなる改訂されたコンテンツを送信し、いかなる広告に関連付けられるインプレッションの統計を更新するべきことに気づく。
段階508では、サーバー104は、段階504で改訂されたコンテンツを送信する。サーバー104は、ユーザがそのコンテンツにアクセスしたことを確認にしたので、コンテンツは今や送信される。例えば、サーバー104は広告スクリプトのコード、又はこれらに類するものに関連付けられた画像を送信してもよい。
段階510では、サーバー104は、段階508で送信されたコンテンツに関連付けられたインプレッションの統計を更新する。いくつかの態様では、画像をホストし/広告を送るという動作が自動的にページのインプレッションの統計を更新するので、段階508及び段階510が同時に生じる。このようにして、サーバー104は、ウェブサイトの分析データの正確な報告を維持する一方、クライアント102がプリレンダ動作を実行することも可能となる。
図6は、本開示の態様にしたがってプリレンダ動作を管理する方法600の例を説明するフローチャートである。最適なプリレンダリング経験を提供するため、クライアント102は、閲覧経験に影響し得る異なる要因を構成することができる。例えば、ウェブページは、一般にウェブブラウザーを介して様々なページのサービスを提供するためにクッキーとして知られる小さいファイルを使用する。例えば、そのページに登録することなしにユーザが1日に1つのニュース記事にアクセスすることを可能とするために、新しいサイトは、トラッキングクッキー(trackingクッキー)を使用してもよい。ユーザはユーザが読むことを意図していない記事をプリレンダするかもしれないから、このニュースサイトに関連付けられたプリレンダ動作は、ユーザの閲覧経験を妨げることもあり得、したがってユーザが閲覧しなかったページ上で1日に1つの無料記事を費やしてしまうことになる。
いくつかのウェブページは、ページが読み込まれるとすぐに再生が始まる埋め込まれた視聴覚コンテンツを有する。いくつかの実施例では、ここで説明するプリレンダ方法とシステムは、このようなコンテンツがユーザがそのコンテンツをナビゲートする前に再生を始めることを可能とすることができ、したがってユーザがページを閲覧始めるときに、コンテンツはすでに再生している。いくつかのウェブページは、ポップアップページ、スクリプトプログラム、ダウンロードしたもの、認証プロンプト、翻訳バー(Tranlation bars)、及びこれらと同様のもの等のプリレンダリングに適していないかもしれない追加のコンテンツを含んでもよい。したがって、プリレンダモジュール210は、これらの特別なケースを管理するために方法600等の方法を使用してもよい。
段階602では、クライアント102は、プリレンダコンテンツをリクエストしサーバー104等のサーバーからそれを受信する。上記のように、このリクエストは、このリクエストがプリレンダリクエストである旨をサーバーに示すAPI呼び出しの中に存在してもよく、又はAPI呼び出しを伴っていてもよい。このページは、サーバーから受信される応答に基づいてプリレンダされる。プリレンダリングプロセスの間、クライアント102は、以下に説明するようにいくつかの特定のケースについて監視する。特定の順序で提示されているが、例えばクッキー状態の変化を経験する前に、埋め込みビデオ映像を特定する等によってこれらのケースは任意の順序で遭遇し得る。
段階604では、クライアント102は、リクエストされたプリレンダコンテンツがクッキー状態の変化または他の特別なケースを含むかどうかを判定する。例えば、もし、ユーザが銀行のウェブページにアクセスしているなら、もし、口座のページがプリレンダされるなら、そしてユーザが自分の口座からログアウトするなら、プリレンダリンクを選択することがあたかもユーザがまだログインしているように誤ってデータを報告する。したがって、プリレンダは、ユーザがログアウトするとすぐに無効になる。したがって、クライアント102は、プリレンダコンテンツに関連付けられる任意のクッキーの状態を監視し、適切な処置を行う。適切な処置とは、クッキー状態の変化を適切に伝えること、クッキー状態の変化を無視しプリレンダ動作を継続すること、又はプリレンダ動作を諦めて途中停止することを試みることを含んでよい。さらにクライアント102は、そのプリレンダコンテンツが、ポップアップページ、スクリプトされたアプリケーション、ダウンロード、認証メニュー、又は翻訳バー等の特別なケースを含むかどうかを判定する。もし、クッキー状態の変化が起こったか、プリレンダページが特別なケースを含む場合には、本方法は、段階608に進む。そうでない場合には、方法600は、段階606を継続する。
段階608では、クライアント102は、プリレンダ動作を途中停止する。クッキー状態の変化又は段階604において特定された特別なケースによりデータをプリレンダされた古いページあるいはそうでなくてもユーザに見えないページに関連付けるため、クライアント102はプリレンダ動作を途中停止し得る。いくつかの態様では、クライアント102は、クッキー状態の変化を無視してもよい。その時に、方法600は、終了する。
クッキーデータを管理する他の方法として、クライアント102は、プリレンダされたコンテンツに関連付けられた任意のクッキー状態の変化を追跡してもよく、プリレンダされたコンテンツがユーザによりアクセスされた時にその状態の変化を適用してもよい。いくつかの態様において、クライアント102は、クッキー状態の変化における衝突をモニターし衝突の場合にはプリレンダリング動作を途中停止してもよい。例えば、クッキー状態の変化は、プリレンダ動作が完了した後に起こり得るので、衝突の原因となる。このような場合、プリレンダされたバージョンのページは間違ったページデータをユーザに提示することを避けるために廃棄され得る。
段階606では、もし、プリレンダコンテンツが、特別なケースを含まずクッキー状態の変化がなかった場合は、クライアント102は、そのページ上にオーディオ又はビデオ等のマルチメディアコンテンツが存在するかどうかを判定する。例えば、そのページが、ADOBEFLASH、HTML5メディア、または他の種類の埋め込まれたメディアによりプログラムされた埋め込みビデオ映像を含んでも良い。このような状況では、ユーザが現実にそのページをナビゲートするまでは、そのマルチメディアを中断することが望ましいかも知れず、したがって帯域を節約しユーザがマルチメディア・ファイル全体を閲覧することを確実にする。もし、ページが埋め込まれたマルチメディアを含むなら、方法600は、段階612に進む。そうでない場合は、方法600は、段階610に進む。
段階610では、クライアント102は、そのコンテンツがマルチメディアコンテンツ、クッキー状態の変化、特別なケースのいずれも含まないことを判定し、したがってクライアント102は、そのページをプリレンダする。このプリレンダリングプロセスは、サーバー104からのページを受信し、ユーザから隠されたアプリケーションインスタンスにおいてページを表示することにより実行され得る。ページを表示することは、一般に、サーバー104から受信した全てのデータを読み込みことに関係し、隠されていないアプリケーションインスタンスにページを閲覧するとした場合において実行されるから、その中に含まれる任意の命令を実行することに関係している。
段階612では、クライアント102は、すでにそのコンテンツがマルチメディアコンテンツを含むと判定している。したがってクライアント102は、そのページのマルチメディアコンテンツ以外のコンテンツをプリレンダし、そしてそのマルチメディアコンテンツの再生を中断する、又はそのコンテンツに関連するプラグインのインスタンス化を延期してもよい。例えば、クライアント102は、ページの残りをプリレンダリングした後に埋め込まれたオーディオ又はビデオファイルを中断してもよく、あるいはプリレンダコンテンツがユーザに示されるまでフラッシュビデオ(FLASHvideo)が実行しなくてもよい。
段階614では、クライアント102は、ユーザがプリレンダされたコンテンツにアクセスしたかどうかを判定する。もし、ユーザがプリレンダされたコンテンツにアクセスしたなら、コンテンツは、上に説明したように表示され、方法600は、段階616に進む。もし、ユーザがプリレンダされたコンテンツにアクセスしていないなら、例えば、もし図3に関してすでに説明したようにプリレンダ時間の有効期間が過ぎたならば、方法600はその時終了する。
段階616では、クライアント102は、ユーザがプリレンダされたコンテンツにアクセスしたという通知をサーバー104に送信する。上記のように、この通知は、サーバーがそこからイベント通知を受信するように構成されるスクリプトされたAPIを用いて送信されてもよい。このようにして通知を提供することにより、サーバーによるウェブサイト・インプレッションの管理が可能となる(図5参照)。
図7は、本開示の態様に従ってプリレンダ動作を構成する例示的方法700を示すフローチャートである。異なるコンピュータのデバイスは、ネットワーク帯域、システムメモリ、及びプロセサー速度等の異なる能力を有していてもよい。このように、様々なデバイスが異なるプリレンダ動作をサポート可能であってもよい。より大きな能力を有するデバイスは、複数のプリレンダ動作、又はより複雑なページのプリレンダリングをサポートする能力を有してもよい。したがって、方法700は、このシステムの能力に基づいてこれらのプリレンダ動作の構成を提供する。
段階702では、クライアント102は、システム能力の測定を実施する。例えば、クライアント102は、空いているシステムメモリの量をオペレーティングシステムに問い合わせてもよく、クライアント102は、BIOS(basic input−output system)からプロセサー速度を要求してもよく、あるいはクライアント102は、空いている帯域を見つけるためにネットワーク速度テストを実施してもよい。
段階704では、クライアント102は、段階702で決定されるようにその能力に基づいてプリレンダの最大の個数「n」を決定する。いくつかの態様では、クライアント102は、単一のプリレンダ・インスタンスをサポートするための一連のシステム要件を決定してもよい。例えば、単一のプリレンダ・インスタンスは、10%のプロセサー利用率、16メガバイトのシステムメモリ、少なくとも10キロバイト/秒のネットワーク帯域、又は同様の仕様を要件としてもよい。このシステム要件は、最小のメモリ要件、プロセサー利用率、及びネットワーク帯域のそれぞれ等の異なるシステムコンポーネンに対応付けられた複数の能力を含んでも良い。これらのシステム要件は、クライアント102上で実行する単一のプリレンダ・インスタンスのシステム利用率を測定することにより決定してもよい。
例えば、クライアント102は、プリレンダ動作のそれぞれがプリレンダリングの間にシステムプロセサーを必要としそうであるかを判断しても良い。このようなプロセサーの仕様は、ページ最初に読み込まれるときにプロセサー全体が必要となり、その後はプロセサーの必要性が減少するという意味において「バースト性」があるといわれる。このような場合、クライアント102は、ページのプリレンダリングがユーザの閲覧経験に影響を与えないことを確かにするためにプリレンダ・インスタンスに低いプロセサー優先順位を割り当ててもよい。いくつかの態様では、クライアント102は、複数のプリレンダ・インスタンスを決定するためにシステムメモリを監視してもよい。クライアント102は、プリレンダ・インスタンスにより使用されるメモリの量を決定し、その後にその量と利用可能な全メモリ容量とを比較してもよい。ある態様では、クライアント102は、プリレンダリングのためのシステムメモリの特定の量を予約し、予約されたメモリが一杯になるまでプリレンダ・インスタンスを生成してもよい。いくつかの態様では、利用可能な帯域のパーセンテージに基づいて、システムの最大のネットワーク帯域が決定され、そしてプリレンダ・インスタンスが生成される。いくつかの態様では、クライアント102は、局所的な最大帯域を確認するために帯域測定をリモートサーバーから要求してもよく、プリレンダの設定を決定するためにその測定値を使用してもよい。
段階706では、クライアント102は、段階704にて決定されるようにシステム能力がサポートできる限りできるだけ多くの同時のプリレンダを実行するように構成される。いくつかのインスタンスにおいては、プリレンダの数はオプションメニュー等においてユーザにより構成可能であってもよい。
図8は、本開示の態様に従って検索結果ページ内に埋め込まれたプリレンダ命令を処理する例示的方法800を説明するフローチャートである。上記したように、サーバー104は、クライアント102により処理するための検索結果ページ内にプリレンダ命令を埋め込んでもよい。クライアント102は、プリレンダリングのためのリンクを選択するために検索結果ページに埋め込まれたプリレンダ命令を特定してもよい。
段階802では、検索クエリーはサーバー104に送信される。上記したように、検索クエリーは、テキスト文字列、ファイル、画像、ビデオ、又は受信する検索結果の期待に沿ってコンテンツを特定する他の任意の方法であってよい。
段階804では、検索結果が受信される。検索結果は、段階802にて送信された検索クエリーに応答するものである。この検索結果は、上記したように(図2参照)関連性の高低でソートされた一連のテキストリンクとしてユーザに提示されてもよい。
段階806では、プリレンダ命令は、段階804で受信される検索結果に関連付けて特定される。例えば、プリレンダ命令は各結果に関連付けたHTMLタグに含まれていても良く、又はプリレンダ命令は、AJAX又は他のメッセージング・プロトコル等の他の手段によりクライアント102に送信されてもよい。例えば、プリレンダタグは、メッセージング・プロトコルにより受信されるプリレンダ命令に基づいて検索結果ページ上のHTMLタグの中へクライアントにより動的に挿入されてもよい。プリレンダ命令は複数のリンクをプリレンダ候補として特定してもよい。複数のプリレンダ候補が特定された場合、最も高いランキングの結果がクライアントによりプリレンダされるように、プリレンダ命令は、さらにプリレンダ候補のランキングを特定してもよい。クライアント102は、プリレンダ命令及びクライアントの利用可能なシステムリソース(図7参照)に基づいて、プリレンダすべき特定の数「n」個のリンクを特定してもよい。段階808では、段階806で特定されたプリレンダ命令に関連付けられたページがプリレンダされる。クライアント102は、プリレンダリングを実行するかどうかを決定するときに他のデータに気づいていてもよい。例えば、クライアント102は、ユーザがリンクを選択し、その後ウェブブラウザーにおける「戻る」ボタンを押したことを知っていても良い。従って、ユーザは、いったん離れた検索結果と同じ結果を選択することはありそうもない。従って、クライアント102はクライアント102がたった今離れた検索結果の代わりに、次に最も可能性が高いプリレンダ候補の検索結果をプリレンダしてもよい。
段階810では、選択操作は、検索結果の1つに関して実行される。選択操作は、リンククライアント102によりプリレンダされたリンク上に存在する必要は必ずしもない。例えば、ユーザは、プリレンダ命令により特定されるリンク以外のリンクを選択してもよい。ユーザは、検索クエリーに応答して提供される結果は、様々な主題に関連し得て、そしてユーザは、常に最も普通に選択される検索結果を閲覧することを望むとは限らないので、様々な理由によりプリレンダされていないリンクを選択することを望み得る。
段階812では、測定基準が検索結果の選択に関連して記憶される。これらの測定基準によりブラウザーがプリレンダ動作の正確性を特定するデータを追跡することが可能となる。例えば、最適の環境では、ユーザは常にプリレンダ命令に関連付けられたリンクを選択する。ユーザがプリレンダされたリンクを選択したかどうかに関係する測定基準を収集することにより、システムは、プリレンダされたコンテンツの選択を最大化する一方、ユーザがプリレンダされたコンテンツを選択しそうにないプリレンダリングを最小化するという点に関してプリレンダリングの基準が適切かどうか判断してもよい。予測ミスとなったプリレンダ動作は、コンテンツがリクエストされるがアクセスされないという結果となる。このことは、帯域及び処理能力の浪費をもたらす。しかし、ユーザの利益を最大にし、首尾一貫したユーザの経験を提供するために、プリレンダリングは、実際上できるだけ多くの検索結果に用いられてもよい。記憶された測定基準は、解析又は処理のためにサーバー104へ送信されてもよく、あるいは測定基準は、ローカルクライアントに記憶され定期的にアップロードされてもよい。このようにして記憶された測定基準データは、アップロードする前にパーソナルユーザデータが削除され匿名化される。プリレンダ動作に関連する測定基準を保存する方法が以下にさらに記載される(図10参照)。
図9は、本開示の態様に従って検索結果ページ内にプリレンダ命令を埋め込む方法900の例を示すフローチャートである。方法900は、サーバー104等の上で検索エンジンにより提供される一連の検索結果において、プリレンダ命令の1つ又は複数のセットを含むように動作する。ユーザに選択されそうな検索結果は、様々の要因を用いて一連の検索結果から特定され、プリレンダ命令を用いて選択されそうなプリレンダ候補として示される。これらの検索結果は、クライアントから受信された検索クエリーに応答してプリレンダ命令と共にクライアントに提供されてもよい。
段階902では、検索クエリーが受信される。検索クエリーは、テキスト文字列、画像、又はビデオ等の検索動作を構成するのに十分な任意の基準を含んでもよい。検索エンジンは、検索クエリー関連のある1つ又は複数の結果を特定してもよい。これらの結果は、関連のあるコンテンツを含むページへのハイパーリンク、リンクされたページのコンテンツの主な説明、又は検索クエリーに応答して普通に提供される任意の他のデータを含んでもよい。
段階904では、プリレンダ候補は、検索結果の中で決定される。プリレンダ候補は、検索クエリーに対する各結果の関連性(例えば、より多くの関連のある結果はプリレンダ候補となる可能性がより高い)に基づいて、又はクエリーに応答してユーザが通常選択するリンクの統計データに基づいて、又は他の基準により決定されてもよい。検索エンジンは、検索結果に向かうトラフィックの量、検索結果のホストがプリレンダリングをやめているかどうか、又は検索結果に関連付けられるコンテンツの量(例えば、検索結果ページのファイルサイズ、又は検索結果ページ及びリンクされたコンテンツに記憶されるデータの量)等のウェブ分析データに基づいてプリレンダ候補としてのリンクを特定してもよい。検索結果が経験するトラフィックの量は、検索エンジンにより検索結果が提供されるときにユーザが選択する検索結果の数に基づいて決定されてもよいいくつかの態様では、サーバーは、クライアントのネットワーク接続速度を知っていても良く、クライアント接続速度に基づいてプリレンダするリンクの適切な数を示しても良い。
プリレンダ候補は、1つ又は複数の要因又は信号を用いて決定されてもよい。これらは、検索クエリーの関連性、プリレンダ候補に含められるときにユーザが選択する周波数、検索結果に関連付けられるトラフィックの量、ユーザの位置、ユーザの接続速度、検索結果がプリレンダプロセスを止めているかどうか、及び検索結果に関連付けられるウェブページのサイズを含み得るがこれに限定されるわけではない。これらの要因又は信号は、重み付けがなされ、点数を生成するのに使用されてもよく、最も高い点数に関連付けられる結果がプリレンダ候補として特定され、プリレンダ命令と関連付けられても良い。特定の閾値より高い点数を有する全ての検索結果がプリレンダ候補として特定されてもよく、所定の数の検索結果のみがプリレンダ候補として特定されてもよい。
段階906では、例えばプリレンダHTMLタグを適切な検索結果に付加する等により、プリレンダ命令が検索結果ページ内に埋め込まれる。段階908では、プリレンダ命令が埋め込まれたこれらの結果がクライアント102に提供される。
図10は、本開示の態様に従ってプリレンダ測定基準を取得する方法1000の例を示すフローチャートである。リンクがプリレンダされたが選択されないという「誤判定」を最小にする一方、正確性を最大とすることを確実にするために、プリレンダリング動作の測定基準を取得することで、サーバー104の制御装置がどのようにしてリンクをプリレンダ候補として特定するかを管理することが可能となる。正確なデータを収集してプリレンダリング性能を校正するために、データは、データ収集プロセスにつきオプトイン契約をしたクライアントにより提供されてもよい。すべての保存されたユーザデータと同様に、保存された測定基準からパーソナルユーザデータを除去して匿名にするために適切な事前注意が払われる。測定基準データを提出するユーザは2つのグループ、すなわちプリレンダタグを受信するが現実にはそれらをプリレンダしない「抑制」グループと、プリレンダ動作を現実に実行する「テスト」グループとに分かれてもよい。
予測ミスとなった選択は、検索結果をホストするページのための、及びクライアントがプリレンダリングを実行するためのシステムリソースを無駄遣いする結果となる。しかし、一貫したユーザの利益及び最適なユーザの経験を提供するに充分なほど対象範囲は広くすべきでもある。ブラウザーは、プリレンダされたページがいつ可視のブラウザインスタンスの中に交換して入れられたかを知ることができ、よってスワップインが起きた時刻とページが完全に読み込まれる時刻との間の時間を記録することが可能である。この値は、プリレンダ動作によりどれだけの時間が節約できたかを示す。
抑制グループは、検索結果の選択と、選択された結果のブラウザーにおける表示との間の時間の大きさを追跡する基準を提供する。この結果は、プリレンダリング動作を実行するユーザーの全体としての利益を判定するためにプリレンダされたページがブラウザーにおいて表示されるのに要した時間の大きさと比較してもよい。様々なリンクに対してプリレンダリング動作を可能とすることにより節約される時間を決定することにより、最適な時間を節約するリンクがプリレンダリングにより選択されてもよい。「誤判定」または他の準最適なプリレンダ性能を頻繁に生じるリンクは、特にプリレンダリングのための悪い候補としてみなしても良い。このようにして、方法1000は、最大の正確性と対象範囲を確実にするプリレンダリング動作を微調整するのに使用され得る測定基準を提供する。
段階1002では、クライアント102は、これらの検索結果に関連付けられた一連のプリレンダ命令とともに一連の検索結果を受信する。もし、クライアント102が「テスト」クライアントである場合は、そのプリレンダ命令に関連付けられた検索結果は、隠されたブラウザインスタンスにおいてプリレンダされてもよい。もし、クライアントが「抑制」クライアントである場合は、その検索結果は、プリレンダされなくてもよい。「テスト」クライアントは、さらにサブグループに分割されてもよい。例えば、テストクライアントのそれぞれが、1番から9番までのサブグループに含まれていても良い。これらのサブグループは、各プリレンダ技術に関連する性能上の利点を判定するために異なるプリレンダ技術(例えば、異なる検索結果選択方法、プリレンダリングのための異なる閾値)を採用しても良い。「リンクプリレンダ実験」(LPE)という用語が検索結果ページのアドレスに追加する等により、特定のテスト識別子が検索結果ページのアドレスにおけるクライアントに特定されてもよい。LPEなる用語は、提供された検索結果に関連付けられた特定のプリレンダ実験に対して1から9等の値と関連付けられても良い。クライアントはプリレンダプロセスを改善するために測定基準を記憶する時に、LPEという用語を追跡してもよい。
段階1004では、ユーザのクライアントとの意思疎通は、マウスクリック、タッチスクリーンイベント、又は特定の結果についてキーボードを押すこと等により特定の検索結果の選択について監視される。
段階1006では、選択された結果に関連付けられる任意のリダイレクション識別子が特定される。検索エンジンは、検索結果を表示する時に頻繁にリダイレクションを使用する。検索結果ページ内のハイパーリンクは、検索エンジンのリダイレクトページにリンクしていてもよく、プリレンダされる実際のコンテンツを指し示す。リダイレクション動作を伴うページが「抑制」クライアントを用いて選択されるときに、方法は、リダイレクションページがリダイレクトする結果の代わりの結果として、リダイレクションページを特定してもよい。測定基準が、適切に、リダイレクションページではなく実際の宛先ページの読み込み時間に関係することを確実にするために、そのリダイレクションページの目標アドレスはプリレンダ命令内に指定されてもよい。このようにして、クライアントは、このようなリダイレクションが検索結果ページ上で起きる時を「知る」ことができ、したがってプリレンダされたであろう検索結果におけるアドレスの記録を維持でき、したがって実際の宛先ページの読み込み時間を正しく記録できる。
テスト・クライアントが実験の目的のために複数のサブグループに分割される場合、リダイレクション識別子は、実験の結果を追跡するために使用され得る。例えば、一連の検索結果は、所与の一連のプリレンダ命令と所与のテスト識別子(例えば、プリレンダすべきリンクを選択する特定のアルゴリズムを特定する)に関連付けられていてもよい。ユーザが提示されたリンクの1つを選択する時に、その選択されたリンクに関連付けられるリダイレクションリンクは、実験サブグループ(例えば、1から9)、その選択されたリンク、検索クエリー、及びその選択されたリンクがプリレンダされたかどうかをを示してもよい。
段階1008では、選択された結果のページの読み込み時間が測定される。この読み込み時間は、ユーザが検索結果を選択してからその検索結果がブラウザーに完全に読み込まれるまでの時間に関係する。「抑制」クライアントでは、この読み込み時間は、そのコンテンツをホストするサーバーからの、検索結果に関連付けられるコンテンツをネットワークを介してリクエストし、ブラウザーにおいてそのコンテンツをレンダリングする動作を含む。「テスト」クライアントにおいて、読み込み時間は、プリレンダ動作の間受信していない任意のコンテンツをリクエストし、そしてブラウザーにそのコンテンツを表示するのに要する時間を含む。通常、「テスト」クライアントに関連付けられる読み込み時間は、「抑制」クライアントに関連付けられる時間より少なくあるべきである。なぜなら、「テスト」クライアントは、トランザクションのネットワークコンテンツリクエスト部分に関し先んじたスタートを切るからである。「テスト」クライアント及び「抑制」クライアントの読み込み時間の比較により、プリレンダリングによりユーザにとってどの程度の時間が節約できるかについての幅広い視点が与えられる。
段階1010では、検索結果の選択、検索結果選択がプリレンダされたかどうか、LPE数、及び検索結果選択の読み込み時間が測定基準として記憶される。これらの測定基準は、プリレンダ命令の正確性(例えば、プリレンダされた検索結果が選択されたかどうか)及びプリレンダ動作により節約された時間(例えば、「抑制」クライアントにおける読み込み時間と「テスト」クライアントにおける読み込み時間との差)を示すデータを提供してもよい。測定基準は、解析のためにすぐにサーバー104にアップロードされ、又はサーバー104に定期的にアップロードするためにクライアント102に記憶されてもよい。サーバー104は、プリレンダの的確性が低い検索結果からのプリレンダ命令を除去する等のプリレンダすべき個々の結果を特定するための測定基準で自動処理を実行してもよい。
図解された方法の段階は、限定することを意図するものではない。その方法の機能は、ここで示したよりも少ないの数又は多い数の段階で存在することができ、説明した方法により、事象の特定の順序は図において示されたものと異なってもよい。
ここに記載されたシステム及び方法は、検索結果ページのプリレンダリングのための改良された方法とシステムを有利に提供する。プリレンダ命令を検索結果ページ内に埋め込むことにより、ユーザの経験は、ユーザが選択する可能性の高い検索結果に対する待ち時間を減少させることで改善され得る。サイトトラフィック、結果の関連性、特定の検索クエリー、ナビゲーションの履歴データ、及び対象範囲及び正確性を最大化し、誤判定及び帯域の浪費を最小化するプリレンダ命令を提供するための他の測定基準等の変数を考慮に入れ得るので、このように検索エンジンはプリレンダ命令を提供するのに適している。検索エンジンは、プリレンダ経験を改善するために使用される測定基準を蓄積するクライアントデバイスと通信もし得る。
上述の特徴のこれらの並びに他の変形及び組み合わせは、特許請求の範囲で定義した技術から離れることなく利用することができるので、これまで説明した典型的な実施の形態は、特許請求の範囲で定義した技術を限定するものではなく、概説するためのものであると理解すべきである。当然のことながら、ここに記載した例示的な実施の形態(及び、「等の」、「例えば」、「含む」、のような語句)は、権利化を要求する技術を特定の実施例に限定するものと解釈すべきでなく、実施例は多くの可能な形態の一部を概説するためのものである。

Claims (25)

  1. 検索結果ページを用いてプリレンダするためにコンピュータを利用する方法であって、前記方法は、
    プロセサーを用いて、検索クエリーに応答して少なくとも1つの検索結果を決定するステップと、
    前記少なくとも1つの検索結果を備える検索結果ページを生成するステップと、
    前記少なくとも1つの検索結果の中で少なくとも1つのプリレンダ候補を特定するステップであって、前記少なくとも1つのプリレンダ候補は選択されそうな検索結果を示す、前記特定するステップと、
    前記少なくとも1つのプリレンダ候補に対するプリレンダ命令を前記検索結果ページに埋め込むステップと、
    前記検索クエリーを提供したクライアントデバイスに前記検索結果ページを提供するステップと、
    を備える方法。
  2. 前記少なくとも1つのプリレンダ候補は、少なくとも1つの信号を用いて特定され、前記少なくとも1つの信号は、前記検索結果を選択するのに使用する周波数、前記検索エンジンから前記検索結果へ流れるトラフィックの量、前記クライアントデバイスの位置、又は前記検索結果に関連付けられる1つ又は複数のリソースの大きさのいずれかである、請求項1に記載の方法。
  3. 前記プリレンダ命令は、前記少なくとも1つの検索結果に関連付けられるハイパーテキスト・マークアップ言語タグ内に埋め込まれている、請求項1に記載の方法。
  4. 前記プリレンダ命令は、クライアント側のスクリプトによりクライアントデバイスに提供される、請求項1に記載の方法。
  5. 前記プリレンダ候補が表示されるときに選択されるかどうかを示す前記クライアントデバイスから測定基準を受信するステップと、
    前記測定基準を用いて後続する検索クエリーに応答して将来のプリレンダ候補を特定するステップと、をさらに備える、請求項1に記載の方法。
  6. 前記測定基準は、選択されたリンクがプリレンダされかどうかと、前記選択されたリンクの読み込み時間とのうち少なくとも1つである、請求項5に記載の方法。
  7. 前記検索結果ページに実験識別子を埋め込むステップであって、前記実験識別子は、前記少なくとも1つのプリレンダ候補を特定するのに使用される特定の方法に対応する、前記埋め込むステップと、
    前記検索結果ページに関連付けられる1つ又は複数のリダイレクション動作を用いて選択動作に関連付けられる前記実験識別子、及び前記少なくとも1つのプリレンダ候補が選択されたかどうかを特定するステップと、をさらに備える、請求項1に記載の方法。
  8. 検索結果ページを用いてプリレンダするためにコンピュータを利用する方法であって、前記方法は、
    検索クエリーを検索エンジンに送信するステップと
    前記検索クエリーに応答する一連の検索結果を受信するステップであって、前記一連の検索結果は、少なくとも1つの前記検索結果は、プリレンダリングの候補であることを示す少なくとも1つのプリレンダ命令を備える、前記受信するステップと、
    少なくとも1つのプリレンダ命令を特定するステップと、
    前記少なくとも1つのプリレンダ命令に関連付けられる前記少なくとも1つの検索結果をプリレンダするステップと、を
    備える方法。
  9. 前記一連の検索結果から選択された検索結果において実行される選択動作を監視するステップと、
    もし、前記選択された検索結果が前記少なくとも1つの検索結果であるなら、前記少なくとも1つの検索結果を交換によりアクティブなブラウザインスタンスに入れる、交換ステップと、をさらに備える請求項8に記載の方法。
  10. 前記一連の検索結果から選択された検索結果の選択に関連付けられる前記測定基準を記憶するステップと、
    前記測定基準を送信して、後続する検索クエリーに応答してプリレンダリング候補の選択を改善するために統計データを提供するステップと、をさらに備える、請求項8に記載の方法。
  11. 前記測定基準は、前記選択された検索結果、前記選択された検索結果が前記少なくとも1つの検索結果であるかどうか、及び前記選択された検索結果にアクセスするためのページ読み込み時間のうちの少なくとも1つである、請求項10に記載の方法。
  12. 少なくとも1つの検索結果に関連付けられるハイパーリンクにプリレンダタグを挿入するために前記プリレンダ命令を実行するステップをさらに備える、請求項8に記載の方法。
  13. 前記測定基準は、前記一連の検索結果に埋め込まれた実験識別子と、前記少なくとも1つの検索結果をプリレンダリングの候補として選択する方法を示す前記実験識別子と、をさらに備える、請求項10に記載の方法。
  14. 非一時的なコンピュータ可読記憶媒体であって、前記記憶媒体はプロセサーにより実行される時に、以下の方法を実行する命令を備え、前記方法は、
    検索クエリーを検索エンジンに送信するステップと、
    前記検索クエリーに応答して一連の検索結果を受信するステップであって、前記一連の検索結果は、前記検索結果のうち少なくとも1つがプリレンダリングの候補であることを示す少なくとも1つのプリレンダ命令を備える、前記受信するステップと、
    前記少なくとも1つのプリレンダ命令を特定するステップと、
    前記少なくとも1つのプリレンダ命令に関連付けられる前記少なくとも1つの検索結果をプリレンダするステップと、を備える、記憶媒体。
  15. 前記命令は、
    前記一連の検索結果から選択された検索結果において実行される選択動作を監視するステップと、
    もし、前記選択された検索結果が前記少なくとも1つの検索結果であるなら、前記少なくとも1つの検索結果を交換によりアクティブなブラウザインスタンスに入れるステップをさらに備える、請求項14に記載の記憶媒体。
  16. 前記命令は、さらに、
    前記一連の検索結果から選択された検索結果の選択に関連付けられる測定基準を記憶するステップと、
    後続する検索クエリーに応答して前記測定基準を送信してプリレンダリング候補の選択を改善するための統計データを提供するステップと、を備える、請求項14に記載の記憶媒体。
  17. 前記測定基準は、前記選択された検索結果、前記選択された検索結果が前記少なくとも1つの検索結果であるかどうか、及び前記選択された検索結果にアクセスするためのページ読み込み時間のうちの少なくとも1つである、請求項14に記載の記憶媒体。
  18. 前記測定基準は、前記一連の検索結果に埋め込まれた実験識別子をさらに備え、前記実験識別子がプリレンダリングを行う候補として前記検索結果のうちの前記少なくとも1つを選択する方法を示す、請求項14に記載の記憶媒体。
  19. 検索結果ページを用いてプリレンダする処理システムであって、前記処理システムは、
    少なくとも1つのプロセサーに接続されたメモリと、
    前記少なくとも1つのプロセサーを備え、
    前記少なくとも1つのプロセサーは、
    検索クエリーに応答して少なくとも1つの検索結果を決定し、
    前記少なくとも1つの検索結果を備える前記検索結果ページを生成し、
    前記少なくとも1つの検索結果の中で、選択されそうな検索結果を示す少なくとも1つのプリレンダ候補を特定し、
    前記少なくとも1つのプリレンダ候補のためのプリレンダ命令を前記検索結果ページに埋め込み、
    前記検索クエリーを提供するクライアントデバイスに前記検索結果ページを提供するように構成される。
  20. 前記少なくとも1つのプリレンダ候補は、少なくとも1つの信号を使用して特定され、前記少なくとも1つの信号は、前記検索結果を選択するのに使用される周波数、前記検索エンジンから前記検索結果へ流れるトラフィックの量、前記クライアントデバイスの位置、又は前記検索結果に関連付けられる1つ又は複数のリソースの大きさのいずれかである、請求項19に記載の処理システム。
  21. 前記プリレンダ命令は、前記少なくとも1つの検索結果に関連付けられるハイパーテキスト・マークアップ言語タグ内に埋め込まれている、請求項19に記載の処理システム。
  22. 前記プリレンダ命令は、クライアント側のスクリプトによりクライアントデバイスに提供される、請求項19に記載の処理システム。
  23. 前記プロセサーは、
    前記プリレンダ候補が表示されるときに選択されるかどうかを示す前記クライアントデバイスからの測定基準を受信し、
    前記測定基準を用いて後続する検索クエリーに応答して将来のプリレンダ候補を特定するようにさらに構成される、請求項19に記載の処理システム。
  24. 前記測定基準は、選択されたリンクがプリレンダされかどうかと、前記選択されたリンクの読み込み時間とのうち少なくとも1つである、請求項23に記載の処理システム。
  25. 前記プロセサーは、
    前記検索結果ページに前記少なくとも1つのプリレンダ候補を特定するのに使用される特定の方法に対応する実験識別子を埋め込み、
    前記検索結果ページに関連付けられる1つ又は複数のリダイレクション動作を用いて選択動作に関連付けられる前記実験識別子、及び前記少なくとも1つのプリレンダ候補が選択されたかどうかを特定するようにさらに構成される、請求項19に記載の処理システム。
JP2014553406A 2012-01-19 2013-01-17 検索結果へのアクセスを改良するシステム及び方法 Active JP6013514B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/353,626 2012-01-19
US13/353,626 US8793235B2 (en) 2012-01-19 2012-01-19 System and method for improving access to search results
PCT/US2013/021927 WO2013109744A1 (en) 2012-01-19 2013-01-17 System and method for improving access to search results

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2016184239A Division JP6122199B2 (ja) 2012-01-19 2016-09-21 検索結果へのアクセスを改良するシステム、方法及び記憶媒体

Publications (3)

Publication Number Publication Date
JP2015511347A true JP2015511347A (ja) 2015-04-16
JP2015511347A5 JP2015511347A5 (ja) 2016-03-03
JP6013514B2 JP6013514B2 (ja) 2016-10-25

Family

ID=48798082

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2014553406A Active JP6013514B2 (ja) 2012-01-19 2013-01-17 検索結果へのアクセスを改良するシステム及び方法
JP2016184239A Active JP6122199B2 (ja) 2012-01-19 2016-09-21 検索結果へのアクセスを改良するシステム、方法及び記憶媒体
JP2017067288A Active JP6517263B2 (ja) 2012-01-19 2017-03-30 検索結果へのアクセスを改良するシステム、方法及び記憶媒体
JP2019078416A Active JP6646781B2 (ja) 2012-01-19 2019-04-17 検索結果へのアクセスを改良するシステム、方法及び記憶媒体

Family Applications After (3)

Application Number Title Priority Date Filing Date
JP2016184239A Active JP6122199B2 (ja) 2012-01-19 2016-09-21 検索結果へのアクセスを改良するシステム、方法及び記憶媒体
JP2017067288A Active JP6517263B2 (ja) 2012-01-19 2017-03-30 検索結果へのアクセスを改良するシステム、方法及び記憶媒体
JP2019078416A Active JP6646781B2 (ja) 2012-01-19 2019-04-17 検索結果へのアクセスを改良するシステム、方法及び記憶媒体

Country Status (7)

Country Link
US (3) US8793235B2 (ja)
EP (1) EP2805265B1 (ja)
JP (4) JP6013514B2 (ja)
KR (3) KR101891488B1 (ja)
CN (2) CN107463641B (ja)
AU (3) AU2013209728B2 (ja)
WO (1) WO2013109744A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018160264A (ja) * 2018-06-12 2018-10-11 グーグル エルエルシー バッチ最適化レンダリング及びフェッチアーキテクチャ
US10713330B2 (en) 2014-06-26 2020-07-14 Google Llc Optimized browser render process
US11328114B2 (en) 2014-06-26 2022-05-10 Google Llc Batch-optimized render and fetch architecture

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8924799B2 (en) * 2012-04-16 2014-12-30 Yahoo! Inc. Method and system for providing a predefined content to a user
US9892198B2 (en) * 2012-06-07 2018-02-13 Oath Inc. Page personalization performed by an edge server
US20140156626A1 (en) * 2012-11-30 2014-06-05 Microsoft Corporation Embedded externally hosted content in search result page
US9002821B2 (en) 2013-01-16 2015-04-07 Google Inc. Indexing application pages of native applications
US9146972B2 (en) 2013-03-15 2015-09-29 Google Inc. Ranking of presentation modes for particular content
US8996520B2 (en) 2013-03-15 2015-03-31 Google Inc. Ranking of native application content
US9135346B2 (en) 2013-06-07 2015-09-15 Google Inc. Index data for native applications
US9311407B2 (en) 2013-09-05 2016-04-12 Google Inc. Native application search results
RU2583739C2 (ru) * 2013-10-16 2016-05-10 Общество С Ограниченной Ответственностью "Яндекс" Сервер для определения поисковой выдачи на поисковый запрос и электронное устройство
US9043696B1 (en) 2014-01-03 2015-05-26 Palantir Technologies Inc. Systems and methods for visual definition of data associations
US9608870B1 (en) 2014-02-28 2017-03-28 Google Inc. Deep link verification for native applications
US9251224B2 (en) 2014-03-04 2016-02-02 Google Inc. Triggering and ranking of native applications
US9652508B1 (en) 2014-03-05 2017-05-16 Google Inc. Device specific adjustment based on resource utilities
US10061796B2 (en) 2014-03-11 2018-08-28 Google Llc Native application content verification
US9645980B1 (en) 2014-03-19 2017-05-09 Google Inc. Verification of native applications for indexing
US9524347B1 (en) 2014-04-01 2016-12-20 Google Inc. Automatically implementing an application in response to a search query
US9513961B1 (en) 2014-04-02 2016-12-06 Google Inc. Monitoring application loading
US9576070B2 (en) 2014-04-23 2017-02-21 Akamai Technologies, Inc. Creation and delivery of pre-rendered web pages for accelerated browsing
US9495405B2 (en) * 2014-04-28 2016-11-15 International Business Machines Corporation Big data analytics brokerage
US9767159B2 (en) 2014-06-13 2017-09-19 Google Inc. Ranking search results
US10013496B2 (en) 2014-06-24 2018-07-03 Google Llc Indexing actions for resources
RU2710293C2 (ru) 2014-06-24 2019-12-25 Гугл Инк. Поисковые результаты для нативных приложений
US10210263B1 (en) 2014-06-24 2019-02-19 Google Llc Native application search results
US9892190B1 (en) 2014-06-25 2018-02-13 Google Inc. Search suggestions based on native application history
WO2015200600A1 (en) 2014-06-25 2015-12-30 Google Inc. Deep links for native applications
CN104239562A (zh) * 2014-09-26 2014-12-24 可牛网络技术(北京)有限公司 网页显示方法和装置
CN104281677A (zh) * 2014-09-29 2015-01-14 百度在线网络技术(北京)有限公司 页面的展现方法及装置
CN105808606B (zh) * 2014-12-31 2020-05-15 北京奇虎科技有限公司 一种移动设备上的搜索方法和装置
US10812580B2 (en) * 2015-01-30 2020-10-20 Akamai Technologies, Inc. Using resource timing data for server push
US10313463B2 (en) 2015-02-19 2019-06-04 Akamai Technologies, Inc. Systems and methods for avoiding server push of objects already cached at a client
RU2015111360A (ru) 2015-03-30 2016-10-20 Общество С Ограниченной Ответственностью "Яндекс" Способ (варианты) и система (варианты) обработки поискового запроса
US9952916B2 (en) * 2015-04-10 2018-04-24 Microsoft Technology Licensing, Llc Event processing system paging
US20160314215A1 (en) * 2015-04-21 2016-10-27 Google Inc. Generating mobile-friendliness scores for resources
US9348671B1 (en) 2015-07-23 2016-05-24 Google Inc. Monitoring application loading
US10120949B2 (en) * 2015-10-29 2018-11-06 Google Llc Indexing native application data
US10726077B1 (en) * 2016-02-05 2020-07-28 Nativo, Inc. Server side content page re-rendering
US10341417B2 (en) * 2016-03-23 2019-07-02 Oath Inc. Target webpage performance
US10324990B2 (en) * 2016-03-23 2019-06-18 International Business Machines Corporation Providing continued searching and associated indicators
US10452724B2 (en) * 2016-05-18 2019-10-22 Google Llc Attribution model for content item conversions
US11580186B2 (en) 2016-06-14 2023-02-14 Google Llc Reducing latency of digital content delivery over a network
CN106127514A (zh) * 2016-06-21 2016-11-16 武汉斗鱼网络科技有限公司 一种用于直播网站的广告展示方法及装置
US10142252B2 (en) * 2016-06-24 2018-11-27 Verizon Patent And Licensing Inc. Server intelligence for network speed testing control
US11526521B2 (en) * 2016-07-15 2022-12-13 Microsoft Technology Licensing, Llc Prefetching using dynamic user model to reduce latency
US20180114033A1 (en) * 2016-10-20 2018-04-26 Salesforce.Com, Inc. Controlled execution of queries for protecting sensitive data in query responses in an on-demand services environment
CN107977272A (zh) * 2016-10-25 2018-05-01 腾讯科技(深圳)有限公司 应用运行的方法及装置
CN106790356A (zh) * 2016-11-15 2017-05-31 广东欧珀移动通信有限公司 一种数据备份、下载方法及相关设备
US20190317970A1 (en) * 2016-12-16 2019-10-17 Google Llc Content search engine
KR102393818B1 (ko) * 2017-02-02 2022-05-03 구글 엘엘씨 커스텀 디지털 컴포넌트
US11042426B2 (en) 2018-08-23 2021-06-22 International Business Machines Corporation Utilizing reusable AJAX requests
CN109271580B (zh) * 2018-11-21 2022-04-01 百度在线网络技术(北京)有限公司 搜索方法、装置、客户端和搜索引擎
EP3920025A1 (en) * 2019-05-06 2021-12-08 Google LLC Proactive caching of transient assistant action suggestions at a feature phone
US11308100B2 (en) 2019-06-25 2022-04-19 Amazon Technologies, Inc. Dynamically assigning queries to secondary query processing resources
CN112417264B (zh) * 2019-08-23 2024-01-30 腾讯科技(深圳)有限公司 一种信息搜索的方法及装置
JP7039045B2 (ja) 2019-08-26 2022-03-22 株式会社フェニックスバイオ ヒト脂肪肝モデル細胞
CN110704275B (zh) * 2019-09-09 2021-03-19 北京房江湖科技有限公司 终端app的标记数量显示方法、装置、存储介质及处理器
CN111444408B (zh) * 2020-03-26 2021-09-14 腾讯科技(深圳)有限公司 网络搜索处理方法、装置、电子设备
CN112084395A (zh) * 2020-09-25 2020-12-15 百度国际科技(深圳)有限公司 搜索方法、搜索装置、电子设备和存储介质
CN112100481A (zh) * 2020-09-25 2020-12-18 百度国际科技(深圳)有限公司 搜索方法、搜索装置、电子设备和存储介质
KR20220071173A (ko) * 2020-11-18 2022-05-31 쿠팡 주식회사 가상 서버들로부터 대용량 로그 파일들을 프로세싱하는 컴퓨터 시스템 및 방법
US11790003B2 (en) 2020-11-30 2023-10-17 Red Hat, Inc. Client-based search query autocomplete
US11263821B1 (en) * 2021-01-20 2022-03-01 Google Llc Generating augmented reality prerenderings using template images
US20220244820A1 (en) * 2021-02-02 2022-08-04 Taboola.Com Ltd In-page navigation
CN112905927A (zh) * 2021-03-19 2021-06-04 北京字节跳动网络技术有限公司 一种搜索方法、装置、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006235760A (ja) * 2005-02-22 2006-09-07 Nippon Telegr & Teleph Corp <Ntt> 情報閲覧システム、方法およびプログラム
US20070220010A1 (en) * 2006-03-15 2007-09-20 Kent Thomas Ertugrul Targeted content delivery for networks
JP2010186295A (ja) * 2009-02-12 2010-08-26 Nec Corp 情報検索システム及び情報検索方法並びにプログラム
WO2011031102A2 (en) * 2009-09-13 2011-03-17 Samsung Electronics Co., Ltd. Search method, apparatus, and system for providing preview information

Family Cites Families (139)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7103594B1 (en) 1994-09-02 2006-09-05 Wolfe Mark A System and method for information retrieval employing a preloading procedure
US6604103B1 (en) 1994-09-02 2003-08-05 Mark A. Wolfe System and method for information retrieval employing a preloading procedure
US7467137B1 (en) 1994-09-02 2008-12-16 Wolfe Mark A System and method for information retrieval employing a preloading procedure
US5715445A (en) 1994-09-02 1998-02-03 Wolfe; Mark A. Document retrieval system employing a preloading procedure
US5727129A (en) 1996-06-04 1998-03-10 International Business Machines Corporation Network system for profiling and actively facilitating user activities
US6256712B1 (en) 1997-08-01 2001-07-03 International Business Machines Corporation Scaleable method for maintaining and making consistent updates to caches
US6012052A (en) 1998-01-15 2000-01-04 Microsoft Corporation Methods and apparatus for building resource transition probability models for use in pre-fetching resources, editing resource link topology, building resource link topology templates, and collaborative filtering
US6055569A (en) 1998-01-27 2000-04-25 Go Ahead Software Inc. Accelerating web access by predicting user action
IL125432A (en) 1998-01-30 2010-11-30 Easynet Access Inc Personalized internet interaction
US6182133B1 (en) 1998-02-06 2001-01-30 Microsoft Corporation Method and apparatus for display of information prefetching and cache status having variable visual indication based on a period of time since prefetching
US6100871A (en) 1998-04-29 2000-08-08 Multitude, Inc. Dynamic pointer having time-dependent informational content
US6098064A (en) 1998-05-22 2000-08-01 Xerox Corporation Prefetching and caching documents according to probability ranked need S list
EP1105819B1 (en) 1998-08-26 2008-03-19 Fractal Edge Limited Methods and devices for mapping data files
JP2000132450A (ja) 1998-10-29 2000-05-12 Mitsubishi Electric Corp データ制御装置及びデータ制御方法
JP3912464B2 (ja) 1998-11-13 2007-05-09 セイコーエプソン株式会社 画面表示データ読込装置
US6842782B1 (en) 1998-12-08 2005-01-11 Yodlee.Com, Inc. Method and apparatus for tracking functional states of a web-site and reporting results to web developers
US7428701B1 (en) 1998-12-18 2008-09-23 Appligent Inc. Method, system and computer program for redaction of material from documents
US6976090B2 (en) 2000-04-20 2005-12-13 Actona Technologies Ltd. Differentiated content and application delivery via internet
US20050055426A1 (en) 2000-06-12 2005-03-10 Kim Smith System, method and computer program product that pre-caches content to provide timely information to a user
US6717600B2 (en) 2000-12-15 2004-04-06 International Business Machines Corporation Proximity selection of selectable item in a graphical user interface
US20080059532A1 (en) * 2001-01-18 2008-03-06 Kazmi Syed N Method and system for managing digital content, including streaming media
US7246104B2 (en) 2001-03-21 2007-07-17 Nokia Corporation Method and apparatus for information delivery with archive containing metadata in predetermined language and semantics
US20030193994A1 (en) 2001-03-21 2003-10-16 Patrick Stickler Method of managing media components
US6954749B2 (en) 2002-10-07 2005-10-11 Metatomix, Inc. Methods and apparatus for identifying related nodes in a directed graph having named arcs
US7584418B2 (en) 2001-05-31 2009-09-01 Oracle International Corporation Methods, systems, and articles of manufacture for prefabricating an information page
US7716332B1 (en) 2001-06-20 2010-05-11 At&T Intellectual Property I, L.P. System and method for server-based predictive caching of back-end system data
US20030126136A1 (en) * 2001-06-22 2003-07-03 Nosa Omoigui System and method for knowledge retrieval, management, delivery and presentation
US7003566B2 (en) 2001-06-29 2006-02-21 International Business Machines Corporation Method and system for predictive directional data caching
US7047502B2 (en) 2001-09-24 2006-05-16 Ask Jeeves, Inc. Methods and apparatus for mouse-over preview of contextually relevant information
US6766422B2 (en) 2001-09-27 2004-07-20 Siemens Information And Communication Networks, Inc. Method and system for web caching based on predictive usage
US6871218B2 (en) 2001-11-07 2005-03-22 Oracle International Corporation Methods and systems for preemptive and predictive page caching for improved site navigation
US7159025B2 (en) 2002-03-22 2007-01-02 Microsoft Corporation System for selectively caching content data in a server based on gathered information and type of memory in the server
US7277924B1 (en) 2002-05-07 2007-10-02 Oracle International Corporation Method and mechanism for a portal website architecture
US6993586B2 (en) 2002-05-09 2006-01-31 Microsoft Corporation User intention modeling for web navigation
US7139798B2 (en) 2002-05-17 2006-11-21 Groove Networks, Inc. Method and apparatus for connecting a secure peer-to-peer collaboration system to an external system
DE60216980D1 (de) 2002-06-10 2007-02-01 Caplin Systems Ltd Client-server kommunikationssystem
US20040031052A1 (en) 2002-08-12 2004-02-12 Liberate Technologies Information platform
US8005919B2 (en) 2002-11-18 2011-08-23 Aol Inc. Host-based intelligent results related to a character stream
US7401072B2 (en) 2003-06-10 2008-07-15 Google Inc. Named URL entry
US7836391B2 (en) 2003-06-10 2010-11-16 Google Inc. Document search engine including highlighting of confident results
US7281202B2 (en) 2003-06-19 2007-10-09 Microsoft Corporation Framework for creating modular web applications
US8346587B2 (en) 2003-06-30 2013-01-01 Microsoft Corporation Models and methods for reducing visual complexity and search effort via ideal information abstraction, hiding, and sequencing
US8103742B1 (en) 2003-11-24 2012-01-24 Amazon Technologies, Inc. Deferred and off-loaded rendering of selected portions of web pages to incorporate late-arriving service data
US7614004B2 (en) 2003-12-15 2009-11-03 Microsoft Corporation Intelligent forward resource navigation
US7774721B2 (en) 2003-12-15 2010-08-10 Microsoft Corporation Intelligent backward resource navigation
US7483941B2 (en) 2004-01-13 2009-01-27 International Business Machines Corporation System and method for dynamically inserting prefetch tags by the web server
US7155336B2 (en) 2004-03-24 2006-12-26 A9.Com, Inc. System and method for automatically collecting images of objects at geographic locations and displaying same in online directories
US7539674B2 (en) 2004-04-08 2009-05-26 Yahoo! Inc. Systems and methods for adaptive scheduling of references to documents
US7950026B1 (en) 2004-06-24 2011-05-24 Julian Michael Urbach Virtual application execution system and method
US7558822B2 (en) 2004-06-30 2009-07-07 Google Inc. Accelerating user interfaces by predicting user actions
US7249005B2 (en) * 2004-08-17 2007-07-24 Dirtt Environmental Solutions Ltd. Design software incorporating efficient 3-D rendering
US7761814B2 (en) 2004-09-13 2010-07-20 Microsoft Corporation Flick gesture
WO2006036781A2 (en) 2004-09-22 2006-04-06 Perfect Market Technologies, Inc. Search engine using user intent
WO2006037054A1 (en) 2004-09-27 2006-04-06 Browster, Inc. Method and apparatus for enhanced browsing
US20060143568A1 (en) 2004-11-10 2006-06-29 Scott Milener Method and apparatus for enhanced browsing
US7499940B1 (en) 2004-11-11 2009-03-03 Google Inc. Method and system for URL autocompletion using ranked results
US7321655B2 (en) 2005-02-07 2008-01-22 Adomo, Inc. Caching user information in an integrated communication system
US7480669B2 (en) 2005-02-15 2009-01-20 Infomato Crosslink data structure, crosslink database, and system and method of organizing and retrieving information
US7392258B2 (en) 2005-02-25 2008-06-24 International Business Machines Corporation Method and computer program product for dynamic weighting of an ontological data model
US7536635B2 (en) 2005-04-25 2009-05-19 Microsoft Corporation Enabling users to redact portions of a document
US7694008B2 (en) 2005-05-04 2010-04-06 Venturi Wireless Method and apparatus for increasing performance of HTTP over long-latency links
US7840589B1 (en) 2005-05-09 2010-11-23 Surfwax, Inc. Systems and methods for using lexically-related query elements within a dynamic object for semantic search refinement and navigation
US20060282771A1 (en) 2005-06-10 2006-12-14 Tad Vinci Verifying document compliance to a subsidiary standard
US20060293957A1 (en) 2005-06-28 2006-12-28 Claria Corporation Method for providing advertising content to an internet user based on the user's demonstrated content preferences
US7487147B2 (en) 2005-07-13 2009-02-03 Sony Computer Entertainment Inc. Predictive user interface
CA2513018A1 (en) 2005-07-22 2007-01-22 Research In Motion Limited Method for training a proxy server for content delivery based on communication of state information from a mobile device browser
WO2007089274A2 (en) 2005-07-29 2007-08-09 Cataphora, Inc. An improved method and apparatus for sociological data analysis
US8001471B2 (en) 2006-02-28 2011-08-16 Maven Networks, Inc. Systems and methods for providing a similar offline viewing experience of online web-site content
US20070208704A1 (en) 2006-03-06 2007-09-06 Stephen Ives Packaged mobile search results
US20070226633A1 (en) 2006-03-06 2007-09-27 International Business Machines Corporation Copying and pasting portlets in a portal environment
US7509299B2 (en) * 2006-03-13 2009-03-24 Microsoft Corporation Calculating web page importance based on a conditional Markov random walk
US20080052219A1 (en) 2006-03-31 2008-02-28 Combinenet, Inc. System for and method of expressive auctions of user events
US8190650B2 (en) 2006-05-02 2012-05-29 Microsoft Corporation Efficiently filtering using a web site
GB0702587D0 (en) 2006-05-05 2007-03-21 Omnifone Ltd Digital rights management
US7747749B1 (en) 2006-05-05 2010-06-29 Google Inc. Systems and methods of efficiently preloading documents to client devices
US7876335B1 (en) 2006-06-02 2011-01-25 Adobe Systems Incorporated Methods and apparatus for redacting content in a document
US7945563B2 (en) 2006-06-16 2011-05-17 Yahoo! Inc. Search early warning
US7685192B1 (en) 2006-06-30 2010-03-23 Amazon Technologies, Inc. Method and system for displaying interest space user communities
US7660815B1 (en) 2006-06-30 2010-02-09 Amazon Technologies, Inc. Method and system for occurrence frequency-based scaling of navigation path weights among online content sources
US8386509B1 (en) 2006-06-30 2013-02-26 Amazon Technologies, Inc. Method and system for associating search keywords with interest spaces
US7802305B1 (en) 2006-10-10 2010-09-21 Adobe Systems Inc. Methods and apparatus for automated redaction of content in a document
US8943332B2 (en) 2006-10-31 2015-01-27 Hewlett-Packard Development Company, L.P. Audit-log integrity using redactable signatures
US20080140941A1 (en) 2006-12-07 2008-06-12 Dasgupta Gargi B Method and System for Hoarding Content on Mobile Clients
US20080201332A1 (en) 2007-02-20 2008-08-21 Souders Steven K System and method for preloading content on the basis of user context
US7941609B2 (en) 2007-02-23 2011-05-10 Microsoft Corporation HTTP acceleration by prediction and pre-fetching
US8032472B2 (en) 2007-04-04 2011-10-04 Tuen Solutions Limited Liability Company Intelligent agent for distributed services for mobile devices
US8015502B2 (en) 2007-05-22 2011-09-06 Yahoo! Inc. Dynamic layout for a search engine results page on implicit user feedback
KR20080111822A (ko) 2007-06-20 2008-12-24 강정욱 사용자 검색어를 연동하여 가이드 정보, 랭킹 정보를제공하는 검색지원 정보 시스템.
US7996483B2 (en) 2007-06-20 2011-08-09 Microsoft Corporation Adaptive caching in broadcast networks
US8005946B2 (en) 2007-09-10 2011-08-23 Microsoft Corporation Managing navigation history for intra-page state transitions
US9195743B2 (en) 2007-10-04 2015-11-24 Yahoo! Inc. System and method for creating and applying predictive user click models to predict a target page associated with a search query
US7925694B2 (en) 2007-10-19 2011-04-12 Citrix Systems, Inc. Systems and methods for managing cookies via HTTP content layer
US20090132949A1 (en) 2007-11-16 2009-05-21 Jason Bosarge Methods and systems for transmitting, receiving and annotating internet content
US20090158221A1 (en) 2007-12-17 2009-06-18 Nokia Corporation Device feature manipulation based on presented content
US8131731B2 (en) 2007-12-27 2012-03-06 Microsoft Corporation Relevancy sorting of user's browser history
US8560964B2 (en) 2008-02-20 2013-10-15 International Business Machines Corporation Method and system for predictive browsing
US20090216639A1 (en) 2008-02-25 2009-08-27 Mark Joseph Kapczynski Advertising selection and display based on electronic profile information
US20090254515A1 (en) 2008-04-04 2009-10-08 Merijn Camiel Terheggen System and method for presenting gallery renditions that are identified from a network
US20090254643A1 (en) 2008-04-04 2009-10-08 Merijn Camiel Terheggen System and method for identifying galleries of media objects on a network
US8549497B2 (en) 2008-05-05 2013-10-01 University Of New Brunswick High-level hypermedia synthesis for adaptive web
US20090299964A1 (en) 2008-05-30 2009-12-03 Microsoft Corporation Presenting search queries related to navigational search queries
US8407214B2 (en) 2008-06-25 2013-03-26 Microsoft Corp. Constructing a classifier for classifying queries
US8032591B2 (en) 2008-06-25 2011-10-04 Ebay, Inc. Systems and methods for mapping event changes in network navigation
US8060513B2 (en) * 2008-07-01 2011-11-15 Dossierview Inc. Information processing with integrated semantic contexts
US8260846B2 (en) 2008-07-25 2012-09-04 Liveperson, Inc. Method and system for providing targeted content to a surfer
US8112308B1 (en) 2008-08-06 2012-02-07 Google Inc. Targeting using generated bundles of content sources
WO2010043969A1 (en) * 2008-10-14 2010-04-22 Cct International, Inc. System and method for hybrid solid and surface modeling for computer-aided design environments
US8819585B2 (en) 2008-10-27 2014-08-26 Microsoft Corporation Child window surfacing and management
US8887046B2 (en) 2008-11-14 2014-11-11 Pearson Education, Inc. Whiteboard presentation of interactive and expandable modular content
US7949647B2 (en) 2008-11-26 2011-05-24 Yahoo! Inc. Navigation assistance for search engines
US8356247B2 (en) 2008-12-16 2013-01-15 Rich Media Worldwide, Llc Content rendering control system and method
US8260938B2 (en) 2009-01-23 2012-09-04 Google Inc. Predicting user requests to reduce network connection latency
KR101035686B1 (ko) 2009-03-12 2011-05-19 주식회사 로그 웹 페이지별 접속 통계 정보 제공 장치 및 접속 통계 정보 제공 방법
KR20100112512A (ko) 2009-04-09 2010-10-19 (주)아이오다인 검색 장치 및 검색 방법
US8140646B2 (en) 2009-06-04 2012-03-20 Microsoft Corporation Network application performance enhancement using speculative execution
US20100332550A1 (en) * 2009-06-26 2010-12-30 Microsoft Corporation Platform For Configurable Logging Instrumentation
US20110029670A1 (en) 2009-07-31 2011-02-03 Microsoft Corporation Adapting pushed content delivery based on predictiveness
JP5316338B2 (ja) 2009-09-17 2013-10-16 ソニー株式会社 情報処理装置、データ取得方法及びプログラム
US20110071898A1 (en) * 2009-09-23 2011-03-24 Yahoo! Inc. System and method for updating search advertisements during search results navigation
US20110119361A1 (en) 2009-11-17 2011-05-19 Oto Technologies, Llc System and method for managing redacted electronic documents using callback triggers
JP2011141867A (ja) 2009-12-10 2011-07-21 Sharp Corp データ表示装置およびサーバ装置
US20110173569A1 (en) 2010-01-13 2011-07-14 Rockmelt, Inc. Preview Functionality for Increased Browsing Speed
US9104238B2 (en) 2010-02-12 2015-08-11 Broadcom Corporation Systems and methods for providing enhanced motion detection
JP5084858B2 (ja) * 2010-03-16 2012-11-28 ヤフー株式会社 サマリ作成装置、サマリ作成方法及びプログラム
US8375208B2 (en) 2010-05-20 2013-02-12 Verizon Patent And Licensing Inc. Method and apparatus for providing content aggregation in support of virtual channels
US9411793B2 (en) 2010-07-13 2016-08-09 Motionpoint Corporation Dynamic language translation of web site content
CA2751173C (en) 2010-08-30 2019-12-03 Mobile Newmedia Ltd. Health kiosk
US20120084644A1 (en) 2010-09-30 2012-04-05 Julien Robert Content preview
US20120137201A1 (en) 2010-11-30 2012-05-31 Alcatel-Lucent Usa Inc. Enabling predictive web browsing
US8799759B2 (en) 2010-12-13 2014-08-05 International Business Machines Corporation Pre-rendering web content
US8849775B2 (en) 2010-12-15 2014-09-30 Yahoo! Inc. Caching web documents in two or more caches
US8504907B2 (en) 2011-03-07 2013-08-06 Ricoh Co., Ltd. Generating page and document logs for electronic documents
US8732571B2 (en) 2011-03-31 2014-05-20 Google Inc. Methods and systems for generating and displaying a preview image of a content area
US8600968B2 (en) 2011-04-19 2013-12-03 Microsoft Corporation Predictively suggesting websites
US8413047B2 (en) * 2011-05-12 2013-04-02 Qualcomm Incorporated Concurrent parsing and processing of HTML and JAVASCRIPT®
US8788711B2 (en) 2011-06-14 2014-07-22 Google Inc. Redacting content and inserting hypertext transfer protocol (HTTP) error codes in place thereof
US8745212B2 (en) 2011-07-01 2014-06-03 Google Inc. Access to network content
US8959431B2 (en) 2012-01-16 2015-02-17 Microsoft Corporation Low resolution placeholder content for document navigation
US8892638B2 (en) 2012-05-10 2014-11-18 Microsoft Corporation Predicting and retrieving data for preloading on client device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006235760A (ja) * 2005-02-22 2006-09-07 Nippon Telegr & Teleph Corp <Ntt> 情報閲覧システム、方法およびプログラム
US20070220010A1 (en) * 2006-03-15 2007-09-20 Kent Thomas Ertugrul Targeted content delivery for networks
JP2010186295A (ja) * 2009-02-12 2010-08-26 Nec Corp 情報検索システム及び情報検索方法並びにプログラム
WO2011031102A2 (en) * 2009-09-13 2011-03-17 Samsung Electronics Co., Ltd. Search method, apparatus, and system for providing preview information

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10713330B2 (en) 2014-06-26 2020-07-14 Google Llc Optimized browser render process
US11328114B2 (en) 2014-06-26 2022-05-10 Google Llc Batch-optimized render and fetch architecture
JP2018160264A (ja) * 2018-06-12 2018-10-11 グーグル エルエルシー バッチ最適化レンダリング及びフェッチアーキテクチャ

Also Published As

Publication number Publication date
US10572548B2 (en) 2020-02-25
JP2017142832A (ja) 2017-08-17
JP6517263B2 (ja) 2019-05-22
US8793235B2 (en) 2014-07-29
JP6122199B2 (ja) 2017-04-26
AU2013209728B2 (en) 2017-04-27
AU2017206281A1 (en) 2017-08-10
WO2013109744A1 (en) 2013-07-25
JP6646781B2 (ja) 2020-02-14
AU2013209728A1 (en) 2014-07-24
CN107463641A (zh) 2017-12-12
CN104067274A (zh) 2014-09-24
EP2805265A4 (en) 2015-09-30
EP2805265B1 (en) 2020-07-08
KR20170023216A (ko) 2017-03-02
CN107463641B (zh) 2020-10-27
JP6013514B2 (ja) 2016-10-25
JP2016224987A (ja) 2016-12-28
US9672285B2 (en) 2017-06-06
KR20180066280A (ko) 2018-06-18
KR101867809B1 (ko) 2018-06-18
EP2805265A1 (en) 2014-11-26
US20130191360A1 (en) 2013-07-25
AU2018201459A1 (en) 2018-03-22
KR20140114045A (ko) 2014-09-25
KR101891488B1 (ko) 2018-08-27
KR101711456B1 (ko) 2017-03-02
AU2018201459B2 (en) 2019-04-04
JP2019153323A (ja) 2019-09-12
US20160246888A1 (en) 2016-08-25
US20160179951A1 (en) 2016-06-23
AU2017206281B2 (en) 2017-11-30

Similar Documents

Publication Publication Date Title
JP6646781B2 (ja) 検索結果へのアクセスを改良するシステム、方法及び記憶媒体
US11032388B2 (en) Methods for prerendering and methods for managing and configuring prerendering operations
US11019179B2 (en) Access to network content
US9530099B1 (en) Access to network content
US9141722B2 (en) Access to network content
JP2015511347A5 (ja)
AU2021297136B2 (en) Dynamic trigger of web beacons

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20151009

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160115

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160115

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20160115

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20160205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160426

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160725

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160823

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160921

R150 Certificate of patent or registration of utility model

Ref document number: 6013514

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250