JP2015516095A - サーバサイドセッション化を介した集中解析トラッキング - Google Patents

サーバサイドセッション化を介した集中解析トラッキング Download PDF

Info

Publication number
JP2015516095A
JP2015516095A JP2015510306A JP2015510306A JP2015516095A JP 2015516095 A JP2015516095 A JP 2015516095A JP 2015510306 A JP2015510306 A JP 2015510306A JP 2015510306 A JP2015510306 A JP 2015510306A JP 2015516095 A JP2015516095 A JP 2015516095A
Authority
JP
Japan
Prior art keywords
tracking data
analysis
information
session
analysis tracking
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015510306A
Other languages
English (en)
Inventor
ジェリー ホン,
ジェリー ホン,
ポール ムレット,
ポール ムレット,
サニク ナンディ,
サニク ナンディ,
エバン, エス. フアン,
エバン, エス. フアン,
マドゥ, カラチ ワス,
マドゥ, カラチ ワス,
ジェームス, リー ウグリス,
ジェームス, リー ウグリス,
ブラッドリー, デイビット タウンゼント,
ブラッドリー, デイビット タウンゼント,
ニール ローズ,
ニール ローズ,
ナオミ ベン−アユン,
ナオミ ベン−アユン,
ステラ, マリー ローレンツォ,
ステラ, マリー ローレンツォ,
ルーカス, ポール ハンセン,
ルーカス, ポール ハンセン,
アビ メータ,
アビ メータ,
ニック ミアイロフスキ,
ニック ミアイロフスキ,
アショク, バブ アマラ,
アショク, バブ アマラ,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of JP2015516095A publication Critical patent/JP2015516095A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • 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
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computational Linguistics (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本願技術は、ウェブサイト又はアプリケーショントラフィックデータに関連付けられたセッションを用意する。解析トラッキングデータ通信が受け取られる。本願技術は、上記受け取られた解析トラッキングデータ通信から解析トラッキングデータを特定し、上記解析トラッキングデータは、ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータと訪問者情報とを含む。上記行為が前記訪問者情報に対応した一意の訪問者の最初の訪問に関連付けられていると判断された場合は、新規セッションが上記解析トラッキングデータに関連付けられた作成される。本願技術は、上記解析トラッキングデータに関連付けられた上記新規セッションに書き込むためのキャンペーン情報を特定する。すると、上記特定されたキャンペーン情報を含む上記解析トラッキングデータが格納される。

Description

関連出願の引用
本出願は、2012年5月2日付けで提出され「サーバサイドセッション化を介した集中解析トラッキング(System for Centralized Analytics Tracking Via Server-Side Sessionization)」と題した米国特許仮出願第61/641,850号の優先権を合衆国法典第35編第119条に基づいて主張し、その全体はあらゆる目的に関して参照して本明細書に援用する。
ウェブサイトの解析には、ウェブサイトトラフィックデータの解析及び関連付けられたパブリッシャーへの報告が含まれる。パブリッシャーとはウェブサイトを所有且つ/又は運営する実体である。パブリッシャーは、サードパーティーが提供するウェブサイト解析ツールを用いて、そのウェブサイトへのユーザ訪問とリンクとに関連するウェブサイト解析データを監視できる。
既存の解析データシステムは、対話的報告を長期間にわたって高い忠実度で提供する目的で、大量のウェブトラフィックデータ及び/又はアプリケーション解析データを処理することに関してはうまく機能する。パブリッシャーのウェブページに変更が加えられると、(1)一貫したビジネスロジックをページ全体にわたって維持する困難性を増大させかねないページ間での異なるページ構成又は(2)所与のウェブ解析システムへの一貫性がないデータの報告に繋がりかねないパブリッシャーのウェブサイトでのキャッシングによって、これらシステムは、ウェブトラフィックデータ及び/又はアプリケーション解析データを常に正確には報告しない。さらに、所与の解析システムに送られる各要求は、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は、パブリッシャーのウェブサイトの1つ又は複数ページの例示的なリソース構成に含まれる様々な属性を概念的に示す。 図4は、解析トラッキングデータに適用するためのリソース構成情報を特定する例示的なプロセスを概念的に示す。 図5は、最初の解析トラッキングデータ通信から後続の解析トラッキングデータ通信へ情報を伝播するための、解析トラッキングシステムにおけるクライアント計算デバイスから解析サーバへの例示的な通信フローを概念的に示す。 図6は、解析サーバにおいて最初の解析トラッキングデータ通信から後続の解析トラッキングデータ通信へ情報を伝播するための例示的なプロセスを説明する。 図7は、解析トラッキングデータへのクエリに応答して動的に生成されたセッションに関連付けられた集約済み解析トラッキングデータを与える例示的なプロセスを説明する。 図8は、異なるヒットが解析サーバで受け取られる例示的な時系列を概念的に示す。 図9は、遅い且つ/又は順狂い解析トラッキングデータ通信を処理するための例示的なプロセスを概念的に示す。 図10は、幾つかの構成が実装される例示的なシステムを概念的に示す。
後述する詳細な説明は、本願技術の様々な構成の説明として意図されており、本願技術を実施できる唯一の構成を表すことを意図したものではない。添付した図面は本明細書に組み入れられ、詳細な説明の一部をなすものである。詳細な説明は、本願技術を完全に理解するための具体的な詳細を含んでいる。しかし、本願技術は、本明細書に記載した具体的な詳細に限定されるものでなく、こうした具体的な詳細なしでも実施できる。幾つかの場合では、本願技術の概念を曖昧にすることを避けるため、構造及び構成要素はブロック図の形式で示されている。
ウェブサイト解析データシステムを使用するには、パブリッシャーは、典型的にはウェブサイトのウェブページに埋め込まれるトラッキング命令を用意する(代替的に又はそれと共に、自己のウェブページに、解析サーバからこれらトラッキング命令を要求するコードを用意することで)。例えば、これらトラッキング命令は、そのトラフィックがトラッキングされるパブリッシャーのウェブサイトの各ページにパブリッシャーにより含められるJavaScript(登録商標)コードの小部分である。ウェブページがユーザデバイス及び/又はクライアント(例えば、ウェブブラウザ、モバイルデバイス、タブレットデバイス、シンクライアント、シッククライアントなど)によりレンダリングされると、トラッキング命令が実行されるが、これらの命令は訪問者データ及び/又は他の解析トラッキングデータを収集し、それらを処理のために解析トラッキングデータ通信(「ヒット」)の形式で解析サーバに送り返す。解析トラッキングデータ通信を送る1つの方法は、それをハイパーテキスト転送プロトコル(HTTP)要求の一部として送ることである。
ウェブサイトトラフィックデータは、上述した解析トラッキングデータ通信(例えば、様々なユーザデバイス及び/又はクライアントから生成されたHTTP要求又は「ヒット」)の形式とすることができる。解析トラッキングデータは、パブリッシャーのウェブサイトへの訪問者がウェブサイト上のリソース(ウェブページ、画像ファイル、バナー広告、音声ファイルなど)にアクセスすると生成されたり、ウェブページ又はパブリッシャーのウェブサイトでのイベントに応答して生成されたりする。この解析トラッキングデータは、ネットワーク接続が存在するときに1つ又は複数の解析トラッキングデータ通信に含まれるバッチとして送信してもよいし、代替的には、ウェブサイトのウェブページ若しくはリソースへのアクセスにより又はウェブページ若しくはパブリッシャーのウェブサイトでのイベントに応答してトリガされる解析トラッキングデータ通信に含めて送信してもよい。ウェブサイト解析報告の目的では、関連付けられたウェブサイトトラッキングデータ(例えば、関連付けられたHTTP要求に含まれるもの)は、ウェブプロパティID(例えば、特定のウェブサイトに関するパブリッシャーの解析アカウントを識別する識別子)と、訪問者識別データ(例えば、一意のクライアントデバイスに対応した匿名化された識別子)と、1つ又は複数のイベント統計値(現在のウェブページ通信のタイムスタンプなど)と、パブリッシャーのウェブサイトへの訪問者に関連付けられた位置データ(すなわち地理的情報)などのユーザデータとを含むことができる。トラッキングデータで報告されるイベント/情報の量及び種類は、パブリッシャーが指定できる(例えば、パブリッシャーがウェブサイト解析データとしてトラッキングを望む情報に対応するため)。
解析トラッキングデータ通信はウェブサイトトラフィックデータを含むものと説明されているが、解析トラッキングデータ通信はウェブサイトトラフィックデータを含むことに限定されない。具体的には、解析トラッキングデータ通信は、任意ソースに関連付けられた行為をトラッキングするのに使用される当該ソース(例えば、アプリケーション、プラットフォームなど)からのデータを含むことができる。例えば、モバイルアプリケーションプラットフォームでは、解析トラッキングデータ通信は、このモバイルアプリケーションプラットフォーム内での行為に関連付けられたイベントをトラッキングする解析トラッキングデータを含むことができる。この例では、このモバイルアプリケーションプラットフォームに関連付けられた解析トラッキングデータは、このモバイルアプリケーションプラットフォームがウェブブラウザなどのクライアントの使用を必要としないためウェブサイトトラフィックデータを含まないかもしれない。従って、本明細書に記載した解析トラッキングシステムの幾つかの側面は、ウェブサイトトラッキングデータの範囲に入らない異なる形式の解析トラッキングデータを含む解析トラッキングデータ通信を受信し且つ処理するよう構成できる。本明細書では、「解析トラッキングデータ」という語句は、ウェブサイトトラッキングデータ及び/又はウェブサイトトラッキングデータ以外の種類の解析トラッキングデータ(例えば、アプリケーショントラッキングデータ)を含むことができる。
本明細書で記載したシステムがユーザの個人情報を収集又は利用する状況に関しては、プログラム若しくは特徴がユーザ情報を収集するのか(例えば、ユーザのソーシャルネットワークに関する情報、ソーシャルアクション又はアクティビティ、職業、ユーザの好み、ユーザの現在地など)、及び/又はユーザにとってより重要なコンテンツをコンテンツサーバから受け取るのか或いはどのようにそれを受け取るのか、を制御する機会をユーザに与えてもよい。さらに、ある種のデータは、それが格納又は使用される前に1つ又は複数の方法で処理して、個人の識別を可能とする情報が削除されるようにしてもよい。別の例では、ユーザの個人識別を可能とする情報が特定されないようにユーザの識別情報を処理してもよいし、位置情報が取得されるユーザの地理的位置を一般化して(例えば都市、郵便番号、州レベルまで)、ユーザの位置が特定できないようにしてもよい。従って、ユーザは、自分に関する情報がコンテンツサーバによりどのように収集され且つ使用されるのかを管理できる。さらに、本明細書に記載されているように、人口統計学的データは、一人又は複数の個別ユーザが個人的に識別されないように1つ又は複数のユーザグループに集約してもよい。

I. サーバサイドセッション化を介した集中解析トラッキング
現在の解析システムは、ウェブサイトトラフィックデータを集約し且つ報告することができる。しかし、現在の解析システムでは、典型的には、所与のウェブ解析システムに送信される各解析トラッキングデータ通信(例えば要求)に関連付けられたセッションを実現するロジックは、クライアント(例えば、様々なウェブブラウザ)が実装する必要がある。パブリッシャーのウェブサイトへの訪問に関連付けられたセッションは、要求及び他のトラッキングデータを特定のクライアント(例えば、ウェブブラウザ)に関連付けるため解析システムによって使用できる。一例として、各セッションは一意に識別されたクライアントからの一連の要求であって、(1)要求間が所定時間(例えば、30分)を超えて離れておらず(2)要求間に他のドメイン(例えば、他のウェブサイト)からのページ要求が存在しないものを含むことができる。
本明細書では、「セッション化(sessionization)」という用語は、セッションを用意し、そのセッションを一意に識別されたクライアントからの訪問者行為に対応する1つ又は複数の要求(例えば、解析トラッキングデータ通信)に関連付ける1つ又は複数の技法を指す。この一意に識別されたクライアントは、パブリッシャーのサイトへの訪問者(例えばユーザ)に関連付けできる。さらに、セッション化は、キャンペーン情報を提供し、各着信要求に関連付ける技法を含むことができる。本明細書では、キャンペーン情報は、ページ統一資源識別子(例えば、ページURI)又はランディングページへの着信トラフィックが、オーガニックキャンペーン(例えば、ウェブサーチから)、キーワードで定義された明示的キャンペーン、別のウェブサイトからの差し向けキャンペーン、又は直接キャンペーンからのものかを示す差し向けパスを含むことができる。一例では、キャンペーン情報は、一組の関連付けられたマーケティング行為に対応するマーケティングキャンペーンを識別できる。例えば、これら関連付けられたマーケティング行為は、パブリッシャーのウェブサイトにおける一組のウェブページにそれぞれ対応できる。こうして、このパブリッシャーのウェブページにおける一組のウェブページに関連した任意の訪問者行為/行動は、このマーケティングキャンペーンに関連付けできる。このように、このキャンペーン情報は、こうした訪問者行動に関連付けられたマーケティングキャンペーンを識別できる。
現在のウェブ解析システムでは、セッション化は、所与のウェブ解析システムの介在なしにクライアントサイドで発生する。しかし、各クライアントは、セッションを異なって用意するロジックを実装できるため、これが、ウェブ解析システムにより受け取られた要求の一貫性を欠いたセッション化の原因となることがある。
クライアントサイドセッション化に関する上述の問題に対処するため、本願技術は、解析トラッキングサーバへの着信要求又は解析トラッキングデータ通信のセッション化をサーバサイドで実装する解析トラッキングシステムに関する。結果として、クライアントは、「生の」ヒット又は要求情報を、解析トラッキングサーバに送信される解析トラッキングデータのより小さい部分集合を含む各解析トラッキングデータ通信の形式で送信できる(例えば、予めセッション化を実行しないで)。例えば、既存のウェブ解析システムとは対照的に、クライアントから送信される解析トラッキングデータは、以前のセッションからのセッション情報及び/又はキャンペーン情報を含まない。さらに、最初の「生の」ヒットはキャンペーン情報を含むことができる。しかし、このキャンペーン情報はもはやクッキーに格納される必要はないので、本明細書で説明する解析トラッキングサーバがこのキャンペーン情報をサーバサイドで伝播できるのであれば、後続のヒットすべてはこのキャンペーン情報を含むことはない。結果的に、ネットワーク帯域幅が保存され、クライアントサイドでのエラーが減少する。
クライアントサイドセッション化は、典型的には、1つ又は複数のファーストパーティークッキー(例えば、パブリッシャーのサイトに起因するクッキー)で上述のウェブサイトトラッキング(例えば、セッション情報、訪問者情報、キャンペーン情報など)の一部(又はすべて)を提供するが、これらは所与のウェブ解析サーバに送信される解析トラッキングデータ通信に含められる。本明細書で説明する解析トラッキングシステムは、サーバーサイドでセッション化を行うことで、解析データをトラッキングする上でクッキーへの依存を減少(又は皆無にする)。
図1は、解析トラッキングデータ通信の形式でウェブサイトトラッキングデータを受け取り且つ処理するための解析トラッキングシステム100における例示的な通信フローを概念的に示す。解析トラッキングシステム100は1つ又は複数のクライアント110を含む。クライアントには、モバイルデバイス、ネットブック、ラップトップ、デスクトップコンピュータなどの異なる計算デバイスが含まれる。パブリッシャーのウェブサイト120のリソース(例えば、ウェブページ、リンク、画像など)にアクセスすると、クライアントは、解析トラッキングデータ通信などのウェブサイトトラッキングデータを解析サーバ130に送信する。別の例では、パブリッシャーのウェブサイト120からの処理済みデータをクライアント110に送信でき、すると、クライアント110は次に解析トラッキングデータを解析サーバ130に送信できる。
図1の例示的なシステム100は、ウェブサイトトラッキングデータを含む通信フローを示しているが、任意タイプの解析トラッキングデータを本願技術の範囲内でシステム100に含めることができることは理解すべきである。さらに、図1はウェブサイトトラッキングデータがクライアント110からパブリッシャーのウェブサイト120に渡され、次に解析サーバ130に渡される例を示している。しかし、上述し且つ図1にさらに示したように、各クライアントは、解析トラッキングデータを解析サーバ130に処理を目的として直接的に通信してもよい(例えば、パブリッシャーのウェブサイト120を迂回して)。一例では、パブリッシャーのウェブサイトは、クライアントが解析サーバ130に送信すべきデータに関するコード/命令を含む。クライアント上のアプリケーションからのトラッキング解析データに関わる別の例では、このアプリケーションには解析サーバ130との通信するためのロジックが含まれている。
ウェブサイトトラッキングデータはネットワークを介して送信でき、ネットワークにはローカルネットワーク、リモートネットワーク、又は複数ネットワークの相互接続ネットワーク(例えば、インターネット)が含まれうるがそれらに限定されない。さらに、クライアント110、パブリッシャーのウェブサイト120、及び解析サーバ130は、ローカルエリアネットワーク、広域ネットワーク、又は複数ネットワークの相互接続ネットワーク(例えば、インターネット)などの任意種類のネットワークを介し且つ任意種類のネットワーク/通信プロトコル(伝送制御プロトコル/インターネットプロトコル(TCP/IP)、HTTPなど)を用いて通信するよう構成できる。
一例では、この解析システムは、単一の解析サーバ130の代わりに、同一組の機能を分散型且つ/又は負荷平衡様式で実行する複数のサーバ/コンピュータのクラスタを含むことができる。クラスタは、互いに連結され同一組の機能を一体的に実行する一群の複数サーバ/コンピュータとして理解でき、これは単一サーバ/コンピュータアーキテクチャに比べて優れた性能、信頼性、利用可能性を提供できる。一群のサーバを備えた例では、この解析システムは、一意の訪問者及び/又は特定のセッションに関連付けられたイベントトラッキング通信をこの一群のサーバ内の同一サーバに処理のため転送するよう構成できる。
さらに、ウェブ解析に関連付けられた解析トラッキングデータの処理のために1つ又は複数の異なる段のサーバを含めてもよい。一例では、多段システムは、着信する解析トラッキングデータ通信(例えば、対応するウェブサイトにおけるウェブページ要求のログ記録に関するHTTP要求)を受信する収集サーバの一段を含めてもよい。この収集サーバの段のうちで着信する通信を受信する収集サーバは、この着信通信を転送する下位段のロギングサーバを特定できる。この着信通信を受け取ると、このロギングサーバは、この通信を永続的に記憶するため長期格納サーバの段に転送することでこの通信を処理する。次に、着信する解析トラッキングデータ通信は、1つ又は複数の解析サーバの段に転送できる(例えば、収集段から)。
単一のサーバが用意される場合でも多数の解析サーバが用意される場合でも、各解析サーバは、解析トラッキングデータ通信で受け取られた着信ウェブサイトトラッキングデータのセッション化を実現するためにセッションロジックを実装する。以下の記載では、一意の訪問者からの解析トラッキングデータ通信をセッション化するための例示的なプロセスをより詳細に説明する。
幾つかの構成では、1つ又は複数の解析サーバ130を1つのシステムとして用意できる。このシステムは、メモリと、1つ又は複数のプロセッサと、メモリ内に格納されると共にこの1つ又は複数のプロセッサにより実行されるよう構成された1つ又は複数のモジュールとを含むことができる。このシステムは、解析トラッキングデータ通信を受け取り、この受け取られた解析トラッキングデータ通信から解析トラッキングデータを特定するよう構成された解析データモジュールを含むことができ、この解析トラッキングデータは、ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータと訪問者情報とを含んでいる。このシステムは、この行為が、訪問者情報に対応した一意の訪問者の最初の訪問に関連付けられていると判断された場合は、解析トラッキングデータに関連付けられた新規セッションを作成し、この解析トラッキングデータに関連付けられた新規セッションに書き込むためのキャンペーン情報を特定し、その特定されたキャンペーン情報を含む解析トラッキングデータを格納するよう構成されたセッションモジュールをさらに含むことができる。
幾つかの構成では、このセッションモジュールは、この解析トラッキングデータが一意の訪問者の最初の訪問でない場合は、アクティブセッションがこの解析トラッキングデータに関連付けられているかを判断し、この解析トラッキングデータに関連付けられたアクティブセッションに書き込むためのキャンペーン情報を特定し、その特定されたキャンペーン情報を含む解析トラッキングデータを格納するようさらに構成できる。又、幾つかの構成では、このセッションモジュールは、この解析トラッキングデータに関連付けられたアクティブセッションがない場合、この解析トラッキングデータに関連付けられた新規セッションを作成するようさらに構成されている。
図2は、幾つかの構成の解析トラッキングデータ通信に基づいてセッション情報を生成するための例示的なプロセス200を概念的に示す。より具体的には、図2は、解析トラッキングデータ通信に含まれた解析トラッキングデータに基づいて解析トラッキングデータをセッション化するため解析サーバにより実行されるプロセスを示している。
解析トラッキングデータ通信が受け取られると205においてプロセス200が開始される。図1を参照すると、クライアント110のうちいずれかがパブリッシャーのウェブサイト120上のリソース(例えば、ウェブページ、リンク、画像など)にアクセスすると、解析トラッキングデータ通信が解析サーバ130によって受け取られる。
210において、プロセス200は、受け取られた解析トラッキングデータ通信から解析トラッキングデータを特定する。一例では、この解析トラッキングデータは少なくとも訪問者情報を含む。例えば、訪問者情報は、このパブリッシャーのウェブサイトにアクセスする一意の訪問者に関連付けられた一意のID文字列を含むことができる。この訪問者情報は、必ずしも特定のエンドユーザを識別するものではない。例えば、この訪問者情報は、訪問者のウェブブラウザ又はクライアント、訪問者のホスト名、IPアドレスなどの異なる情報に基づいて特定された匿名化済み識別子でよい。さらに、この解析トラッキングデータは、この一意の訪問者がパブリッシャーのウェブサイトを訪問した(例えば、パブリッシャーのウェブサイト上のリソースへのアクセスを示す行為)時刻及び/又は日付を表すタイムスタンプも含む。幾つか実装例では、タイムスタンプは、特定のイベントが発生した日付及び/又は時刻を示す一連の英数字列である。幾つかの例では、クライアントは、イベントが発生した時刻を不正確に報告することがある(例えば、不正確なクロック読み取り及び/又は設定による)。この問題に対処するため、一例では、タイムスタンプは、イベントがクライアントにより記録/検出された時から、そのイベントが解析トラッキングデータの一部として解析サーバに送信された時までのデルタ又は経過時間を表す。
プロセス200は、215において、この一意の訪問者の最初の訪問が発生したのかを判断する。一例では、この判断は、この一意の訪問者にはパブリッシャーのウェブサイトを訪問した記録があるか否かに基づいて行われる。例えば、この一意の訪問者に関する以前のタイムスタンプ又は他の解析データが存在しない場合は、プロセス200は受け取られた解析トラッキングデータ通信が、この一意の訪問者についてはパブリッシャーのウェブサイトへの最初の訪問であると判断する。こうした記録がこの一意の訪問者について発見されない場合は、プロセス200はこの一意の訪問者に関する新規セッションを作成する。一例では、新規セッションは、この一意の訪問者に関する新規セッションの開始時刻を示すため解析トラッキングデータからタイムスタンプを格納することによって作成すればよい。
代替的には、これがこの一意の訪問者に関する最初の訪問でないと判断されると(例えば、この一意の訪問者がパブリッシャーのウェブサイトを以前に訪問していたなど)、プロセス200は220に進み、タイムスタンプに基づいてこの一意の訪問者の最後の訪問を特定する。一例では、プロセス200は、この一意の訪問者に関連付けられた以前の行為の前のタイムスタンプ(例えば、以前受け取られたの解析トラッキングデータに含まれたタイムスタンプ)に基づいて最後の訪問を特定する。このタイムスタンプはセッション境界条件の一例として理解できる。しかし、プロセス200は、一意の訪問者に関する最初の訪問を特定するため他のセッション境界条件を使用してもよい。例えば、プロセス200は、他のセッション境界条件に基づいて一意の訪問者の最後の訪問を特定する。例示的に、他のセッション境界条件は、新規キャンペーン情報、新規セッションを示すセッションマーカ、又はセッションタイムアウトを含むことができる。上述の各セッション境界条件は、一意の訪問者に関する新規セッションを作成すべきことを示すことができる。別の種類のセッション境界条件を本願技術の範囲を逸脱することなく考慮することもできる。
220での特定に基づいて、プロセス200は225に進み、この一意の訪問者に関するアクティブセッションが存在するか否かを判断する。一例では、アクティブセッションは、このアクティブセッションがいつ開始されたかを示す格納されたタイムスタンプを調べることで特定できる。幾つかの構成では、所定の無活動時間(例えば30分)が経過後、セッションは無活動又は期限切れ(例えばセッションタイムアウト)と見なされる。従って、アクティブセッションが存在しないと判断されると(例えば、アクティブセッションが開始された時を示すタイムスタンプが存在しない又はタイムスタンプが所定期間より古い場合など)、プロセス200は230に進んでこのユーザに関する新規セッションを作成する。さらに、上述したように、220で特定された上記の各セッション境界条件(例えば、新規キャンペーン情報、セッションマーカ、セッションタイムアウトなど)は、新規セッションを作成すべきことを示すことができ(アクティブセッションが存在しないことを実質的に判断する)、プロセス200は次に230に進む。代替的には、アクティブセッションが存在する場合は、プロセス200は235に進んで後に詳述するように訪問者及び/又はセッション関連情報を書き込む(populate)。
新規セッションを(例えば、215か225から到着して)230で作成又は225でアクティブセッションが存在すると判断した後、プロセス200は235に進んで訪問者及び/又はセッション関連情報を書き込む。例えば、この解析サーバは、パブリッシャーのウェブサイトの1つ又は複数ページに関連付けられた構成情報に基づいて、受け取られた解析トラッキングデータを書き込む訪問者及び/又はセッション関連情報を特定する。さらに、この訪問者及び/又はセッション関連情報は、訪問者情報又はキャンペーン情報などの受け取られた解析トラッキングデータに含まれた解析データに基づいている。例えば、キャンペーン情報には受け取られた解析トラッキングデータを書き込んでもよい。一例では、こうしたキャンペーン情報は、マーケティングキャンペーンの名称(例えば、「製品XYC」、「地元のスポーツイベント」、「有名人」など)を含む。上述したように、こうしたキャンペーン情報は、一組の関連したマーケティング行為に対応するマーケティングキャンペーンを識別する。例えば、これら関連付けられたマーケティング行為は、パブリッシャーのウェブサイトにおける一組のウェブページにそれぞれ対応できる。こうして、このパブリッシャーのウェブサイトにおける一組のウェブページに関連した任意の訪問者行為/行動は、このマーケティングキャンペーンに関連付けできる。
プロセス200は、240においてこのキャンペーン情報を含む解析トラッキングデータを格納且つ/又は永続化する。一例では、この解析トラッキングデータは、幾つかの構成では、永続性記憶装置にコミットされる前に一時的に非永続性記憶装置に格納される。一例では、プロセス200は、この解析トラッキングデータを、解析サーバのメモリ(例えば、ランダムアクセスメモリ)に格納されたウェブ属性テーブルに格納する。例えば、この解析トラッキングデータはキャンペーン情報に従って区分化してもよい。プロセス200はここで終了する。
さらに、解析サーバは、所定時間が経過した後に非永続性記憶装置に格納された解析トラッキングデータを(持続的又は長期的)永続性記憶装置に書き込むことを延期できる。例えば、解析サーバは、特定の日に関するすべての解析データが受け取られるまで待つことができ、その日のセッション化データが安定化した時点で、このサーバはその翌日にその解析データを(永続的に)永続性記憶装置に書き込む。こうすることで、この解析サーバは、着信する解析トラッキングデータに関連付けられた任意の状態情報を反映させることができる。

II.一貫性のあるビジネスロジックを実現するための集中サーバサイド構成駆動セッション化
所与のウェブ解析システムでは、パブリッシャーサイトの各ページは別々に構成される(属性が同一であっても)。例えば、各ページは、検索エンジン(例えば、差し向け、オーガニックトラフィックなどをトラッキングするため)のリスト、クッキータイムアウト/期限切れ設定、セッションタイムアウト/期限切れ設定などを含むことができる。しかし、ページ毎の構成はエラーを起こしやすい(例えば、パブリッシャーサイトのページのいずれかに関して検索エンジンリストが不正確となったり、タイムアウト情報が不正確に設定されていたりする)。さらに、構成を修正してもHTTPキャッシングのためすべてのクライアントにすぐさま反映されないことがある。結果的に、クライアントサイドセッション化を一貫性をもって実行するには、パブリッシャー(例えば、これらページに責任がある開発者)には類似の構成をすべてのページにおいて実現し且つ維持するという負担が生じる。
上述の問題に対処するため、本願技術は、着信する解析トラッキングデータ通信(例えば、一意の訪問者に関する解析トラッキングデータ通信を含むクライアントからの要求)を一貫性をもってセッション化するため、パブリッシャーのウェブサイト上のリソース(例えば、ウェブページなど)のサーバーサイド構成を可能とする。
図3は、パブリッシャーのウェブサイトの1つ又は複数ページの例示的なリソース構成に含まれる様々な属性を概念的に示す。一例として、解析サーバは、パブリッシャーのウェブサイトからの異なるページにそれぞれ対応した1つ又は複数のリソース構成を格納する。こうした方法により、解析トラッキングデータからの訪問者行為をセッション化するためのビジネスロジック(リソース構成に基づく)がサーバーサイドで提供される。従って、リソース構成への変更は直ちに反映され、その際にこうした変更が、クライアントサイド若しくはパブリッシャーのウェブサイトでのキャッシングによるセッション化時に正しく適用されない可能性はないし、クライアントサイド若しくはパブリッシャーのウェブサイトにおける不正確な構成が発生するという可能性もない。
図示したように、図3は、パブリッシャーのウェブサイト上の異なるリソース(例えばウェブページ)305、310、315、及び330を含む。解析サーバでは、リソース構成320、325、及び335が用意されている。図示したように、リソース305及び310はリソース構成320に対応し、リソース315はリソース構成325に対応する。リソース構成320は、リソース構成325に比べ異なる属性を含んでいる。例えば、リソース構成320及び325それぞれの検索エンジンリスト及びタイムアウト属性は異なっている。一例では、タイムアウト属性は、セッションタイムアウト/期限切れ(例えば30分)及び/又はキャンペーンタイムアウト/期限切れ(例えば6ヶ月)のタイムアウトを含むことができる。さらに図示したように、リソース構成320及び325は、1つ又は複数のキャンペーン属性及び他の属性を含んでいる。一例では、他の属性には、訪問者属性、カスタム属性などに関連した属性が含まれる。解析サーバは、パブリッシャーのウェブサイトからの他のページに関する他のリソース構成335も含むことができる。
図3に示した例示的なリソース構成は一組の属性を含んでいるが、各リソース構成は図3に示したすべての属性を含む必要はないことは理解すべきである。さらに、各リソース構成は、図3の例に示されていない他の属性を本願技術の範囲内で含むことができる。
次節では、一意の訪問者からの解析トラッキングデータ通信のセッション化時に、リソース構成を適用するための例示的なプロセスをより詳細に説明する。
図4は、解析トラッキングデータに適用するためのリソース構成情報を特定する例示的なプロセス400を概念的に示す。より具体的には、図4は、解析トラッキングデータ通信に含まれた解析トラッキングデータに基づいて解析トラッキングデータをセッション化するため、リソース構成情報を適用するため解析サーバにより実行されるプロセスを示している。一例では、プロセス400は、図2を参照して説明されたプロセス200と共に実行できる。
上述したように、ウェブサイトトラフィックデータは、上述した解析トラッキングデータ通信(例えば、様々なユーザデバイス及び/又はクライアントから生成されたHTTP要求又は「ヒット」)の形式とすることができる。それぞれの解析トラッキングデータ通信は、パブリッシャーのウェブサイトへの訪問者によってウェブサイト上のウェブページ又はリソース(例えば、画像ファイル、バナー広告、音声ファイルなど)がロードされるとトリガされうる。ウェブサイト解析報告の目的では、関連付けられたウェブサイトトラッキングデータ(例えば、関連付けられたHTTP要求に含まれるもの)は、ウェブプロパティID(例えば、特定のウェブサイトに関するパブリッシャーの解析アカウントを識別する識別子)と、訪問者識別データ(例えば、一意のクライアントデバイスに対応した匿名化された識別子)と、1つ又は複数のイベント統計値(現在のウェブページ通信のタイムスタンプなど)と、パブリッシャーのウェブサイトへの訪問者に関連付けられた位置データ(すなわち地理的情報)などのユーザデータとを含むことができる。
プロセス400は、解析トラッキングデータ通信(例えば、要求内で解析サーバにより受け取られる)からの解析トラッキングデータに基づいてリソース情報を特定することにより405で開始される。一例では、このリソース情報は、訪問者行為又はイベントが発生したパブリッシャーのウェブサイトからのページを識別する情報を含む。プロセス400は、410において、特定されたリソース情報に基づいてリソース構成情報を特定する。プロセス400は、415において、特定されたリソース構成からの1つ又は複数の属性をこの解析トラッキングデータに適用する。一例では、解析サーバは、図2で説明したように、受け取られた解析トラッキングデータのセッション化時にこうした属性を適用する。プロセス400はここで終了する。
図1を再び参照すると、1つ又は複数の解析サーバ130を1つのシステムとして用意できる。このシステムは、メモリと、1つ又は複数のプロセッサと、メモリ内に格納されると共にこの1つ又は複数のプロセッサにより実行されるよう構成された1つ又は複数のモジュールとを含むことができる。このシステムは、解析トラッキングデータ通信を受け取り、この解析トラッキングデータ通信からの解析トラッキングデータに基づいてリソース情報を特定するよう構成された解析データモジュールを含むことができ、このリソース情報はソースに関連付けられた対応するリソースを含み、この解析トラッキングデータはこのソースに関連付けられた行為をトラッキングするためのデータを含んでいる。このシステムは、特定されたリソース情報に基づいてリソース構成情報を特定するよう構成されたリソース構成モジュールをさらに含むことができ、このリソース構成情報は、対応するリソースに関連付けられた1つ又は複数の属性を含み、このリソース構成モジュールは、特定されたリソース構成情報からの1つ又は複数の属性をこの解析トラッキングデータに適用できる。
幾つかの構成では、このリソース構成モジュールは解析トラッキングデータを格納するようさらに構成でき、この解析トラッキングデータは適用された1つ又は複数の属性を含む。この1つ又は複数の属性は、一例では、検索エンジンリスト、タイムアウト情報、又はキャンペーン属性を含む。解析トラッキングデータ通信は、一例では、ウェブサイト又はアプリケーションに関連付けられたハイパーテキスト転送プロトコル(HTTP)要求に含まれるウェブサイト又はアプリケーショントラフィックデータを含む。さらに、幾つかの構成では、この解析トラッキングデータは行為のタイムスタンプを含み、この解析トラッキングデータ通信は、パブリッシャーのウェブサイト上のリソースにアクセスしたクライアントからネットワークを介して受け取られる。一例として、特定されたページ情報は、対応するリソースを複数のリソース構成からのリソース構成情報にマッピングする。一例では、第2の対応するリソースがリソース構成情報に対応する。幾つかの構成では、特定されたリソース構成情報からの1つ又は複数の属性がこの解析トラッキングデータに適用されるのは、解析トラッキングデータ通信に基づいた新規セッションの作成時である。

III.サーバサイドセッション化に関する永続性及びプロセス解析データディメンション
解析データ(例えば、キャンペーン情報、訪問者行為など)はクッキーを介してクライアントでローカルに格納される。しかし、クライアントサイドクッキーへの依存には幾つかの弱点が存在しうる。それらは(1)クッキーが削除され又は一定のクライアントではサポートされないことによる信頼性の低さ、及び、(2)解析データを報告するパブリッシャーのウェブサイトの各ヒットが重複した情報を所与の解析サーバに送る(例えば1つ又は複数のクッキーで)ことである。さらに、上述したように、クッキーの利用は、クッキーを送信し(クライアントサイドで)受信する(サーバサイドで)ために必要なネットワーク帯域幅の量を増大させてしまう。
上述したように、訪問者行為に基づいた解析トラッキングデータ(「ウェブサイトトラッキングデータ」)は、上述した解析トラッキングデータ通信(例えば、様々なユーザデバイス及び/若しくはクライアントから生成されたHTTP要求又は「ヒット」)に含めることができる。それぞれの解析トラッキングデータ通信は、パブリッシャーのウェブサイトへの訪問者によってウェブサイト上のウェブページ又はリソース(例えば、画像ファイル、バナー広告、音声ファイルなど)がロードされるとトリガされうる。ウェブサイト解析報告の目的では、関連付けられたウェブサイトトラッキングデータ(例えば、関連付けられたHTTP要求に含まれるもの)は、ウェブプロパティID(例えば、特定のウェブサイトに関するパブリッシャーの解析アカウントを識別する識別子)と、訪問者識別データ(例えば、一意のクライアントデバイスに対応した匿名化された識別子)と、1つ又は複数のイベント統計値(現在のウェブページ通信のタイムスタンプなど)と、パブリッシャーのウェブサイトへの訪問者に関連付けられた位置データ(すなわち地理的情報)などのユーザデータとを含むことができる。しかし、既存のウェブ解析システムでは、重複した解析トラッキングデータが、所与のウェブ解析システムに送信されるそれぞれの解析トラッキングデータ通信に含まれてしまう。
上述の問題に対処するため、本願技術は、一意のクライアント(例えば、パブリッシャーのウェブサイトへの訪問者)から受け取られる最初の着信解析トラッキングデータ通信からの解析トラッキングデータを、この一意のクライアントから後に受け取られる解析トラッキングデータ通信に伝播することができる。
図5は、最初の解析トラッキングデータ通信(例えば、新規セッションに関する)から後続の解析トラッキングデータ通信へ情報を伝播するための、解析トラッキングシステム500におけるクライアント計算デバイスから解析サーバへの例示的な通信フローを概念的に示す。
図示したように、解析トラッキングシステム500は、クライアント計算デバイス510と、パブリッシャーのウェブサイト520と、解析サーバ540とを含む。図5に示した例では、クライアント計算デバイス510は、パブリッシャーのウェブサイト520を訪れ、パブリッシャーのウェブサイト上の幾つかのリソースにアクセスし、これらは解析サーバ540に異なる解析トラッキングデータ通信として報告される。訪問者行為のそれぞれについて、パブリッシャーのウェブサイト520は、1つ又は複数のクッキーをクライアント計算デバイス510に設定するため応答通信を送ることができる。さらに、パブリッシャーのウェブサイト520におけるクライアント計算デバイス510による訪問者行為それぞれに関し、それぞれのヒット(例えば、それぞれの解析トラッキングデータ通信に対応する)が解析サーバ540に送信される。一例では、第1ヒット530(「ヒット1」として示した)は、解析サーバ540に報告されるパブリッシャーのウェブサイト520でトラッキングされる最初の訪問者行為を表す。後続の訪問者行為に関する後続のヒット532、534、及び536も、続いて解析サーバ540に報告される。幾つかの例では、図5にさらに示したように、1つ又は複数のヒット538をクライアント計算デバイス510から解析サーバ540に送信できる。
解析トラッキングサーバ540において、着信する解析トラッキングデータ通信は、これら解析トラッキングデータ通信からの異なる解析データをトラッキングするため、テーブル550(又は類似のデータ構造)に格納できる。図示したように、テーブル550は、第1ヒット530に対応した解析データ562を含む。一例では、解析データ562は、キャンペーン情報、一意の訪問者の性別、及びセッション情報などの異なる属性に対応した1つ又は複数のディメンションを含むことができる。一例では、この一意の訪問者の性別は、パブリッシャーのウェブサイトにおけるこの一意の訪問者のプロフィール情報に基づいて与えられる。他の属性の他のディメンションは、本願技術の範囲内で解析データ562に含めることができる。これら異なるディメンションの異なる属性は、将来取り出すために解析サーバ540により格納される。こうすることで、パブリッシャーのウェブサイト520での訪問者行為を報告する後続のヒットは、こうした属性を含む必要はない。例えば、パブリッシャーのウェブサイトのJavaScript(登録商標)コードは、クライアントに、一意の訪問者の訪問時に特定の属性のみを含めるよう命令するため一組のページに含まれている。パブリッシャーのウェブサイトへの後続の訪問では、これら属性は、解析サーバ540に送信される解析トラッキングデータ通信には含まれない。後続の着信する解析トラッキングデータ通信それぞれに関しては、解析サーバは、格納された属性560を解析データ564、566、567、及び568に伝播する。さらに図示したように、解析データ567は、562において、ヒットNに伝播されている状態変更情報(例えば、「キャンペーン:456」)を含み、これは、後に詳述する属性の部分伝播の一例である。
図6は、解析サーバにおいて最初の解析トラッキングデータ通信から後続の解析トラッキングデータ通信へ情報を伝播するための例示的なプロセス600を説明する。
605において解析トラッキングデータ通信を受け取ることでプロセス600が開始される。610において、プロセス600は、この解析トラッキングデータ通信が、この受け取られた解析トラッキングデータ通信に含まれた解析トラッキングデータに基づいて状態変更情報を備えたヒットかどうかを判断する。状態変更情報は、新規キャンペーン情報、新規訪問者情報などを含むことができる。別の種類の状態変更情報を本願技術の範囲を逸脱することなく考慮することもできる。
610において、受け取られた解析トラッキングデータ通信が状態変更情報を備えたヒットであると判断されると、プロセス600は615に進んで、この解析トラッキングデータ通信に含まれた解析トラッキングデータからの1つ又は複数の属性を特定する。一例として、この解析トラッキングデータに含まれるそれぞれの属性について、プロセス600は、この特性(例えば、この属性が状態変更情報を含む)を他のヒットに伝播するため格納すべきかを判断する。
次に、620において、プロセス600は、この1つ又は複数の属性を他の解析トラッキングデータ通信に伝播するため格納する。一例では、この1つ又は複数の属性は、上述したように状態変更情報(例えば、新規キャンペーン情報)を含むことができる。すると、プロセス600は、625において、任意の既存の属性を(現在の)受け取られた解析トラッキングデータに伝播すべきかを判断する。例えば、現在は解析サーバに格納されている以前受け取られた解析トラッキングデータは、受け取られた解析トラッキングデータに伝播されるべき訪問者に関する性別情報を含んでいる可能性もある。既存の属性が伝播されるべきであれば、プロセス600は630に進み、こうした属性を、受け取られた解析トラッキングデータ通信に含まれた解析トラッキングデータに伝播させる。次に、プロセス600は635に進み、伝播された1つ又は複数の属性を含む解析トラッキングデータを格納且つ/又は永続化する。一例では、この解析トラッキングデータは、幾つかの構成では、永続性記憶装置にコミットされる前に一時的に非永続性記憶装置に格納される。代替的には、625において、いずれの属性も伝播すべきでないと判断されれば、プロセス600は635に進みこの解析トラッキングデータを格納する。
プロセス600が、610において、受け取られた解析トラッキングデータ通信は状態変更情報を備えたヒットでないと判断すると、プロセス600は630に進み、格納されている属性を、受け取られた解析トラッキングデータ通信に含まれた解析トラッキングデータに伝播する。次に、プロセス600は635に進み、これら伝播された属性を含む解析トラッキングデータを格納する。この解析トラッキングデータは、幾つかの構成では、永続性記憶装置にコミットされる前に一時的に非永続性記憶装置に格納される。こうして、1つ又は複数のディメンションに対応する付加的な解析データがこの後続解析トラッキングデータに適用され、解析サーバに報告された初期の解析トラッキングデータ通信との一貫性を備えることになる。プロセス600はここで終了する。
さらに、解析サーバは、所定時間が経過した後に非永続性記憶装置に格納された解析トラッキングデータを(持続的又は長期的)永続性記憶装置に書き込むことを延期できる。例えば、解析サーバは、特定の日に関するすべての解析データが受け取られるまで待つことができ、その日の状態変更データ(例えば、1つ又は複数の属性)が安定化した時点で、このサーバはその翌日にその解析データを(永続的に)永続性記憶装置に書き込む。こうすることで、この解析サーバは、着信する解析トラッキングデータに関連付けられた任意の状態情報を反映させることができる。
幾つかの構成では、本願技術はシステムを含む。このシステムは、メモリと、1つ又は複数のプロセッサと、メモリ内に格納されると共にこの1つ又は複数のプロセッサにより実行されるよう構成された1つ又は複数のモジュールとを含むことができる。このシステムは、解析トラッキングデータ通信を受け取り、この受け取られた解析トラッキングデータ通信が状態変更情報を含むか否かをこの解析トラッキングデータ通信に含まれた解析トラッキングデータに基づいて判断するよう構成された解析データ伝播モジュールを含み、この解析トラッキングデータは、ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータを含み、この解析データ伝播モジュールは、さらに、この解析トラッキングデータ通信が状態変更情報を含む場合は、後続の解析トラッキングデータに伝播させるための1つ又は複数の属性を特定するよう構成されている。さらに、このシステムは、この状態変更情報を、特定された1つ又は複数の属性の1つ又は複数として格納し、この特定された1つ又は複数の属性を含む解析トラッキングデータを格納するよう構成された格納モジュールを含む。
幾つかの構成では、この解析データ伝播モジュールは、解析トラッキングデータ通信が状態変更情報を含まない場合は解析トラッキングデータに伝播させるための1つ又は複数の属性を特定し、この1つ又は複数の属性を含んだ解析トラッキングデータを格納するようさらに構成される。この解析データ伝播モジュールは、第2の解析トラッキングデータ通信を受け取り、格納された1つ又は複数の属性を、受け取られた第2の解析トラッキングデータ通信に伝播させるうようさらに構成される。第2の解析トラッキングデータ通信は一例では状態変更属性を含む。この状態変更属性は、一例では新規キャンペーン情報又は新規訪問者情報を含む。
幾つかの構成では、格納モジュールは、伝播された1つ又は複数の属性を含む第2解析トラッキングデータ通信を格納するようさらに構成できる。格納モジュールは、格納された第2の解析トラッキングデータ通信を、所定時間が経過した後に永続性記憶装置にコミットするようさらに構成される。

IV. 解析データの動的セッション化
典型的な解析システムでは、パブリッシャーのウェブサイトにおける訪問者行為に関する解析データ(1つ又は複数の「ヒット」)は、クライアントサイドでセッション化された後、異なるヒットとして処理するためウェブ解析サーバに報告される。これらのヒットはウェブ解析サーバにより受け取られ、次に、このヒットに含まれるキャンペーン情報及び/又はセッション情報に従って格納される。しかし、幾つかのクライアント計算デバイス(モバイルデバイスなど)のネットワーク接続性は、場合によっては信頼性が低くなる可能性もある。さらに、一例におけるこの解析トラッキングシステムの分散型の性質(このシステムが幾つかの分散型サーバ上に設けられている)を考慮すれば、ヒットが、各サーバの異なるバッファ及び遅れによって順序通りには受信されない可能性もある。これらの例では、あるセッションのヒットが、セッションを形成する持続時間を超えて遅く(且つ/又は順が狂って)受け取られることがある。セッションの遅いヒットを受け取る前は、そのセッションに対応した解析データのクエリは不正確になってしまう。従って、このウェブ解析サーバに格納済みの解析データは、ヒットが遅れて受け取られた対応するキャンペーン又はセッションに関するパブリッシャーのウェブサイトでの訪問者行為を正確に反映しないことがある。
遅いヒットが新規キャンペーン情報を含む例では、ウェブ解析サーバは、この新規キャンペーン情報を反映するために格納された解析データを更新する追加処理(例えば、異なるキャンペーンに誤って関連付けられた既存の解析データの削除及び修正)を行う必要がある。例えば、所与の解析トラッキングシステムは、解析トラッキングデータを永続性記憶装置に直ちにコミットするはずである。遅いヒットが新規キャンペーン情報を含み、解析データが更新される前であれば、この解析データに関する解析サーバへのクエリは、キャンペーンに関する訪問者行為に関して正確性を欠くものとなる。従って、遅いヒットを受け取る可能性を考慮すれば、解析トラッキングデータを永続性記憶装置にコミットするのを延期することが有利となることがある。
解析データが解析サーバにおいてセッション化される本明細書に記載の解析トラッキングシステムでは、この解析サーバに報告される解析データは、セッション及び/又はキャンペーン情報なしで受け取られることが多い(例えば、この解析データは「ステートレス」である)。よって、この解析サーバは、既存のセッションを特定するため又は解析データに関する新規セッションを作成するために、サーバサイドでセッション化を行い、次に、そのセッションに関連付けられた解析データのキャンペーン情報を書き込む。
上述の問題に対処するため、本願技術は、解析トラッキングデータへのクエリに応答するため解析サーバに格納された解析トラッキングデータを動的にセッション化する構成を提供する。遅いヒットを受け取る可能性を考慮して、この解析サーバは、遅いヒットで受け取られた新規キャンペーン情報を正確に反映しない場合がある永続性記憶装置に既にコミットされた解析トラッキングデータに依存する代わりに、解析トラッキングデータの動的セッション化を実行する。より具体的には、受け取られたトラッキングデータは、永続性記憶装置に直ぐにコミットされず、一例では、非永続性記憶装置に一時的に保持される。次に、この解析サーバは、新規キャンペーン情報を含む遅いヒットを反映させるため、指定された期間後に(例えば、翌日に)解析トラッキングデータのコミットを延期できる。
上述したように、パブリッシャーのウェブサイト上での訪問者行為に基づいた解析トラッキングデータ(「ウェブサイトトラッキングデータ」)は、解析サーバが受け取り且つ処理する上述した解析トラッキングデータ通信(例えば、様々なユーザデバイス及び/若しくはクライアントから生成されたHTTP要求又は「ヒット」)に含まれることができる。
図7は、解析トラッキングデータへのクエリに応答して動的に生成されたセッションに関連付けられた集約済み解析トラッキングデータを与える例示的なプロセス700を説明する。プロセス700は、一例では解析サーバにより実行できる。
プロセス700は、705において、一定期間に関連付けられた解析トラッキングデータへのクエリを受け取ることで開始される。一例では、この期間は、解析データが解析サーバに報告される特定の日(又はその下位期間)にわたることができる。710において、プロセス700はこの期間にわたる解析トラッキングデータを集約して、これら集約済み解析トラッキングデータを動的に生成されたセッションに関連付ける。一例では、このサーバは、受け取られたクエリに応答してセッションを動的に生成する。このサーバは、次に、一意の訪問者に関して、このクエリに基づいてこの期間内でサーバに既に受け取られた解析トラッキングデータを集約する。この解析データが永続性記憶装置へコミットされるのを延期できるので、解析トラッキングデータの集約体は、既に永続性記憶装置にコミットされている解析トラッキングデータ及び/又はこのクエリで指定された期間にわたり永続性記憶装置にまだコミットされていない解析トラッキングデータ(例えば、現在、データは一時的に格納されている)を含むことができる。上記を考慮すると、もし新規キャンペーン情報が遅いヒットで受け取られると、この解析トラッキングデータ集約体からなる動的に生成されたセッションは、この新規キャンペーン情報に基づくことになる。こうして、プロセス700は、新規キャンペーン情報に基づいて最新の解析トラッキングデータを与えることができる。
715において、プロセス700は、このクエリに応答して動的に生成されたセッションに関連付けられた集約済み解析トラッキングデータを与える。この動的に生成されたセッションは、クエリ要求に応答するために使用される「使い捨て」又は一時セッションと理解できる。動的に生成されたセッションを使用することで、セッション化が実行中に行われるため、解析サーバは、クエリに応答して最新の解析トラッキングデータを与えることができる。解析トラッキングデータを直ちにコミットし且つそうしたデータに依存する代わりに、解析サーバは動的に生成されたセッションを利用して解析トラッキングデータを集約することで、クエリで返されるデータに影響しかねない新規キャンペーン情報を備えた遅いヒットを反映させる。プロセス700はここで終了する。
例示的なプロセス700は単一の動的に生成されたセッションに関連して説明したが、解析トラッキングデータは多数の動的に生成されたセッションに関しても集約できる。クエリが2つ以上のセッションを含む期間を要求する一例では、解析サーバは、解析トラッキングデータを集約するため多数のセッションを生成できる。
幾つかの構成では、本願技術はシステムを含む。このシステムは、メモリと、1つ又は複数のプロセッサと、メモリ内に格納されると共にこの1つ又は複数のプロセッサにより実行されるよう構成された1つ又は複数のモジュールとを含むる。一例では、このシステムは解析データクエリモジュールを含み、このモジュールは、一定期間に関連付けられた解析トラッキングデータであって、ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータを含む解析トラッキングデータへのクエリを受け取り、この期間に従って集約するための解析トラッキングデータをこの特定して、これら集約済みトラッキングデータを動的に生成されたセッションに関連付け、クエリに応答して動的に生成されたセッションに関連付けられた集約済み解析トラッキングデータを与えるよう構成されている。特定された解析トラッキングデータは、1つ又は複数の以前受け取られた解析トラッキングデータ通信に関連付けられる。この解析トラッキングデータは、一例では、以前受け取られた解析トラッキングデータ通信に関連付けられたキャンペーン情報を含む。解析トラッキングデータ通信は、一例では、ウェブサイト又はアプリケーションに関連付けられたハイパーテキスト転送プロトコル(HTTP)要求に含まれるウェブサイト又はアプリケーショントラフィックデータを含む。以前受け取られた解析トラッキングデータ通信のそれぞれは、行為のタイムスタンプをさらに含む。この期間は一日(又はその中の下位期間)を含む。動的に生成されたセッションは、一例ではクエリに応答して自動的に生成される。
幾つかの構成では、この解析データクエリモジュールは、各以前受け取られた解析トラッキングデータ通信の行為のタイムスタンプに基づいてこの期間に入る以前受け取られた解析トラッキングデータ通信を集約するようさらに構成される。一例では、以前受け取られた解析トラッキングデータ通信の集約は、遅いヒットで受け取られた新規キャンペーン情報に基づく。

V. オフラインヒットをサポートするための遅延処理の技法
上述のように、ヒットは遅れて受け取られ且つ/又は対応する訪問者行為がパブリッシャーのウェブサイト若しくはアプリケーションで起こる順番に比べ順が狂って受け取られることがある。本願技術は、ヒットの動的セッション化を実行することで遅れた又は順狂いのヒットに対処し、この動的セッションでは、ヒットが既に関連付けられているセッションから分割され且つ/又は異なるセッションに合併される。図8は、異なるヒットが解析サーバで受け取られる例示的な時系列を概念的に示す。より具体的には、図8の例は、異なるヒットが受け取られる異なるステージ801、802、及び803を示す。
ステージ801で示したように、ヒット830(「ヒット1」)、ヒット835(「ヒット3」)、及びヒット840(「ヒット5」)は、各ヒットのそれぞれのタイムスタンプに基づいて互いから時間的に近接して受け取られている。ヒット850(「ヒット6」)は後の時刻に受け取られている。一例では、タイムスタンプを含む解析トラッキングデータが各ヒットに含まれている。ヒットのタイムスタンプは、パブリッシャーのウェブサイト又はアプリケーションでの訪問者行為がログ記録された時刻を示す。例えば、ヒット840及びヒット850のそれぞれのタイムスタンプは、これらヒットがセッションタイムアウト期間を上回る間隔で離間してログ記録されていることを示すことができる。結果として、解析サーバは、ヒット830、835、及び840を第1セッション810にグループ化し、ヒット850を第2セッション820にグループ化する。
第2ステージ802では、ヒット860(「ヒット4」)及びヒット865(「ヒット2」)は遅れて(例えば、第1及び第2セッションの期限切れ時間を超えて)受け取られている。同様に、ヒット860及び865は、訪問者行為がログ記録されたそれぞれのタイムスタンプを含む解析トラッキングデータを含む。さらに、ヒット860は、新規キャンペーン情報などの状態変更情報を含む。解析サーバは、ヒット860に含まれる新規キャンペーン情報に基づいてヒット860が新規セッションを開始すべきと判断する。さらに、解析サーバは、ヒット865が、ヒット865のタイムスタンプに基づいて第1セッション810に含まれるべきだと判断する。
ステージ803では、解析サーバは、ヒット860の新規キャンペーン情報を用いてヒット840を第1セッション810から新規に作成されたセッション870に移動させる。一例では、ヒット840のタイムスタンプは、時間的にはヒット860のタイムスタンプに近い(例えば、セッションタイムアウト期間以内)。結果として、解析サーバは、ヒット840を第2セッション870と関連付けるべきだと判断する。言い換えると、解析サーバは、ヒット860に含まれた新規キャンペーン情報を用いて且つヒット840及び860のそれぞれのタイムスタンプを比較することで、ヒット840はヒット860と共に第2セッション870に含めるべきと判断する。ヒット840及びヒット850のそれぞれのタイムスタンプに基づいて(例えば、それぞれのタイムスタンプはセッションタイムアウト期間を超えて離れている)、解析サーバは、ヒット850は第3セッション820に含まれるべきだと判断できる。幾つかの構成では、新規キャンペーンに関連付けられたヒットは、異なるセッションの以前のヒットとは別のセッションに含まれる。一例では、ヒット860に含まれる状態変更情報は、第2セッション870のヒット840に伝播される。このようにして、遅れヒット(例えばヒット860)から受け取られた状態変更情報は同一セッションの後続のヒット(例えば、ヒット840)に伝播される。別の例では、ヒット860に含まれる状態変更情報は、第3セッション820のヒット850に伝播される。このようにして、遅れヒット(例えばヒット860)から受け取られた状態変更情報は別のセッションの後続のヒット(例えば、ヒット850)に伝播される。
ステージ803にさらに示したように、解析サーバはヒット865を第1セッション810に含める。一例では、ヒット865のそれぞれのタイムスタンプは、ヒット830及び835のそれぞれのタイムスタンプに時間的に近い。結果的に、解析サーバは、ヒット865が、ヒット830、835、及び865のそれぞれのタイムスタンプに基づいてヒット830及び835と共に第1セッション810に含まれるべきだと判断する。
図示したように、第1セッション810はこの時点でヒット830、835、及び865を含み、第2セッション870はヒット860及び840を含み、第3セッション820はヒット850を含んでいる。こうすることで、図8の例で示したように、解析サーバは、新規キャンペーン情報に基づいて異なるヒットを他のセッションに分割し且つ合併することができ、それによってヒットが遅れて且つ/又は順が狂って受け取られると、このサーバはヒットを動的にセッション化できる。
次の例示的プロセスは、分析が、着信する解析トラッキングデータ通信(「ヒット」)をどのように動的に分割し且つ以前のヒットからの以前受け取られた解析トラッキングデータと合併するかを説明する。図9は、遅い且つ/又は順狂い解析トラッキングデータ通信を処理するための例示的なプロセス900を概念的に示す。上述したように、パブリッシャーのウェブサイト又はアプリケーション上での訪問者行為に基づいた解析トラッキングデータ(「ウェブサイトトラッキングデータ」)は、解析サーバが受け取り且つ処理する上述した解析トラッキングデータ通信(例えば、様々なユーザデバイス及び/若しくはクライアントから生成されたHTTP要求又は「ヒット」)に含まれることができる。
900において解析トラッキングデータ通信を受け取ることでプロセス905が開始される。910において、プロセス900は、受け取られた解析トラッキングデータ通信からの解析トラッキングデータに含まれたタイムスタンプを特定する。プロセス900は、915で、新規の状態変更情報がこの解析トラッキングデータに含まれているか否かを判断する。一例では、新規の状態変更情報には、新規キャンペーン情報が含まれるがそれに限定されない。別の例では、新規の状態変更情報には性別情報が含まれるがそれに限定されない。その場合、プロセス900は920に進み、新規の状態変更情報及び/又はタイムスタンプに基づいてセッションを特定する。一例では、新規の状態変更情報は、新規セッションを作成する新規キャンペーン情報を含んでいる。別の例では、新規の状態変更情報は性別情報を含み、ここではこの新規の状態変更情報によっては新規セッションは作成されず、このセッションがタイムスタンプにより特定される。プロセス900は925に進み、1つ又は複数の受け取られた解析トラッキングデータ通信に含まれた他の解析トラッキングデータをこのセッションに関連付ける。
代替的に、新規の状態変更情報が915で受け取られていない場合は、プロセス900は930に進み、解析トラッキングデータに含まれたタイムスタンプに基づいてセッションを特定する。プロセス900は935に進み、受け取られた解析トラッキングデータ通信に含まれた解析トラッキングデータをこのセッションに関連付ける。プロセス900はここで終了する。
幾つかの構成では、本願技術はシステムを提供する。このシステムは、メモリと、1つ又は複数のプロセッサと、メモリ内に格納されると共にこの1つ又は複数のプロセッサにより実行されるよう構成された1つ又は複数のモジュールとを含む。このシステムは動的セッションモジュールを含み、この動的セッションモジュールは、ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータを含む解析トラッキングデータを含む解析トラッキングデータ通信を受け取り、受け取られた解析トラッキングデータ通信からの解析トラッキングデータに含まれたタイムスタンプを特定し、新規の状態変更情報が、受け取られた解析トラッキングデータ通信からの解析トラッキングデータに含まれているかを判断し、新規の状態変更情報が、受け取られた解析トラッキングデータ通信からの解析トラッキングデータに含まれている場合、新規の状態変更情報に関連付ける他の解析トラッキングデータを特定するよう構成され、この他の解析トラッキングデータは1つ又は複数の以前受け取られた解析トラッキングデータ通信に関連付けられており、この動的セッションモジュールは、さらに、この解析トラッキングデータと新規キャンペーン情報に関連付けられた他の解析トラッキングデータとを格納するよう構成されている。この他の解析トラッキングデータは、一例では、ユーザ情報、性別情報、位置、タイムスタンプ情報、又はセッション情報を含む。この新規の状態変更情報は、一例では、新規キャンペーン情報、性別情報、又はタイムスタンプ情報を含んでいる。
幾つかの構成では、この動的セッションモジュールは、新規の状態変更情報が解析トラッキングデータに含まれていない場合は、受け取られた解析トラッキングデータ通信のタイムスタンプに基づいてセッションを特定し、この解析トラッキングデータを特定されたセッションに関連付け、特定されたセッションに関連付けられたこの解析トラッキングデータを格納するようさらに構成されており、特定されたセッションは、以前受け取られた解析トラッキングデータ通信に関連付けられた他の解析トラッキングデータを含む。
幾つかの構成では、この新規の状態変更情報に関連付ける他の解析トラッキングデータの上記特定は、新規セッションに含めるための1つ又は複数の以前受け取られた解析トラッキングデータ通信の部分集合を、受け取られた解析トラッキングデータ通信からの解析トラッキングデータに含まれたタイムスタンプと、この部分集合の各以前受け取られた解析トラッキングデータ通信のそれぞれのタイムスタンプと、に基づいて識別することをさらに含む。幾つかの構成では、この1つ又は複数の以前受け取られた解析トラッキングデータ通信の部分集合は、以前はこの新規セッションとは異なるセッションに含まれていた。幾つかの構成では、この新規セッションに含めるための1つ又は複数の以前受け取られた解析トラッキングデータ通信のこの部分集合の上記識別は、受け取られた解析トラッキングデータ通信からの解析トラッキングデータに含まれたタイムスタンプと、この部分集合の各以前受け取られた解析トラッキングデータ通信のそれぞれのタイムスタンプとが、セッションタイムアウト期間内であるか否かを判断することをさらに含む。幾つかの構成では、この動的セッションモジュールは、第2新規セッションに含めるための1つ又は複数の以前受け取られた解析トラッキングデータ通信の第2部分集合を、受け取られた解析トラッキングデータ通信からの解析トラッキングデータに含まれたタイムスタンプと、この第2部分集合の各以前受け取られた解析トラッキングデータ通信のそれぞれのタイムスタンプと、に基づいて識別することをさらに含む。

XX.例示的なシステムアーキテクチャ
次節では、上述の発明の諸側面を実装する例示的システムを説明する。
上述の特徴及び応用例は、コンピュータ可読記憶媒体(コンピュータ可読媒体ともいう)に記録された一組の命令として指定されたソフトウェアプロセスとして実装される。これら1つ又は複数の命令が1つ又は複数の処理装置(例えば、1つ又は複数のプロセッサ、プロセッサのコア、又は他の処理装置)により実行されると、こうした処理装置に上記命令に示された動作を実行させる。コンピュータ可読媒体の例にはCD-ROMs、フラッシュドライブ、RAMチップ、ハードドライブ、EPROMなどが含まれるが、それらに限定されない。このコンピュータ可読媒体は、無線又は有線接続を介して伝送される搬送波及び電子信号は含まない。
本明細書では、「ソフトウェア」という用語は、プロセッサによる処理のためメモリに読み込み可能な、読み出し専用メモリに記録されたファームウェア又は磁気記憶装置に格納されたアプリケーションを含むことを意図している。又、幾つかの構成では、多数のソフトウェア発明を別個のソフトウェア発明として維持しつつ、より大きいプログラムの下位部分として実装してもよい。幾つかの実装例では、多数のソフトウェア発明を別個のプログラムとして実装してもよい。最後に、本明細書に記載した1つのソフトウェア発明を合わせて実装する別個のプログラムの任意組合せは、本発明の範囲に入る。幾つかの実装例では、こうしたソフトウェアプログラムは、1つ又は複数のシステムで動作するようインストールされると、これらソフトウェアプログラムを実行し且つその動作を行う1つ又は複数の特定の機械実装例を定義する。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、又はコードとも呼ばれる)は、コンパイル済み若しくは解釈実行言語又は宣言型若しくは手続き型言語を含む任意形式のプログラミング言語で書くことができ、こうしたプログラムは、スタンドアローン形式のプログラム若しくはモジュール、構成要素、サブルーチン、オブジェクト又は計算環境における使用に適した他の単位を含む任意形式で導入できる。コンピュータプログラムは、ファイルシステムのファイルに対応できるが、必ずしもそうである必要はない。プログラムは、他のプログラム又はデータ(例えば、マーク付け言語文書に格納された1つ又は複数のスクリプト)を保持するファイルの一部、このプログラム専用の単一ファイル、又は多数の調整ファイル(例えば、1つ又は複数のモジュール、サブプログラム、又はコードの複数部分を格納するファイル)に格納できる。コンピュータプログラムは、単一のコンピュータ又は単一サイトに配置された複数のコンピュータ若しくは複数サイトに分散されて通信ネットワークにより相互接続した複数のコンピュータで実行されるよう導入できる。
図10は、本願技術の幾つかの実装例を実装できるシステム1000を概念的に示す。システム1000は、コンピュータ、電話、PDA、又は任意の他の種類の電子デバイスでよい。こうしたシステムは、様々な種類のコンピュータ可読媒体及び様々な他の種類のコンピュータ可読媒体のインターフェースを含む。システム1000は、バス1005、1つ又は複数の処理ユニット1010、システムメモリ1015、読出し専用メモリ1020、記憶装置1025、オプションの入力インターフェース1030、オプションの出力インターフェース1035、及びネットワークインターフェース1040を含む。
バス105は、システム1000の多数の内部デバイスを通信可能に接続するすべてのシステムバス、周辺バス、及びチップセットバスを一括して表している。例えば、バス105は、1つ又は複数の処理ユニット1010を読出し専用メモリ1020、システムメモリ1015、及び記憶装置1025に通信可能に接続する。
1つ又は複数の処理ユニット1010は、本発明の諸プロセスを実行するために、実行すべき命令と処理すべきデータとをこれら様々なメモリ装置から取り出す。この1つ又は複数の処理ユニットは、異なる実装例では、単一のプロセッサでもよいし単一のマルチコアプロセッサでもよい。
読み出し専用メモリ(ROM) 1020は、1つ又は複数の処理ユニット1010及びシステム1000の他のモジュールが必要とする静的データ及び命令を格納する。一方、記憶装置1025は読み出し・書き込み記憶装置である。この装置は、システム1000がオフであっても命令やデータを格納しておく不揮発性メモリ装置である。本発明の幾つかの実装例は、記憶装置1025として大容量記憶装置(磁気又は光学ディスク及びその対応するディスクドライブなど)を使用する。
他の実装例は、記憶装置1025として取り外し可能な記憶装置(フラッシュドライブ、フロッピー(登録商標)ディスク、及びその対応するディスクドライブなど)を使用する。記憶装置1025のように、システムメモリ1015も読み出し・書き込み記憶装置である。しかし、記憶装置1025とは異なり、システムメモリ1015は、ランダムアクセスメモリのような揮発性読み出し・書き込み記憶装置である。システムメモリ1015は、プロセッサがランタイムに必要とする命令及びデータの一部を格納する。幾つかの実装例では、本発明のプロセスは、システムメモリ1015、記憶装置1025、及び/又は読み出し専用メモリ1020に格納される。例えば、こうした様々なメモリ装置は、幾つかの実装例に従ってマルチメディアアイテムを処理するための命令を含む。1つ又は複数の処理ユニット1010は、幾つかの実装例のプロセスを実行するために、実行すべき命令と処理すべきデータとをこれら様々なメモリ装置から取り出す。
バス105は、オプションの入力及び出力インターフェース1030及び1035にも接続している。オプションの入力インターフェース1030によって、ユーザは、システムに情報を伝達し且つコマンドを選択できる。オプションの入力インターフェース1030は、英数字キーボード及びポインティングデバイス(「カーソル制御デバイス」ともいう)と接続可能である。オプションの出力インターフェース1035は、システム1000により生成された画像を表示できる。オプションの出力インターフェース1035は、プリンター及びブラウン管(CRT)又は液晶表示装置(LCD)などの表示装置と接続可能である。幾つかの実装例は、入力デバイスとしても出力デバイスとしても機能するタッチスクリーンのようなデバイスと接続可能である。
最後に、図10に示したように、バス105は、システム1000をネットワークアダプタ(図示しない)を介してネットワークインターフェース1040にも結合する。このすることで、このコンピュータは、複数コンピュータのネットワーク(例えばローカルエリアネットワーク(「LAN」)、広域ネットワーク(「WAN」)、インターネット、又はインターネットのような複数ネットワークの相互接続ネットワーク)の一部となりうる。システム1000の任意の又はすべての構成要素は本発明とともに使用できる。
上述の機能は、デジタル電子回路、コンピュータソフトウェア、ファームウェア、又はハードウェアによって実現可能である。これら技法は、1つ又は複数のコンピュータプログラム製品を用いて実装できる。プログラマブルプロセッサ及びコンピュータをモバイルデバイスに含めたり、モバイルデバイスとして実装したりしてもよい。本願のプロセス及び論理フローは、1つ又は複数のプログラマブルプロセッサ又は1つ又は複数のプログラマブル論理回路により実行できる。汎用及び専用計算デバイス及び記憶装置は通信ネットワークを介して相互接続できる。
幾つかの実装例は、マイクロプロセッサ、機械可読媒体又はコンピュータ可読媒体(コンピュータ可読記憶媒体、機械可読媒体、又は機械可読記憶媒体ともいう)にコンピュータプログラム命令格納する記憶装置及びメモリなどの電子構成要素を含む。こうしたコンピュータ可読媒体の例には、RAM、ROM、コンパクトディスク読出し専用記憶装置(CD-ROM)、書き込み可能なコンパクトディスク(CD-R)、書き換え可能なコンパクトディスク(CD-RW)、読み出しのみ可能なデジタルビデオディスク(例えば、 DVD-ROM、2層DVD-ROM)、様々な記録可能/書き換え可能DVD(DVD-RAM, DVD-RW, DVD+RWなど)、フラッシュメモリ(例えば、SDカード、ミニSDカード、マイクロSDカードなど)、磁気及び/又は固体はハードドライブ、読出し専用及び記録可能Blu-Ray(登録商標)ディスク、超高密度光ディスク、他の任意の光学又は磁気媒体、並びにフロッピー(登録商標)ディスクが含まれる。このコンピュータ可読媒体は、少なくとも1つの処理ユニットにより実行可能なコンピュータプログラムを格納でき、様々な動作を実行するための複数組の命令を含む。コンピュータプログラム又はコンピュータコードの例には、コンパイラにより生成される機械コードや、コンピュータ、電子構成要素、又はインタープリタを用いたマイクロプロセッサにより実行されるより高レベルのコードを含むファイルが含まれる。
上述の説明は、主としてソフトウェアを実行するマイクロプロセッサ又はマルチコアプロセッサに関するものだが、幾つかの実装例は、特定用途向けIC(ASIC)又は利用者書き込み可能グリッドアレイ(FPGA)などの1つ又は複数の集積回路によって実行される。幾つかの実装例では、こうした集積回路は、その回路自身に格納された命令を実行する。
本明細書及び本明細書の請求の範囲で使用される範囲では、「コンピュータ」、「サーバ」、「プロセッサ」、及び「メモリ」という用語は、電子装置又は他の技術装置をいう。これらの用語は、人又は人の集団を排除する。本明細書の目的では、表示装置又は表示手段という用語は電子装置での表示を意味する。本明細書及び本明細書の請求の範囲で使用される範囲では、「1つのコンピュータ可読媒体」及び「複数のコンピュータ可読媒体」という用語は、コンピュータにより可読の形式で情報を格納する有形の物理的物体に完全に限定される。これらの用語は、いかなる無線信号、有線ダウンロード信号、及び他の一過性信号を排除する。
ユーザとのインタラクションを実現するため、本明細書に記載された主題の実装例は、情報をユーザに表示するための、例えば、CRT(ブラウン管)またはLCD(液晶表示装置)モニタなどの表示装置と、ユーザがコンピュータに入力を与えるのに使用するキーボードと、例えばマウスやトラックボールなどのポインティングデバイスとを備えたコンピュータで実装できる。他の種類のデバイスを使ってもユーザとインタラクションを実現できる。例えば、ユーザに与えられるフィードバックは、視覚フィードバック、聴覚フィードバック、又は触覚フィードバックなどの任意形式の感覚フィードバックでよく、ユーザからの入力は、音響、音声、又は触覚入力を含む任意形式で受信できる。さらに、コンピュータは、例えば、ユーザのクライアント装置上のウェブブラウザから受信した要求に応答してウェブページをこのウェブブラウザに送るなど、ユーザが使用する装置との間で文書を送受信することでユーザとインタラクションできる。
本明細書に記載された主題の構成は、データサーバなどのバックエンド構成要素を含んだ計算機システム、例えばアプリケーションサーバなどのミドルウェア構成要素を含んだ計算機システム、ユーザが本明細書に記載された主題の実装例とインタラクションする手段となるグラフィカル・ユーザインタフェース若しくはウェブブラウザを備えたクライアントコンピュータなどのフロントエンド構成要素を含む計算機システム、又は1つ又は複数のそうしたバックエンド、ミドルウェア、若しくはフロントエンド構成要素の任意組合せ含む計算機システムで実装できる。こうしたシステムの構成要素は、例えば通信ネットワークなどの任意形式又は媒体のデジタルデータ通信により相互接続できる。通信ネットワークの例には、ローカルエリアネットワーク(「LAN」)、広域ネットワーク(「WAN」)、相互接続ネットワーク(例えば、インターネット)、及びピアツーピアネットワーク(例えば、アドホック・ピアツーピアネットワーク)が含まれる。
この計算機システムは、クライアントおよびサーバを含むことができる。クライアントとサーバは、概して互いから遠隔に位置し、典型的には通信ネットワークを介して相互作用する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行されかつ互いにクライアント・サーバ関係を備えたコンピュータプログラムによって実現される。幾つかの構成では、サーバは、データ(例えば、HTMLページ)をクライアント装置に送信する(例えば、データをクライアント装置とインタラクションするユーザに表示し、ユーザからユーザ入力を受け取るため)。クライアント装置で生成されるデータ(例えば、ユーザインタラクションの結果)は、クライアント装置からサーバで受信できる。
開示したプロセスに含まれる段階の具体的な順番又は階層は、いずれも代表的なアプローチの例示であることは理解されている。設計上の優先度に基づいて、これらプロセスの具体的な順番又は階層を再編成したり、すべての例示的な段階が実行されることは理解されている。これら段階の幾つかは同時に実行してもよい。例えば、一定の状況では、多重タスク処理及び並列処理が有利となることがある。さらに、上述の構成における様々なシステム構成要素の分離は、すべての構成でそうした分離が必要であると理解すべきでなく、上述のプログラム構成要素及びシステムは、概して単一のソフトウェア製品に統合又は多数のソフトウェア製品に実装できることは理解すべきである。
上記の説明は、当業者が、本明細書に記載された様々な側面を実施できるよう記載されたものである。これら側面の様々な修正は当業者には容易に明かとなるはずであり、本明細書に記載された一般的原理は他の側面にも適用できる。従って、本願請求項は、本明細書で示した側面に限定されることを意図したものでなく、記載された請求項と一致した最大限の範囲を与えられるべきものであり、単数形の要素の記載は、明言されていなければ「1つ且つ1つのみ」を意味することは意図されておらず、「1つ又は複数」を意味することが意図されている。「幾つか」という語句は、明示的にそうではないと記載されていなければ1つ又は複数を示す。男性代名詞(例えば、彼の)は、女性及び中性(例えば、彼女の及びその)を含み、その逆の場合も同じである。見出し及び小見出しが使用されている場合は、それらは便宜的に用いられたものであって、本発明を限定するものではない。
「側面」のような語句は、こうした側面が本願技術に必須であり、本願技術のすべての構成に適用されることを意味しない。任意の側面に関する開示は、すべての構成、又は1つ若しくは複数の構成に適用されうる。一側面のような語句は1つ又は複数の側面を指すことがあり、その逆の場合も同じである。「構成」のような語句は、こうした構成が本願技術に必須であり、本願技術のすべての構成に適用されることを意味しない。任意の構成に関する開示は、すべての構成、又は1つ若しくは複数の構成に適用されうる。1つの構成のような語句は1つ又は複数の側面を指すことがあり、その逆の場合も同じである。
「例」という語句は、本明細書では「実例又は例示となる」という意味で使用されている。本明細書で1つの「例」として記載された側面又は設計は、必ずしも他の側面又は設計よりも好まれる又は有利であると解釈されているわけではない。

Claims (104)

  1. ウェブサイト又はアプリケーショントラフィックデータに関連付けられたセッションを用意するための機械実装方法であって、
    解析トラッキングデータ通信を受け取る段階と、
    前記受け取られた解析トラッキングデータ通信から解析トラッキングデータを特定する段階であって、前記解析トラッキングデータは、ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータと訪問者情報とを含む、特定する段階と、
    前記行為が、前記訪問者情報に対応した一意の訪問者の最初の訪問に関連付けられていると判断された場合は、前記解析トラッキングデータに関連付けられた新規セッションを作成する段階と、
    前記解析トラッキングデータに関連付けられた前記新規セッションに書き込むためのキャンペーン情報を特定する段階と、
    前記特定されたキャンペーン情報を含む前記解析トラッキングデータを格納する段階とを含む、方法。
  2. 前記解析トラッキングデータが前記一意の訪問者の前記最初の訪問でない場合は、アクティブセッションが前記解析トラッキングデータに関連付けられているか否かを判断する段階と、
    前記解析トラッキングデータに関連付けられた前記アクティブセッションに書き込むためのキャンペーン情報を特定する段階と、
    前記特定されたキャンペーン情報を含む前記解析トラッキングデータを格納する段階とを含む、請求項1に記載の方法。
  3. 前記解析トラッキングデータに関連付けられたアクティブセッションが存在しない場合、前記解析トラッキングデータに関連付けられた新規セッションを作成する段階をさらに含む、請求項2に記載の方法。
  4. 前記解析トラッキングデータ通信は、前記ウェブサイト又はアプリケーションに関連付けられたハイパーテキスト転送プロトコル(HTTP)要求に含まれたウェブサイト又はアプリケーショントラフィックデータを含む、請求項1に記載の方法。
  5. 前記解析トラッキングデータは前記行為のタイムスタンプをさらに含む、請求項1に記載の方法。
  6. 前記タイムスタンプは、イベントがクライアントにより記録された時から、前記イベントが前記解析トラッキングデータの一部として含まれた時までの経過時間を表す、請求項5に記載の方法。
  7. 前記解析トラッキングデータ通信は、パブリッシャーのウェブサイト上のリソースにアクセスしたクライアントからネットワークを介して受け取られる、請求項1に記載の方法。
  8. 前記解析トラッキングデータに関連付けられた前記新規セッションを作成する前記段階は、
    前記新規セッションの開始時刻を示すため前記解析トラッキングデータからタイムスタンプを格納する段階を含む、請求項1に記載の方法。
  9. 前記一意の訪問者の前記最初の訪問は、前記一意の訪問者に関する以前のタイムスタンプが存在しているか否かに基づいて特定される、請求項1に記載の方法。
  10. 前記アクティブセッションが前記解析トラッキングデータに関連付けられているかを判断する前記段階は、
    前記アクティブセッションが開始された時を示す格納済みタイムスタンプが存在するか否かを判断する段階を含む、請求項1に記載の方法。
  11. 前記格納済みタイムスタンプに基づいて所定の無活動期間が経過したか否かを判断する段階をさらに含む、請求項10に記載の方法。
  12. 前記解析トラッキングデータに関連付けられた前記新規セッションを作成する前記段階が、1つ又は複数のセッション境界条件に基づく、請求項3に記載の方法。
  13. 前記セッション境界条件が、キャンペーン情報、セッションマーカ、又はセッションタイムアウトを含む、請求項12に記載の方法。
  14. 前記特定されたキャンペーン情報がマーケッティングキャンペーンの名前を含む、請求項2に記載の方法。
  15. 前記キャンペーン情報が、前記ウェブサイト又はアプリケーションに関連付けられたマーケッティングキャンペーンを示す、請求項1に記載の方法。
  16. メモリと、
    1つまたは複数のプロセッサと、
    メモリ内に格納されると共に前記1つ又は複数のプロセッサにより実行されるよう構成された1つ又は複数のモジュールとを含むシステムであって、前記モジュールは、
    解析トラッキングデータ通信を受け取り、前記受け取られた解析トラッキングデータ通信から解析トラッキングデータを特定するよう構成された解析データモジュールであって、前記解析トラッキングデータは、ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータと訪問者情報とを含む、解析データモジュールと、
    前記行為が前記訪問者情報に対応した一意の訪問者の最初の訪問に関連付けられていると判断された場合は、前記解析トラッキングデータに関連付けられた新規セッションを作成し、前記解析トラッキングデータに関連付けられた前記新規セッションに書き込むためのキャンペーン情報を特定し、且つ前記特定されたキャンペーン情報を含む前記解析トラッキングデータを格納するよう構成されたセッションモジュールとを含む、システム。
  17. セッションモジュールは、
    前記解析トラッキングデータが前記一意の訪問者の前記最初の訪問でない場合は、アクティブセッションが前記解析トラッキングデータに関連付けられているか否かを判断し、
    前記解析トラッキングデータに関連付けられた前記アクティブセッションに書き込むためのキャンペーン情報を特定し、
    前記特定されたキャンペーン情報を含む前記解析トラッキングデータを格納するようさらに構成された、請求項16に記載のシステム。
  18. 前記セッションモジュールは、
    前記解析トラッキングデータに関連付けられたアクティブセッションが存在しない場合、前記解析トラッキングデータに関連付けられた新規セッションを作成するようさらに構成された、請求項17に記載のシステム。
  19. 前記解析トラッキングデータ通信は、前記ウェブサイト又はアプリケーションに関連付けられたハイパーテキスト転送プロトコル(HTTP)要求に含まれたウェブサイト又はアプリケーショントラフィックデータを含む、請求項16に記載のシステム。
  20. 前記解析トラッキングデータは前記行為のタイムスタンプをさらに含む、請求項16に記載のシステム。
  21. 前記キャンペーン情報が、前記ウェブサイト又はアプリケーションに関連付けられたマーケッティングキャンペーンを示す、請求項16に記載のシステム。
  22. 内部に格納された命令を含む非一時的な機械可読媒体であって、前記命令は、機械により実行されると前記機械に、
    解析トラッキングデータ通信を受け取らせ、
    前記受け取られた解析トラッキングデータ通信から解析トラッキングデータを特定させ、前記解析トラッキングデータは、ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータと訪問者情報とを含み、
    前記行為が、前記訪問者情報に対応した一意の訪問者の最初の訪問に関連付けられていると判断された場合は、前記解析トラッキングデータに関連付けられた新規セッションを作成させ、
    前記解析トラッキングデータに関連付けられた前記新規セッションに書き込むためのキャンペーン情報を特定させ、
    前記特定されたキャンペーン情報を含む前記解析トラッキングデータを格納させる動作を含む諸動作を実行させる、媒体。
  23. 解析トラッキングデータに適用するためのリソース構成情報を特定する機械実装方法であって、
    解析トラッキングデータ通信からの解析トラッキングデータに基づいてリソース情報を特定する段階であって、前記リソース情報はソースに関連付けられた対応するリソースを含み、前記解析トラッキングデータは、前記ソースに関連付けられた行為をトラッキングするためのデータを含む、リソース情報を特定する段階と、
    前記特定されたリソース情報に基づいてリソース構成情報を特定する段階であって、前記リソース構成情報は前記対応するリソースに関連付けられた1つ又は複数の属性を含む、リソース構成情報を特定する段階と、
    前記特定されたリソース構成情報からの1つ又は複数の属性を前記解析トラッキングデータに適用する段階とを含む、方法。
  24. 前記解析トラッキングデータを格納する段階をさらに含み、前記解析トラッキングデータは前記適用された1つ又は複数の属性を含む、請求項23に記載の方法。
  25. 前記1つ又は複数の属性は、検索エンジンリスト、タイムアウト情報、又はキャンペーン属性を含む、請求項23に記載の方法。
  26. 前記解析トラッキングデータ通信は、前記ウェブサイト又はアプリケーションに関連付けられたハイパーテキスト転送プロトコル(HTTP)要求に含まれたウェブサイト又はアプリケーショントラフィックデータを含む、請求項23に記載の方法。
  27. 前記解析トラッキングデータは前記行為のタイムスタンプをさらに含む、請求項23に記載の方法。
  28. 前記解析トラッキングデータ通信は、パブリッシャーのウェブサイト上のリソースにアクセスしたクライアントからネットワークを介して受け取られる、請求項23に記載の方法。
  29. 前記特定されたリソース情報は、前記対応するウェブページを複数のページ構成からの前記リソース構成情報にマッピングする、請求項23に記載の方法。
  30. 第2の対応するウェブページが前記リソース構成情報に対応する、請求項29に記載の方法。
  31. 前記リソース情報は、前記行為が発生したパブリッシャーのウェブサイトからのウェブページを識別する情報を含む、請求項23に記載の方法。
  32. 前記特定されたリソース構成情報からの1つ又は複数の属性を前記解析トラッキングデータに適用する前記段階は、前記解析トラッキングデータ通信に基づいた新規セッションの作成時に実行される、請求項23に記載の方法。
  33. メモリと、
    1つまたは複数のプロセッサと、
    メモリ内に格納されると共に前記1つ又は複数のプロセッサにより実行されるよう構成された1つ又は複数のモジュールとを含むシステムであって、前記モジュールは、
    解析トラッキングデータ通信を受け取り、前記解析トラッキングデータ通信からの解析トラッキングデータに基づいてリソース情報を特定するよう構成された解析データモジュールであって、前記リソース情報はソースに関連付けられた対応するリソースを含み、前記解析トラッキングデータは前記ソースに関連付けられた行為をトラッキングするためのデータを含む、解析データモジュールと、
    前記対応するリソースに関連付けられた1つ又は複数の属性を含むリソース構成情報を、前記特定されたリソース情報に基づいて特定するよう構成されたリソース構成モジュールであって、前記特定されたリソース構成情報からの1つ又は複数の属性を前記解析トラッキングデータに適用するリソース構成モジュールとを含む、システム。
  34. 前記リソース構成モジュールは、
    前記解析トラッキングデータを格納するようさらに構成されており、前記解析トラッキングデータは前記適用された1つ又は複数の属性を含む、請求項33に記載のシステム。
  35. 前記1つ又は複数の属性は、検索エンジンリスト、タイムアウト情報、又はキャンペーン属性を含む、請求項33に記載のシステム。
  36. 前記解析トラッキングデータ通信は、前記ウェブサイト又はアプリケーションに関連付けられたハイパーテキスト転送プロトコル(HTTP)要求に含まれたウェブサイト又はアプリケーショントラフィックデータを含む、請求項33に記載のシステム。
  37. 前記解析トラッキングデータは前記行為のタイムスタンプをさらに含む、請求項33に記載のシステム。
  38. 前記解析トラッキングデータ通信は、パブリッシャーのウェブサイト上のリソースにアクセスしたクライアントからネットワークを介して受け取られる、請求項33に記載のシステム。
  39. 前記特定されたリソース情報は、前記対応するリソースを複数のリソース構成からの前記リソース構成情報にマッピングする、請求項33に記載のシステム。
  40. 第2の対応するリソースが前記リソース構成情報に対応する、請求項39に記載のシステム。
  41. 前記特定されたリソース構成情報からの1つ又は複数の属性を前記解析トラッキングデータに適用する前記段階は、前記解析トラッキングデータ通信に基づいた新規セッションの作成時に実行される、請求項33に記載のシステム。
  42. 内部に格納された命令を含む非一時的な機械可読媒体であって、前記命令は、機械により実行されると前記機械に、
    解析トラッキングデータ通信からの解析トラッキングデータに基づいてリソース情報を特定させ、前記リソース情報はソースに関連付けられたリソースを含み、前記解析トラッキングデータは前記ソースに関連付けられた行為をトラッキングするためのデータを含み、
    前記対応するリソースに関連付けられた1つ又は複数の属性を含むリソース構成情報を、前記特定されたリソース情報に基づいて特定させ、
    前記特定されたリソース構成情報からの1つ又は複数の属性を前記解析トラッキングデータに適用させる動作を含む諸動作を実行させる、媒体。
  43. 解析サーバにおいて最初の解析トラッキングデータ通信から後続の解析トラッキングデータ通信へ情報を伝播するための機械実装方法であって、
    解析トラッキングデータ通信を受け取る段階と、
    前記受け取られた解析トラッキングデータ通信が状態変更情報を含むか否かを前記解析トラッキングデータ通信に含まれた解析トラッキングデータに基づいて判断する段階であって、前記解析トラッキングデータは、前記ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータを含む、判断する段階と、
    前記解析トラッキングデータ通信が状態変更情報を含む場合は、後続の解析トラッキングデータに伝播させるための1つ又は複数の属性を特定する段階と、
    前記状態変更情報を、前記特定された1つ又は複数の属性として格納する段階と、
    前記特定された1つ又は複数の属性を含む前記解析トラッキングデータを格納する段階とを含む、方法。
  44. 前記解析トラッキングデータ通信が状態変更情報を含まない場合は、前記解析トラッキングデータに伝播させるための1つ又は複数の属性を特定する段階と、
    前記1つ又は複数の属性を含む前記解析トラッキングデータを格納する段階とをさらに含む、請求項43に記載の方法。
  45. 第2の解析トラッキングデータ通信を受け取る段階と、
    前記格納された1つ又は複数の属性を前記受け取られた第2の解析トラッキングデータ通信に伝播する段階とをさらに含む、請求項44に記載の方法。
  46. 前記第2の解析トラッキングデータ通信は状態変更属性を含む、請求項45に記載の方法。
  47. 前記状態変更属性は、新規キャンペーン情報又は新規訪問者情報を含む、請求項46に記載の方法。
  48. 前記伝播された1つ又は複数の属性を含む前記第2の解析トラッキングデータを格納する段階さらにを含む、請求項45に記載の方法。
  49. 前記第2の解析トラッキングデータ通信は非永続性記憶装置に格納される、請求項48に記載の方法。
  50. 前記格納された第2の解析トラッキングデータ通信を、所定期間が経過した後に永続性記憶装置にコミットする段階をさらに含む、請求項49に記載の方法。
  51. 前記所定期間が一日を含む、請求項50に記載の方法。
  52. 前記状態変更情報は、新規キャンペーン情報又は新規訪問者情報を含む、請求項43に記載の方法。
  53. 前記特定された1つ又は複数の属性は、キャンペーン情報、一意の訪問者の性別、又はセッション情報を含む、請求項43に記載の方法。
  54. 前記性別は、前記一意の訪問者のユーザプロファイル情報に基づいて与えられる、請求項53に記載の方法。
  55. メモリと、
    1つまたは複数のプロセッサと、
    メモリ内に格納されると共に前記1つ又は複数のプロセッサにより実行されるよう構成された1つ又は複数のモジュールとを含むシステムであって、前記モジュールは、
    解析トラッキングデータ通信を受け取り、前記受け取られた解析トラッキングデータ通信が状態変更情報を含むか否かを前記解析トラッキングデータ通信に含まれた解析トラッキングデータに基づいて判断するよう構成された解析データ伝播モジュールであって、前記解析トラッキングデータは、前記ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータを含み、前記解析データ伝播モジュールは、前記解析トラッキングデータ通信が状態変更情報を含む場合は、後続の解析トラッキングデータに伝播させるための1つ又は複数の属性を特定する、解析データ伝播モジュールと、
    前記状態変更情報を、前記特定された1つ又は複数の属性の1つ又は複数として格納し、前記特定された1つ又は複数の属性を含む前記解析トラッキングデータを格納するよう構成された格納モジュールとを含む、システム。
  56. 前記解析データ伝播モジュールは、
    前記解析トラッキングデータ通信が状態変更情報を含まない場合は、前記解析トラッキングデータに伝播させるための1つ又は複数の属性を特定し、前記1つ又は複数の属性を含む前記解析トラッキングデータを格納するようさらに構成された、請求項55に記載のシステム。
  57. 前記解析データ伝播モジュールは、
    第2の解析トラッキングデータ通信を受け取り、前記格納された1つ又は複数の属性を、前記受け取られた第2の解析トラッキングデータ通信に伝播させるうようさらに構成された、請求項56に記載のシステム。
  58. 前記第2の解析トラッキングデータ通信は状態変更属性を含む、請求項57に記載のシステム。
  59. 前記状態変更属性は、新規キャンペーン情報又は新規訪問者情報を含む、請求項58に記載のシステム。
  60. 前記格納モジュールは、
    前記伝播された1つ又の属性を含む前記第2の解析トラッキングデータ通信を格納するようさらに構成された、請求項57に記載のシステム。
  61. 前記格納モジュールは、
    前記格納された第2の解析トラッキングデータ通信を、所定期間が経過した後に永続性記憶装置にコミットするようさらに構成された、請求項60に記載の方法。
  62. 内部に格納された命令を含む非一時的な機械可読媒体であって、前記命令は、機械により実行されると前記機械に、
    解析トラッキングデータ通信を受け取らせ、
    前記受け取られた解析トラッキングデータ通信が状態変更情報を含むか否かを前記解析トラッキングデータ通信に含まれた解析トラッキングデータに基づいて判断させ、前記解析トラッキングデータは、前記ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータを含み、
    前記解析トラッキングデータ通信が状態変更情報を含む場合は、後続の解析トラッキングデータに伝播させるための1つ又は複数の属性を特定させ、
    前記状態変更情報を、前記特定された1つ又は複数の属性として格納させ、
    前記特定された1つ又は複数の属性を含む前記解析トラッキングデータを格納させる動作を含む諸動作を実行させる、媒体。
  63. 解析トラッキングデータへのクエリに応答して動的に生成されたセッションに関連付けられた集約済み解析トラッキングデータを与える機械実装方法であって、
    一定期間に関連付けられた解析トラッキングデータであって、ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータを含む解析トラッキングデータへのクエリを受け取る段階と、
    前記期間に従って集約するための解析トラッキングデータを特定して、前記集約済みトラッキングデータを動的に生成されたセッションに関連付ける段階と、
    前記クエリに応答して前記動的に生成されたセッションに関連付けられた前記集約済み解析トラッキングデータを与える段階とを含む、方法。
  64. 前記特定された解析トラッキングデータは、1つ又は複数の以前受け取られた解析トラッキングデータ通信に関連付けられる、請求項63に記載の方法。
  65. 前記解析トラッキングデータは、前記以前受け取られた解析トラッキングデータ通信に関連付けられたキャンペーン情報を含む、請求項64に記載の方法。
  66. 前記解析トラッキングデータは、前記ウェブサイト又はアプリケーションに関連付けられたハイパーテキスト転送プロトコル(HTTP)要求に含まれたウェブサイト又はアプリケーショントラフィックデータを含む、請求項64に記載の方法。
  67. 前記の以前受け取られた解析トラッキングデータ通信それぞれは、行為のタイムスタンプをさらに含む、請求項64に記載の方法。
  68. 前記以前受け取られた解析トラッキングデータ通信それぞれの前記行為のタイムスタンプに基づいて、前記期間に入る前記以前受け取られた解析トラッキングデータ通信を集約する段階さらに含む、請求項67に記載の方法。
  69. 前記以前受け取られた解析トラッキングデータ通信を集約する前記段階は、遅いヒットで受け取られた新規キャンペーン情報を含む、請求項68に記載の方法。
  70. 前記所定期間が一日を含む、請求項63に記載の方法。
  71. 前記動的に生成されたセッションは前記クエリに応答して自動的に生成される、請求項63に記載の方法。
  72. 前記動的に生成されたセッションは前記クエリに応答するために使用される一時セッションを含む、請求項71に記載の方法。
  73. メモリと、
    1つまたは複数のプロセッサと、
    メモリ内に格納されると共に前記1つ又は複数のプロセッサにより実行されるよう構成された1つ又は複数のモジュールとを含むシステムであって、前記モジュールは、
    解析データクエリモジュールを含み、前記解析データクエリモジュールは、一定期間に関連付けられた解析トラッキングデータであって、ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータを含む解析トラッキングデータへのクエリを受け取り、前記期間に従って集約するための解析トラッキングデータを特定して前記集約済みトラッキングデータを動的に生成されたセッションに関連付け、前記クエリに応答して、前記動的に生成されたセッションに関連付けられた前記集約済み解析トラッキングデータを与えるよう構成された、システム。
  74. 前記特定された解析トラッキングデータは、1つ又は複数の以前受け取られた解析トラッキングデータ通信に関連付けられる、請求項73に記載のシステム。
  75. 前記解析トラッキングデータは、前記以前受け取られた解析トラッキングデータ通信に関連付けられたキャンペーン情報を含む、請求項74に記載のシステム。
  76. 前記解析トラッキングデータは、前記ウェブサイト又はアプリケーションに関連付けられたハイパーテキスト転送プロトコル(HTTP)要求に含まれたウェブサイト又はアプリケーショントラフィックデータを含む、請求項74に記載のシステム。
  77. 前記の以前受け取られた解析トラッキングデータ通信のそれぞれは、行為のタイムスタンプをさらに含む、請求項74に記載の方法。
  78. 前記解析データクエリモジュールは、前記の以前受け取られた解析トラッキングデータ通信それぞれの前記行為のタイムスタンプに基づいて前記期間に入る前記以前受け取られた解析トラッキングデータ通信を集約するようさらに構成された、請求項77に記載のシステム。
  79. 前記以前受け取られた解析トラッキングデータ通信を集約する前記段階は、遅いヒットで受け取られた新規キャンペーン情報を含む、請求項78に記載のシステム。
  80. 前記所定期間が一日を含む、請求項73に記載のシステム。
  81. 前記動的に生成されたセッションは前記クエリに応答して自動的に生成される、請求項73に記載のシステム。
  82. 内部に格納された命令を含む非一時的な機械可読媒体であって、前記命令は、機械により実行されると前記機械に、
    一定期間に関連付けられた解析トラッキングデータであって、ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータを含む解析トラッキングデータへのクエリを受け取らせ、
    前記期間に従って集約するための解析トラッキングデータを特定して、前記集約済みトラッキングデータを動的に生成されたセッションに関連付けさせ、
    前記クエリに応答して前記動的に生成されたセッションに関連付けられた前記集約済み解析トラッキングデータを与えさせる動作を含む諸動作を実行させる、媒体。
  83. 遅い及び/又は順狂い解析トラッキングデータ通信を処理するための機械実装方法であって、
    ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータを含む解析トラッキングデータを含む解析トラッキングデータ通信を受け取る段階と、
    前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれたタイムスタンプを特定する段階と、
    新規の状態変更情報が、前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれているか否かを判断する段階と、
    前記判断された新規の状態変更情報に基づいてセッションを特定する段階と、
    新規の状態変更情報が前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれている場合、前記特定されたセッションにおける前記判断された新規の状態変更情報に関連付けるための、前記解析トラッキングデータ通信に含まれた他の解析トラッキングデータを特定する段階であって、前記他の解析トラッキングデータは1つ又は複数の以前受け取られた解析トラッキングデータ通信に関連付けられた、特定する段階と、
    前記解析トラッキングデータと前記新規キャンペーン情報に関連付けられた前記他の解析トラッキングデータとを格納する段階とを含む、方法。
  84. 新規の状態変更情報が前記解析トラッキングデータに含まれていない場合は、前記受け取られた解析トラッキングデータ通信の前記タイムスタンプに基づいてセッションを特定する段階と、
    前記解析トラッキングデータを前記特定されたセッションに関連付ける段階と、
    前記特定されたセッションに関連付けられた前記解析トラッキングデータを格納する段階とをさらに含み、前記特定されたセッションは、以前受け取られた解析トラッキングデータ通信に関連付けられた他の解析トラッキングデータを含む、請求項83に記載の方法。
  85. 前記他の解析トラッキングデータは、ユーザ情報、性別情報、位置、タイムスタンプ情報、又はセッション情報を含む、請求項83に記載の方法。
  86. 前記新規の状態変更情報は、新規キャンペーン情報、性別情報、又はタイムスタンプ情報を含む、請求項83に記載の方法。
  87. 前記新規の状態変更情報に関連付けるための他の解析トラッキングデータを特定する前記段階は、
    新規セッションに含めるための前記1つ又は複数の以前受け取られた解析トラッキングデータ通信の部分集合を、前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれた前記タイムスタンプと、前記部分集合の各以前受け取られた解析トラッキングデータ通信のそれぞれのタイムスタンプと、に基づいて識別する段階をさらに含む、請求項83に記載の方法。
  88. 前記1つ又は複数の以前受け取られた解析トラッキングデータ通信の前記部分集合は、以前は前記新規セッションとは異なるセッションに含まれていた、請求項87に記載の方法。
  89. 前記新規セッションに含めるための前記1つ又は複数の以前受け取られた解析トラッキングデータ通信の前記部分集合を識別する前記段階は、前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれた前記タイムスタンプと、前記部分集合の各以前受け取られた解析トラッキングデータ通信のそれぞれのタイムスタンプとが、セッションタイムアウト期間内であるか否かを判断する段階をさらに含む、請求項87に記載の方法。
  90. 前記セッションタイムアウト期間が所定の分数を含む、請求項89に記載の方法。
  91. 第2新規セッションに含めるための前記1つ又は複数の以前受け取られた解析トラッキングデータ通信の第2部分集合を、前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれた前記タイムスタンプと、前記第2部分集合の各以前受け取られた解析トラッキングデータ通信のそれぞれのタイムスタンプと、に基づいて識別する段階をさらに含む、請求項87に記載の方法。
  92. 前記新規セッションと前記第2新規セッションとは異なるセッションである、請求項91に記載の方法。
  93. 前記第2新規セッションは前記新規セッションの後続セッションである、請求項91に記載の方法。
  94. 前記新規の状態変更情報は、前記新規セッションから前記第2新規セッションに伝播する、請求項91に記載の方法。
  95. 前記特定されたセッションは既存のセッションである、請求項84に記載の方法。
  96. メモリと、
    1つまたは複数のプロセッサと、
    メモリ内に格納されると共に前記1つ又は複数のプロセッサにより実行されるよう構成された1つ又は複数のモジュールとを含むシステムであって、前記モジュールは、
    ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータを含む解析トラッキングデータを含む解析トラッキングデータ通信を受け取り、前記受け取られた解析トラッキングデータ通信から前記解析トラッキングデータに含まれたタイムスタンプを特定し、新規の状態変更情報が、前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれているか否かを判断し、前記判断された新規の状態変更情報に基づいてセッションを特定し、新規の状態変更情報が前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれている場合、前記特定されたセッションにおける前記判断された新規の状態変更情報に関連付けるための、前記解析トラッキングデータ通信に含まれた他の解析トラッキングデータを特定するよう構成された動的セッションモジュールを含み、前記他の解析トラッキングデータは1つ又は複数の以前受け取られた解析トラッキングデータ通信に関連付けられており、前記動的セッションモジュールは、前記解析トラッキングデータ及び前記新規キャンペーン情報に関連付けられた前記他の解析トラッキングデータを格納するようさらに構成された、システム。
  97. 前記動的セッションモジュールは、新規の状態変更情報が前記解析トラッキングデータに含まれていない場合は、前記受け取られた解析トラッキングデータ通信の前記タイムスタンプに基づいてセッションを特定し、
    前記解析トラッキングデータを前記特定されたセッションに関連付け、
    前記特定されたセッションに関連付けられた前記解析トラッキングデータを格納するようさらに構成され、前記特定されたセッションは、以前受け取られた解析トラッキングデータ通信に関連付けられた他の解析トラッキングデータを含む、請求項96に記載のシステム。
  98. 前記他の解析トラッキングデータは、ユーザ情報、性別情報、位置、タイムスタンプ情報、又はセッション情報を含む、請求項96に記載のシステム。
  99. 前記新規の状態変更情報は、新規キャンペーン情報、性別情報、又はタイムスタンプ情報を含む、請求項96に記載のシステム。
  100. 前記新規の状態変更情報に関連付けるための他の解析トラッキングデータの前記特定は、
    新規セッションに含めるための前記1つ又は複数の以前受け取られた解析トラッキングデータ通信の部分集合を、前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれた前記タイムスタンプと、前記部分集合の各以前受け取られた解析トラッキングデータ通信のそれぞれのタイムスタンプと、に基づいて識別することをさらに含む、請求項96に記載のシステム。
  101. 前記1つ又は複数の以前受け取られた解析トラッキングデータ通信の前記部分集合は、以前は前記新規セッションとは異なるセッションに含まれていた、請求項100に記載のシステム。
  102. 前記新規セッションに含めるための前記1つ又は複数の以前受け取られた解析トラッキングデータ通信の前記部分集合の前記識別は、前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれた前記タイムスタンプと、前記部分集合の各以前受け取られた解析トラッキングデータ通信のそれぞれのタイムスタンプとが、セッションタイムアウト期間内であるか否かを判断することをさらに含む、請求項100に記載のシステム。
  103. 前記動的セッションモジュールは、第2新規セッションに含めるための前記1つ又は複数の以前受け取られた解析トラッキングデータ通信の第2部分集合を、前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれた前記タイムスタンプと、前記第2部分集合の各以前受け取られた解析トラッキングデータ通信のそれぞれのタイムスタンプと、に基づいて識別することをさらに含む、請求項100に記載のシステム。
  104. 内部に格納された命令を含む非一時的な機械可読媒体であって、前記命令は、機械により実行されると前記機械に、
    ウェブサイト又はアプリケーションに関連付けられた行為をトラッキングするためのデータを含む解析トラッキングデータを含む解析トラッキングデータ通信を受け取らせ、
    前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれたタイムスタンプを特定させ、
    新規の状態変更情報が、前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれているか否かを判断させ、
    前記判断された新規の状態変更情報に基づいてセッションを特定させ、
    新規の状態変更情報が前記受け取られた解析トラッキングデータ通信からの前記解析トラッキングデータに含まれている場合、前記特定されたセッションにおける前記判断された新規の状態変更情報に関連付けるための、前記解析トラッキングデータ通信に含まれた他の解析トラッキングデータを特定させ、前記他の解析トラッキングデータは1つ又は複数の以前受け取られた解析トラッキングデータ通信に関連付けられ、
    前記解析トラッキングデータと前記新規キャンペーン情報に関連付けられた前記他の解析トラッキングデータとを格納させる動作を含む諸動作を実行させる、媒体。
JP2015510306A 2012-05-02 2013-04-17 サーバサイドセッション化を介した集中解析トラッキング Pending JP2015516095A (ja)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
US201261641850P 2012-05-02 2012-05-02
US61/641,850 2012-05-02
US13/841,586 US9946746B2 (en) 2012-05-02 2013-03-15 Persist and process analytics data dimensions for server-side sessionization
US13/841,719 2013-03-15
US13/841,781 US20130297778A1 (en) 2012-05-02 2013-03-15 System for centralized analytics tracking via server-side sessionization
US13/841,781 2013-03-15
US13/841,467 2013-03-15
US13/841,719 US20130297777A1 (en) 2012-05-02 2013-03-15 Server-side configuration driven sessionization to provide consistent business logic
US13/841,685 2013-03-15
US13/841,586 2013-03-15
US13/841,685 US20130297776A1 (en) 2012-05-02 2013-03-15 Techniques for delay processing to support offline hits
US13/841,467 US9305053B2 (en) 2012-05-02 2013-03-15 Dynamic sessionization of analytics data
PCT/US2013/036996 WO2013165693A1 (en) 2012-05-02 2013-04-17 System for centralized analytics tracking via server-side sessionization

Publications (1)

Publication Number Publication Date
JP2015516095A true JP2015516095A (ja) 2015-06-04

Family

ID=49513454

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015510306A Pending JP2015516095A (ja) 2012-05-02 2013-04-17 サーバサイドセッション化を介した集中解析トラッキング

Country Status (4)

Country Link
US (5) US20130297778A1 (ja)
EP (2) EP3147854A1 (ja)
JP (1) JP2015516095A (ja)
WO (1) WO2013165693A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111108482A (zh) * 2018-04-30 2020-05-05 谷歌有限责任公司 优化网络利用
US11627201B2 (en) 2018-04-30 2023-04-11 Google Llc Optimizing network utilization

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9049076B1 (en) * 2013-01-07 2015-06-02 Google Inc. Content selection with privacy features
US9412115B2 (en) 2013-03-14 2016-08-09 Observepoint, Inc. Configuring tags to monitor other webpage tags in a tag management system
US9418170B2 (en) 2013-03-14 2016-08-16 Observepoint, Inc. Creating rules for use in third-party tag management systems
US9817911B2 (en) 2013-05-10 2017-11-14 Excalibur Ip, Llc Method and system for displaying content relating to a subject matter of a displayed media program
US10083459B2 (en) * 2014-02-11 2018-09-25 The Nielsen Company (Us), Llc Methods and apparatus to generate a media rank
WO2015184579A1 (en) * 2014-06-03 2015-12-10 Yahoo! Inc Determining traffic quality using event-based traffic scoring
US9842133B2 (en) 2014-09-12 2017-12-12 Observepoint, Inc. Auditing of web-based video
US9357366B2 (en) 2014-09-12 2016-05-31 Observepoint, Inc. Auditing of mobile applications
US9363311B1 (en) 2014-12-05 2016-06-07 Tealium Inc. Delivery of instructions in host applications
US9342617B1 (en) 2015-05-19 2016-05-17 Parrable, Inc. Unique identifiers for browsers
US10536539B2 (en) * 2015-05-20 2020-01-14 Oath Inc. Data sessionization
WO2017078686A1 (en) 2015-11-03 2017-05-11 Observepoint, Inc. Translation of natural language into user interface actions
CN106899426B (zh) * 2016-06-30 2020-07-28 阿里巴巴集团控股有限公司 用户访问数量统计方法及其系统
US10721152B2 (en) * 2017-04-27 2020-07-21 Salesforce.Com, Inc. Automated analysis and recommendations for highly performant single page web applications
US11080657B2 (en) * 2018-09-17 2021-08-03 Servicenow, Inc. Systems and methods for generating campaign analytics
US11729247B2 (en) * 2020-09-24 2023-08-15 Capital One Services, Llc Systems and methods for decentralized detection of software platforms operating on website pages

Family Cites Families (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7610289B2 (en) * 2000-10-04 2009-10-27 Google Inc. System and method for monitoring and analyzing internet traffic
GB0025299D0 (en) * 2000-10-13 2000-11-29 Ibm Request tracking for analysis of website navigation
US6782350B1 (en) 2001-04-27 2004-08-24 Blazent, Inc. Method and apparatus for managing resources
US7155722B1 (en) * 2001-07-10 2006-12-26 Cisco Technology, Inc. System and method for process load balancing in a multi-processor environment
US7089304B2 (en) 2001-08-30 2006-08-08 Microsoft Corporation Metered Internet usage
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
US7185085B2 (en) 2002-02-27 2007-02-27 Webtrends, Inc. On-line web traffic sampling
US20030208594A1 (en) 2002-05-06 2003-11-06 Urchin Software Corporation. System and method for tracking unique visitors to a website
US10205623B2 (en) 2002-06-28 2019-02-12 Adobe Systems Incorporated Custom event and attribute generation for use in website traffic data collection
US7526521B2 (en) 2003-07-11 2009-04-28 At&T Intellectual Property I, L.P. Multi-user database system and method for resource usage tracking
GB0514325D0 (en) * 2005-07-12 2005-08-17 Search Works International The Method and system for obtaining information
US9558498B2 (en) * 2005-07-29 2017-01-31 Excalibur Ip, Llc System and method for advertisement management
US7548929B2 (en) * 2005-07-29 2009-06-16 Yahoo! Inc. System and method for determining semantically related terms
US7962616B2 (en) * 2005-08-11 2011-06-14 Micro Focus (Us), Inc. Real-time activity monitoring and reporting
US7783719B2 (en) 2006-05-04 2010-08-24 Jonathan Bernadotte Miller Method of and system for crediting an online publisher in an affiliate marketing relationship
US10110687B2 (en) * 2006-10-06 2018-10-23 International Business Machines Corporation Session based web usage reporter
US8396834B2 (en) * 2006-10-10 2013-03-12 International Business Machines Corporation Real time web usage reporter using RAM
US20080148398A1 (en) 2006-10-31 2008-06-19 Derek John Mezack System and Method for Definition and Automated Analysis of Computer Security Threat Models
WO2008086442A2 (en) * 2007-01-09 2008-07-17 Touchcommerce,Inc. Methods and systems for measuring online chat performance
US20080294996A1 (en) * 2007-01-31 2008-11-27 Herbert Dennis Hunt Customized retailer portal within an analytic platform
US8949340B2 (en) 2007-02-05 2015-02-03 Boadin Technology, LLC Systems and methods for organizing content for mobile media services
US20080208820A1 (en) 2007-02-28 2008-08-28 Psydex Corporation Systems and methods for performing semantic analysis of information over time and space
US8874563B1 (en) * 2007-03-07 2014-10-28 Comscore, Inc. Detecting content and user response to content
US20080270151A1 (en) 2007-04-26 2008-10-30 Bd Metrics Method and system for developing an audience of buyers and obtaining their behavioral preferences to promote commerce on a communication network
US8352318B2 (en) 2007-05-29 2013-01-08 Digital River, Inc. Exclusivity in internet marketing campaigns system and method
JP2009094658A (ja) 2007-10-05 2009-04-30 Hitachi Ltd 関連情報提供装置、及び関連情報提供方法
US20090157442A1 (en) * 2007-12-13 2009-06-18 Yahoo! Inc. System and Method for Improving the Performance of Digital Advertisements
US9202221B2 (en) 2008-09-05 2015-12-01 Microsoft Technology Licensing, Llc Content recommendations based on browsing information
US7814149B1 (en) * 2008-09-29 2010-10-12 Symantec Operating Corporation Client side data deduplication
US8515810B2 (en) 2008-10-24 2013-08-20 Cardlytics, Inc. System and methods for delivering targeted marketing offers to consumers via an online portal
US9305105B2 (en) * 2009-05-26 2016-04-05 Google Inc. System and method for aggregating analytics data
US8549019B2 (en) * 2009-05-26 2013-10-01 Google Inc. Dynamically generating aggregate tables
US8234370B2 (en) * 2009-06-30 2012-07-31 International Business Machines Corporation Determining web analytics information
WO2011041465A1 (en) 2009-09-30 2011-04-07 Tracking.Net Enhanced website tracking system and method
US8379917B2 (en) * 2009-10-02 2013-02-19 DigitalOptics Corporation Europe Limited Face recognition performance using additional image features
US20110112862A1 (en) * 2009-11-06 2011-05-12 Yi-Cheng Yu System and Method for Securely Managing and Storing Individually Identifiable Information in Web-Based and Alliance-Based Networks
CN102884530A (zh) 2010-05-16 2013-01-16 捷通国际有限公司 用于包括冲击分析和影响跟踪的数据收集、跟踪和分析
US8688806B2 (en) * 2010-06-11 2014-04-01 Tellabs Operations, Inc. Procedure, apparatus, system, and computer program for collecting data used for analytics
US20120046996A1 (en) * 2010-08-17 2012-02-23 Vishal Shah Unified data management platform
US20120203639A1 (en) * 2011-02-08 2012-08-09 Cbs Interactive, Inc. Targeting offers to users of a web site
US20120240019A1 (en) 2011-03-17 2012-09-20 Ebay Inc. Method and system for tracking web link usage
US20120303552A1 (en) 2011-05-27 2012-11-29 Cbs Interactive Inc. Techniques to track users and user metrics for a website
US20130159081A1 (en) * 2011-07-08 2013-06-20 Vishwanath Shastry Bidirectional bandwidth reducing notifications and targeted incentive platform apparatuses, methods and systems
US9979500B2 (en) 2011-09-02 2018-05-22 Verizon Patent And Licensing Inc. Dynamic user interface rendering based on usage analytics data in a media content distribution system
US10719541B2 (en) 2011-09-13 2020-07-21 Stefano Foresti Method and system to capture and find information and relationships
US10217117B2 (en) 2011-09-15 2019-02-26 Stephan HEATH System and method for social networking interactions using online consumer browsing behavior, buying patterns, advertisements and affiliate advertising, for promotions, online coupons, mobile services, products, goods and services, entertainment and auctions, with geospatial mapping technology
US20130085803A1 (en) * 2011-10-03 2013-04-04 Adtrak360 Brand analysis
US10354293B2 (en) * 2011-10-12 2019-07-16 AppsFlyer Ltd. Events tracking technology
US9659105B2 (en) 2012-03-15 2017-05-23 The Nielsen Company (Us), Llc Methods and apparatus to track web browsing sessions
US10616782B2 (en) * 2012-03-29 2020-04-07 Mgage, Llc Cross-channel user tracking systems, methods and devices

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111108482A (zh) * 2018-04-30 2020-05-05 谷歌有限责任公司 优化网络利用
JP2021503110A (ja) * 2018-04-30 2021-02-04 グーグル エルエルシーGoogle LLC ネットワーク利用の最適化
JP7048729B2 (ja) 2018-04-30 2022-04-05 グーグル エルエルシー ネットワーク利用の最適化
US11356517B2 (en) 2018-04-30 2022-06-07 Google Llc Optimizing network utilization
US11627201B2 (en) 2018-04-30 2023-04-11 Google Llc Optimizing network utilization
CN111108482B (zh) * 2018-04-30 2023-11-21 谷歌有限责任公司 优化网络利用

Also Published As

Publication number Publication date
EP2845122A4 (en) 2016-01-20
US20130297647A1 (en) 2013-11-07
US20130297775A1 (en) 2013-11-07
EP3147854A1 (en) 2017-03-29
US20130297777A1 (en) 2013-11-07
US9946746B2 (en) 2018-04-17
EP2845122A1 (en) 2015-03-11
US20130297776A1 (en) 2013-11-07
WO2013165693A1 (en) 2013-11-07
US20130297778A1 (en) 2013-11-07
US9305053B2 (en) 2016-04-05

Similar Documents

Publication Publication Date Title
JP2015516095A (ja) サーバサイドセッション化を介した集中解析トラッキング
US11683221B1 (en) Automatic generation of template for provisioning services in a hosted computing environment
US20200328932A1 (en) Timestamp-based matching of identifiers
US8452837B2 (en) Data delivery
US8606825B1 (en) Query response streams based on dynamic query library
US8880996B1 (en) System for reconfiguring a web site or web page based on real-time analytics data
US9628355B1 (en) System for validating site configuration based on real-time analytics data
US9218332B2 (en) Method and system for auto-populating electronic forms
US8775556B1 (en) Automated segmentation and processing of web site traffic data over a rolling window of time
US20130262653A1 (en) Construction Of Social Structures
US8869036B1 (en) System for troubleshooting site configuration based on real-time analytics data
US9390178B2 (en) Use of collected data for web API ecosystem analytics
US8782166B1 (en) System for generating a site pathing report based on real-time analytics data
US20180329799A1 (en) Analyzing analytic element network traffic
US11200287B2 (en) Global address list
US20230198743A1 (en) Blockchain ledger growth management
US8775611B1 (en) System for displaying a web page with real time analytics data overlay
US8606907B1 (en) Multi-tiered system for receiving and reporting web site traffic data
US9065859B1 (en) Server side disambiguation of ambiguous statistics
WO2018218058A1 (en) Systems and methods for providing real-time discrepancies between disparate execution platforms

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20151007

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20151019