Tracking interaction with sponsored and unsponsored content
Abstract
Generally discussed herein are methods, systems, and apparatuses for tracking user interaction with sponsored and/or unsponsored content. A method can include monitoring a first database on which data is stored regarding sponsored content billing and campaign performance monitoring for changes to the data of the first database, the first database partitioned into a plurality of partitions, the advertiser identification uniquely indicating an entity that initiated an advertising campaign on the website, aggregating changes to the data in multiple partitions of the plurality of partitions into a single buffer of a plurality of buffers, updating a plurality of cache tables based on the aggregated changes to the data, the cache tables including hashmaps of campaign-level stats data, content-level stats data, campaign-level performance data of the campaign, and content-level performance data, transferring the data in the cache tables to a second database that stores data regarding billing and content performance monitoring.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A non-transitory machine readable medium comprising instructions stored thereon which, when executed by a machine, cause the machine to perform operations for tracking user interaction with revenue generating content of a website, the operations comprising:
monitoring a first database on which data is stored regarding sponsored content billing and campaign performance monitoring for changes to the data of the first database, the first database partitioned into a plurality of partitions, each of the plurality of partitions corresponding to a value of a plurality of values to which an advertiser identification of a plurality of advertiser identifications hashes using a hash function, the advertiser identification uniquely indicating an entity that initiated an advertising campaign on the website; aggregating changes to the data in multiple partitions of the plurality of partitions into a single buffer of a plurality of buffers; updating a plurality of cache tables based on the aggregated changes to the data, the cache tables including hashmaps of campaign-level stats data, content-level stats data, campaign-level performance data of the campaign, and content-level performance data; transferring the data in the cache tables to a second database that stores data regarding sponsored content billing and performance monitoring; and presenting a bill to the advertiser associated with the advertiser identification using the transferred data.
2 . The machine-readable medium of claim 1 , wherein the campaign-level stats data include data identifying a campaign identification uniquely identifying a content campaign, a current day and a budget used for the campaign for the day, a current month and a budget used for the campaign for the month, a lifetime budget used for the campaign, a daily budget allowed for the campaign, a monthly budget allowed for the campaign, and a lifetime budget allowed for the campaign.
3 . The machine-readable medium of claim 2 , further comprising instructions which, when executed by the machine, cause the machine to perform operations comprising:
determining a campaign-level click through rate of the campaign based on data in the campaign-level stats cache table; comparing the determined click through rate to a current click through rate in the campaign-level performance data cache table; and in response to determining the determined click through rate is a specified percentage greater than or lesser than the current click through rate, updating the campaign-level performance data cache table to include the determined click through rate and an updated urgency and at least one of impressions per day and clicks per day for the campaign.
4 . The machine-readable medium of claim 3 , further comprising instructions which, when executed by the machine, cause the machine to perform operations comprising:
in response to determining the determined click through rate is a specified percentage greater than or lesser than the current click through rate, calculating a content-level click through rate, urgency, and impressions or clicks per day for each advertisement in the associated campaign based on the data in the content-level stats and performance data cache tables and updating the content-level performance data cache table to include the calculated click through rate, urgency, and impression or clicks per day for each advertisement.
5 . The machine-readable medium of claim 2 , wherein the advertiser-level data includes data identifying an advertiser identification uniquely indicating an advertiser associated with the campaign, a current day and a budget used for the advertiser for the day, a current month and a budget used for the advertiser for the month, a lifetime budget used for advertiser, a daily budget allowed for the advertiser, a monthly budget allowed for the advertiser, and a lifetime budget allowed for the advertiser.
6 . The machine-readable medium of claim 1 , further comprising instructions which, when executed by the machine, cause the machine to perform operation comprising updating a third database that includes data detailing content and a number of times the user has been presented the content in a specified time interval to reflect that the content was presented to the user and the time at which the content was presented to the user.
7 . The machine-readable medium of claim 6 , wherein the instructions for updating the third database include instructions for performing an increment operation to increment the number of times the user has been presented the content and receiving a value indicating the number of times the user has been presented the content, and the instructions further comprise instructions which, when executed by the machine, cause the machine to perform operations comprising comparing the value to a threshold value and refraining from serving that content to the user if the value is greater than or equal to the threshold value.
8 . The machine-readable medium of claim 1 , wherein:
the content-level stats data cache table includes a content identification uniquely identifying an associated item of content and a content last update time, the instructions further comprise instructions which, when executed by the machine, cause the machine to perform operation comprising:
comparing a content last update time in the aggregated changes to the content last update time in the content-level data cache table, and
in response to determining the last update time in the aggregated changes is more recent than the content last update time in the content-level data cache table, updating the content-level cache table to indicate the more recent content last update time.
9 . The machine-readable medium of claim 8 , further comprising instructions which, when executed by the machine, cause the machine to perform operations comprising:
in response to determining the last update time in the aggregated changes is more recent than the content last update time in the content-level stats data cache table, clearing an entry for the ad in the content-level stats cache table and marking the campaign associated with serving the content for recalculation in the campaign-level performance data cache table.
10 . The machine-readable medium of claim 1 , further comprising instructions which, when executed by the machine, cause the machine to perform operation comprising:
determining whether the aggregated data indicates content has went from being inactive in a campaign to being active in a campaign, and in response to determining the content has become active in the campaign, clearing an entry of the content-level stats cache table associated with the content, then updating the content-level stats cache table to indicate the content has become active, other changes to the content stats in the aggregated data, and marking the campaign associated with serving the content for recalculation in the campaign-level performance data cache table.
11 . A method for tracking user interaction with content of a website, the method comprising operations performed using one or more hardware processors, the operations comprising:
monitoring a first database on which data is stored regarding sponsored content billing and campaign performance monitoring for changes to the data of the first database, the first database partitioned into a plurality of partitions, each of the plurality of partitions corresponding to a value of a plurality of values to which an advertiser identification of a plurality of advertiser identifications hashes using a hash function, the advertiser identification uniquely indicating an entity that initiated an advertising campaign on the website; aggregating changes to the data in multiple partitions of the plurality of partitions into a single buffer of a plurality of buffers; updating a plurality of cache tables based on the aggregated changes to the data, the cache tables including hashmaps of campaign-level stats data, content-level stats data, data center-level stats data for a data center in which the cache tables reside, campaign-level performance data of the campaign, advertiser-level stats data, and content-level stats data; transferring the data in the cache tables to a second database that stores data regarding sponsored content billing and performance monitoring; and creating a bill to the advertiser associated with the advertiser identification using the transferred data.
12 . The method of claim 11 , wherein the campaign-level stats data include data identifying a campaign identification uniquely identifying a content campaign, a current day and a budget used for the campaign for the day, a current month and a budget used for the campaign for the month, a lifetime budget used for the campaign, a daily budget allowed for the campaign, a monthly budget allowed for the campaign, and a lifetime budget allowed for the campaign.
13 . The method of claim 12 , wherein the operations further comprise:
determining a campaign-level click through rate of the campaign based on data in the campaign-level stats cache table; comparing the determined click through rate to a current click through rate in the campaign-level performance data cache table; and in response to determining the determined click through rate is a specified percentage greater than or lesser than the current click through rate, updating the campaign-level performance data cache table to include the determined click through rate and an updated urgency and impression or clicks per day for the campaign.
14 . The method of claim 13 , wherein the operations further comprise:
in response to determining the determined click through rate is a specified percentage greater than or lesser than the current click through rate, calculating a content-level click through rate, urgency, and impressions or clicks per day for each advertisement in the associated campaign based on the data in the content-level stats and performance data cache tables and updating the content-level performance data cache table to include the calculated click through rate, urgency, and impression or clicks per day for each advertisement.
15 . The method of claim 12 , wherein the advertiser-level data includes data identifying an advertiser identification uniquely identifying an advertiser associated with the campaign, a current day and a budget used for the advertiser for the day, a current month and a budget used for the advertiser for the month, a lifetime budget used for advertiser, a daily budget allowed for the advertiser, a monthly budget allowed for the advertiser, and a lifetime budget allowed for the advertiser.
16 . A system for tracking user interaction with content of a website, the system comprising:
one or more hardware processors; one or more memories communicatively coupled to the one or more hardware processors, the one or more memories including instructions stored thereon, which when executed by the one or more processors, cause the one or more processors to perform operations comprising:
monitoring a first database on which data is stored regarding sponsored content billing and campaign performance monitoring for changes to the data of the first database, the first database partitioned into a plurality of partitions, each of the plurality of partitions corresponding to a value of a plurality of values to which an advertiser identification of a plurality of advertiser identifications hashes using a hash function, the advertiser identification uniquely indicating an entity that initiated an advertising campaign on the website;
aggregating changes to the data in multiple partitions of the plurality of partitions into a single buffer of a plurality of buffers;
updating a plurality of cache tables based on the aggregated changes to the data, the cache tables including hashmaps of campaign-level stats data, content-level stats data, data center-level stats data for a data center in which the cache tables reside, campaign-level performance data of the campaign, advertiser-level stats data, and content-level stats data;
transferring the data in the cache tables to a second database that stores data regarding sponsored content billing and performance monitoring; and
creating a bill to the advertiser associated with the advertiser identification using the transferred data.
17 . The system of claim 16 , wherein the operations further comprise updating a third database that includes data detailing content and a number of times the user has been presented the content in a specified time interval to reflect that the content was presented to the user and the time at which the content was presented to the user.
18 . The system of claim 17 , wherein updating the third database includes performing an increment operation to increment the number of times the user has been presented the content and receiving a value indicating the number of times the user has been presented the content, and the operations further comprise comparing the value to a threshold value and refraining from serving that content to the user if the value is greater than or equal to the threshold value.
19 . The system of claim 16 , wherein:
the content-level stats data cache table includes a content identification uniquely identifying an associated item of content and a content last update time, the operations further comprise:
comparing a content last update time in the aggregated changes to the content last update time in the content-level data cache table, and
in response to determining the last update time in the aggregated changes is more recent than the content last update time in the content-level data cache table, updating the content-level cache table to indicate the more recent content last update time.
20 . The system of claim 19 , wherein the operations further comprise:
in response to determining the last update time in the aggregated changes is more recent than the content last update time in the content-level stats data cache table, clearing an entry for the ad in the content-level stats cache table and marking the campaign associated with serving the content for recalculation in the campaign-level performance data cache table.Join the waitlist — get patent alerts
Track US2017091807A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.