Patent ID: 9280780
Filing Date: 2016-03-08
CPC Classification: G06F,G06Q

Claim Text:
1. A method comprising: receiving, at a computing device comprising a processor, a registration event associated with a user; assigning a user identifier to the user; receiving an event signal, wherein the event signal includes information corresponding to the user identifier; storing the event signal in a data store; modifying a value of at least one bit stored in a bitmap index, the data store, or both based on the user identifier, wherein the bitmap index includes a plurality of bit strings including a subset of brand affinity bit strings, wherein a value stored in a particular location in each of the brand affinity bit strings corresponds to the user identifier and indicates whether the user has an affinity for a corresponding brand, wherein the bitmap index stores bit strings for top N brand affinities associated with an audience of a media property, wherein N is a positive integer, and wherein the data store stores data corresponding to more than N brand affinities; in response to receiving the event signal, determining whether the event signal causes a first brand affinity outside the top N brand affinities to become elevated into the top N brand affinities, wherein the data store includes data associated with M brand affinities, wherein M is a positive integer that is greater than N, and wherein the top N brand affinities are included in the M brand affinities; in response to determining that the event signal causes the first brand affinity to become elevated into the top N brand affinities, replacing a bit string for a second brand affinity in the bitmap index with a bit string for the first brand affinity; receiving a query directed to the bitmap index; and generating a query execution plan for the query, wherein the query execution plan identifies: one or more set operations; that one or more first nodes are to send stored portions of one or more bit strings to a second node; and that the second node is to perform the one or more set operations with respect to: the portions of the one or more bit strings received from the one or more first nodes; and portions of one or more bit strings stored at the second node; and that the second node is to concatenate results of performing the one or more set operations to generate a result bit string that indicates a result of the query.