Conversion path performance measures and reports
First Claim
1. A method performed by at least one data processing apparatus, the method comprising:
- processing one or more user interaction logs to obtain respective user interaction data for one or more user interactions;
updating a first distributed data table using the respective user interaction data for the user interactions, the first distributed data table including rows indexed and sorted by strings, wherein each string represents a pair of identifiers including an advertiser identifier and a user identifier, the pair of identifiers being associated with stored user interactions in the first distributed data table, each row including a plurality of ordered cells, each cell corresponding to a respective user interaction type and containing the user interaction data for stored user interactions of said user interaction type, and the user interaction data for each user interaction being stored with a respective timestamp associated with the user interaction;
querying the first distributed data table to identify conversions that have occurred within a specified time window based on the user interaction types and timestamps of the stored user interactions;
in response to the query, receiving, for each identified conversion, the user interaction data of the conversion and respective user interaction data of all stored user interactions associated with a same advertiser identifier and user identifier pair as the conversion and having occurred within a specified time period prior to the identified conversion;
creating a new row for each identified conversion in a second distributed data table, the new row being indexed with a unique conversion identifier and including the received user interaction data for the identified conversion, wherein each row of the second distributed data table includes a plurality of ordered cells each corresponding to a respective parameter that is relevant to an advertiser'"'"'s query regarding the user interactions stored in the row;
querying the second distributed table to obtain a subset of the user interaction data stored in one or more rows of the second distributed table;
aggregating, for rows associated with a same advertiser identifier, stored values for a specified parameter; and
creating a new row in a third distributed data table, wherein rows in the third distributed data table are indexed by the advertiser identifier and the specified parameter.
2 Assignments
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for providing conversion path performance measures and reports. In one aspect, user interaction data are obtained, were the user interaction data specify user interactions for a plurality of conversions. User interactions that are associated with each conversion are selected from the user interaction data, where the associated user interactions for each conversion are user interactions with a converting user during the conversion cycle for the conversion. Using the user interaction data for the selected user interactions, a quantity of user interactions that are associated with each conversion and occurred during the conversion cycle for the conversion are determined. In turn, conversion path performance measures are computed and reports specifying the conversion path performance measures are generated.
-
Citations
14 Claims
-
1. A method performed by at least one data processing apparatus, the method comprising:
-
processing one or more user interaction logs to obtain respective user interaction data for one or more user interactions; updating a first distributed data table using the respective user interaction data for the user interactions, the first distributed data table including rows indexed and sorted by strings, wherein each string represents a pair of identifiers including an advertiser identifier and a user identifier, the pair of identifiers being associated with stored user interactions in the first distributed data table, each row including a plurality of ordered cells, each cell corresponding to a respective user interaction type and containing the user interaction data for stored user interactions of said user interaction type, and the user interaction data for each user interaction being stored with a respective timestamp associated with the user interaction; querying the first distributed data table to identify conversions that have occurred within a specified time window based on the user interaction types and timestamps of the stored user interactions; in response to the query, receiving, for each identified conversion, the user interaction data of the conversion and respective user interaction data of all stored user interactions associated with a same advertiser identifier and user identifier pair as the conversion and having occurred within a specified time period prior to the identified conversion; creating a new row for each identified conversion in a second distributed data table, the new row being indexed with a unique conversion identifier and including the received user interaction data for the identified conversion, wherein each row of the second distributed data table includes a plurality of ordered cells each corresponding to a respective parameter that is relevant to an advertiser'"'"'s query regarding the user interactions stored in the row; querying the second distributed table to obtain a subset of the user interaction data stored in one or more rows of the second distributed table; aggregating, for rows associated with a same advertiser identifier, stored values for a specified parameter; and creating a new row in a third distributed data table, wherein rows in the third distributed data table are indexed by the advertiser identifier and the specified parameter. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system comprising:
-
a data store storing one or more user interaction logs that include user interaction data for one or more user interactions; and one or more computers configured to interact with the data store and further configured to; update a first distributed data table using the respective user interaction data for the user interactions, the first distributed data table including rows indexed and sorted by strings, wherein each string represents a pair of identifiers including an advertiser identifier and a user identifier, the pair of identifiers being associated with stored user interactions in the first distributed data table, each row including a plurality of ordered cells, each cell corresponding to a respective user interaction type and containing the user interaction data for stored user interactions of said user interaction type, and the user interaction data for each user interaction being stored with a respective timestamp associated with the user interaction; query the first distributed data table to identify conversions that have occurred within a specified time window based on the user interaction types and timestamps of the stored user interactions; in response to the query, receiving, for each identified conversion, the user interaction data of the conversion and respective user interaction data of all stored user interactions associated with a same advertiser identifier and user identifier pair as the conversion and having occurred within a specified time period prior to the identified conversion; create a new row for each identified conversion in a second distributed data table, the new row being indexed with a unique conversion identifier and including the received user interaction data for the identified conversion, wherein each row of the second distributed data table includes a plurality of ordered cells each corresponding to a respective parameter that is relevant to an advertiser'"'"'s query regarding the user interactions stored in the row; querying the second distributed table to obtain a subset of the user interaction data stored in one or more rows of the second distributed table; aggregating, for rows associated with a same advertiser identifier, stored values for a specified parameter; and creating a new row in a third distributed data table, wherein rows in the third distributed data table are indexed by the advertiser identifier and the specified parameter. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A non-transitory computer storage medium encoded with a computer program, the program comprising instructions that when executed by data processing apparatus cause the data processing apparatus to perform operations comprising:
-
processing one or more user interaction logs to obtain respective user interaction data for one or more user interactions; updating a first distributed data table using the respective user interaction data for the user interactions, the first distributed data table including rows indexed and sorted by strings, wherein each string represents a pair of identifiers including an advertiser identifier and a user identifier, the pair of identifiers being associated with stored user interactions in the first distributed data table, each row including a plurality of ordered cells, each cell corresponding to a respective user interaction type and containing the user interaction data for stored user interactions of said user interaction type, and the user interaction data for each user interaction being stored with a respective timestamp associated with the user interaction; querying the first distributed data table to identify conversions that have occurred within a specified time window based on the user interaction types and timestamps of the stored user interactions; in response to the query, receiving, for each identified conversion, the user interaction data of the conversion and respective user interaction data of all stored user interactions associated with a same advertiser identifier and user identifier pair as the conversion and having occurred within a specified time period prior to the identified conversion; creating a new row for each identified conversion in a second distributed data table, the new row being indexed with a unique conversion identifier and including the received user interaction data for the identified conversion, wherein each row of the second distributed data table includes a plurality of ordered cells each corresponding to a respective parameter that is relevant to an advertiser'"'"'s query regarding the user interactions stored in the row; querying the second distributed table to obtain a subset of the user interaction data stored in one or more rows of the second distributed table; aggregating, for rows associated with a same advertiser identifier, stored values for a specified parameter; and creating a new row in a third distributed data table, wherein rows in the third distributed data table are indexed by the advertiser identifier and the specified parameter. - View Dependent Claims (12, 13, 14)
-
Specification