Abstract:
A computer-implemented method for collecting and managing TV viewership data from multiple TV metering data providers is disclosed. The method includes: receiving an event log file at a distributed computer system that includes multiple computers; dynamically selecting one or more computers according to a predefined sharding function; at each of the selected computers: allocating a set of compressed event records, which corresponds to a subset of the event log file, at predetermined locations within the memory of the computer; and in accordance with a predefined schedule, replicating the compressed event records from a respective one of the selected computers to one or more other computers of the distributed system such that there are at least two replicas of any event record on at least two computers of the distributed computer system.
Abstract:
A method for providing efficient and accurate estimates of TV viewership ratings through a distributed computer system that includes multiple computers is disclosed. The method includes: receiving a query from a client at the distributed computer system; dynamically selecting one or more computers according to a predefined sharding function; at each of the selected computers, determining a count of qualified event records that satisfy the query; aggregating the respective counts of qualified event records determined by the selected computers; statistically projecting the aggregated count of qualified event records into an estimated total count of qualified event records on the distributed computer system; and returning the estimated total count of qualified event records to the requesting client.
Abstract:
A computer-implemented method for collecting and managing TV viewership data from multiple TV metering data providers is disclosed. The method includes: receiving an event log file at a distributed computer system that includes multiple computers; dynamically selecting one or more computers according to a predefined sharding function; at each of the selected computers: allocating a set of compressed event records, which corresponds to a subset of the event log file, at predetermined locations within the memory of the computer; and in accordance with a predefined schedule, replicating the compressed event records from a respective one of the selected computers to one or more other computers of the distributed system such that there are at least two replicas of any event record on at least two computers of the distributed computer system.
Abstract:
A method providing real-time popularity information regarding TV programs, performed during a short period of time at a server with one or more processors and memory. The server receives current TV viewing information from a plurality of distinct households. The current TV viewing information for a household identifies one or more TV programs that are now showing at the household. The server aggregates the current TV viewing information, thereby identifying one or more currently popular TV programs. The currently popular TV programs have more household viewers than less popular TV programs. The server receives a request from a household seeking identification of currently popular TV programs. The server selects one or more of the currently popular TV programs identified during the aggregation, and sends information to the household. The information identifies the selected one or more currently popular TV programs.
Abstract:
A method providing real-time popularity information regarding TV programs, performed during a short period of time at a server with one or more processors and memory. The server receives current TV viewing information from a plurality of distinct households. The current TV viewing information for a household identifies one or more TV programs that are now showing at the household. The server aggregates the current TV viewing information, thereby identifying one or more currently popular TV programs. The currently popular TV programs have more household viewers than less popular TV programs. The server receives a request from a household seeking identification of currently popular TV programs. The server selects one or more of the currently popular TV programs identified during the aggregation, and sends information to the household. The information identifies the selected one or more currently popular TV programs.
Abstract:
A server computer receives web request events corresponding to web requests issued by users. Each web request event includes: a cookie that identifies the user computer that originated the corresponding web request; an IP address corresponding to the user computer; and a date/time stamp indicating when the corresponding web request was received at a web server. The server stores the web request events. The server selects a subset of the web request events, all of which are associated with the same cookie. Then the server computes a geographical location corresponding to the user computer, where the computation uses the IP address associated with the web request event. The server determines the local time and day of week corresponding to the web request. The server then classifies the user computer based, at least in part, on a usage pattern corresponding to the web request events in the subset.
Abstract:
A server receives an IP address associated with an account of a TV subscriber using a TV service. The IP address is associated with a set top box employed by the TV subscriber to display TV content provided by the TV service. The IP address is also associated with computers of a household corresponding to the TV subscriber. The computers use web browsers to view Internet content. The server receives information on TV viewing, including the IP address. The server also receives information on web browsing activity in the household associated with the IP address. The information includes the IP address. The server maintains a TV log of the TV viewing and maintains an Internet log of the web browsing activity in the household associated with the IP address. The server associates entries in the TV log with entries in the Internet log (using IP address), and stores the associations.