OPTIMIZING A CONTENT INDEX FOR TARGET AUDIENCE QUERIES
First Claim
1. A method of operating a content index, the method comprising:
- for each of multiple collections of electronic content, storing in an index a corresponding entry comprising a set of attribute tokens, wherein;
each attribute token represents an attribute of a target audience of the corresponding collection of electronic content and an associated value of the attribute;
the attribute tokens are arranged as one or more conjunctions of disjunctions; and
the attribute tokens are sorted into inverse order of a probability with which the attributes and associated values will match a set of attributes and associated values of an unknown target user of a future request for electronic content;
receiving a request for electronic content to serve to a first target user, the request comprising one or more attributes of the first target user;
for each of multiple entries of the index;
comparing the attributes represented by the attribute tokens with the one or more attributes of the request; and
aborting the comparison as soon as an attribute token conflicts with the one or more attributes, if such a conflict exists; and
in response to the request, outputting electronic content collections corresponding to one or more entries of the index.
2 Assignments
0 Petitions
Accused Products
Abstract
Apparatus and methods are provided for indexing electronic content to be served to users'"'"' mobile and/or stationary communications and computing devices. An index is composed of multiple slices, with each slice storing multiple entries and each entry representing one content item or one campaign or collection of content items. An entry is populated with tokens representing attribute/value pairs of a target audience of the content item and/or property/value pairs of the item or the item'"'"'s campaign. A query or request to identify content items for serving to a particular user is similarly formatted with tokens representing attribute/value pairs of the user and/or item/campaign. Queries can then be executed rapidly across any or all index entries in any or all slices. Within a slice, entries may be sorted by value or score, and integer components within an individual entry may be sorted to facilitate rapid comparison with a query.
-
Citations
20 Claims
-
1. A method of operating a content index, the method comprising:
-
for each of multiple collections of electronic content, storing in an index a corresponding entry comprising a set of attribute tokens, wherein; each attribute token represents an attribute of a target audience of the corresponding collection of electronic content and an associated value of the attribute; the attribute tokens are arranged as one or more conjunctions of disjunctions; and the attribute tokens are sorted into inverse order of a probability with which the attributes and associated values will match a set of attributes and associated values of an unknown target user of a future request for electronic content; receiving a request for electronic content to serve to a first target user, the request comprising one or more attributes of the first target user; for each of multiple entries of the index; comparing the attributes represented by the attribute tokens with the one or more attributes of the request; and aborting the comparison as soon as an attribute token conflicts with the one or more attributes, if such a conflict exists; and in response to the request, outputting electronic content collections corresponding to one or more entries of the index. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An apparatus, comprising:
-
one or more processors; and memory storing instructions that, when executed by the one or more processors, cause the apparatus to; for each of multiple collections of electronic content, store in an index a corresponding entry comprising a set of attribute tokens, wherein; each attribute token represents an attribute of a target audience of the corresponding collection of electronic content and an associated value of the attribute; the attribute tokens are arranged as one or more conjunctions of disjunctions; and the attribute tokens are sorted into inverse order of a probability with which the attributes and associated values will match a set of attributes and associated values of an unknown target user of a future request for electronic content; receive a request for electronic content to serve to a first target user, the request comprising one or more attributes of the first target user; for each of multiple entries of the index; compare the attributes represented by the attribute tokens with the one or more attributes of the request; and abort the comparison as soon as an attribute token conflicts with the one or more attributes, if such a conflict exists; and in response to the request, output electronic content collections corresponding to one or more entries of the index. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A system, comprising:
-
a first computer readable medium storing an index; an index module comprising a second computer readable medium storing instructions that, when executed, cause the system to, for each of multiple collections of electronic content, store in the index a corresponding entry comprising a set of attribute tokens, wherein; each attribute token represents an attribute of a target audience of the corresponding collection of electronic content and an associated value of the attribute; the attribute tokens are arranged as one or more conjunctions of disjunctions; and the attribute tokens are sorted into inverse order of a probability with which the attributes and associated values will match a set of attributes and associated values of an unknown target user of a future request for electronic content; and a query module comprising a third computer readable medium storing instructions that, when executed, cause the system to; receive a request for electronic content to serve to a first target user, the request comprising one or more attributes of the first target user; for each of multiple entries of the index; compare the attributes represented by the attribute tokens with the one or more attributes of the request; and abort the comparison as soon as an attribute token conflicts with the one or more attributes, if such a conflict exists; and in response to the request, output electronic content collections corresponding to one or more entries of the index. - View Dependent Claims (18, 19, 20)
-
Specification