INTEREST BASED CONTENT DISTRIBUTION
First Claim
1. A method of distributing a content item, provided by a source to a content distribution system, to a subset of a plurality of users via a network coupled therewith, the content distribution system comprising a processor, a memory coupled with the processor and a data store coupled with the memory and the processor, the memory comprising a cache and the data store comprising a database, the method comprising:
- receiving, by the processor, the content item from the source, the content item being associated with data indicative of a subset of a plurality of keywords selected from a plurality of keyword sets, each keyword set comprising a hierarchical sequence of keywords, wherein for each keyword set a first keyword of the sequence of keywords defines a context, different from a context defined by a first keyword of a different keyword set, and each subsequent keyword of the sequence of the keyword set defines a narrowing of the context over the previous keyword of the sequence of the keyword set;
storing, by the processor, each of the received content item in a first format in the database in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the received content item;
determining, by the processor, whether to store the received content item in the cache and, where it is determined to store the received content item in the cache, storing, by the processor, each of the received content item in a second format, different from the first format, in the cache in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the received content item;
receiving, by the processor, a request for content from a requestor via the network;
identifying, by the processor, based on the received request, one or more keywords selected from the plurality of keyword sets;
determining, by the processor based on at least a subset of the identified keywords, whether there are any previously received content items stored in the cache in association with the subset of the identified keywords and, if there are any previously received content items stored in the cache in association with the subset of the identified keywords, causing, by the processor, the transmission of at least a subset of those determined previously received content items from the cache to the requestor via the network; and
where there are no previously received content items stored in the cache in association with the subset of the identified keywords, determining, by the processor based on at least the subset of the identified keywords, whether there are any previously received content items stored in the database in association with the subset of the identified keywords and if there are any previously received content items stored in the database in association with the subset of the identified keywords, retrieving, by the processor, at least a subset of those determined previously received content items from the database, converting, by the processor, the retrieved content items from the first format to the second format, storing, by the processor, the converted content items in the cache in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the retrieved content items, and causing, by the processor, transmission of the converted retrieved content items to the requestor via the network.
1 Assignment
0 Petitions
Accused Products
Abstract
The disclosed embodiments relate to systems and methods for efficiently distributing content among a plurality of users which may be used to implement a social networking service. Content items, which may include “posts” submitted by one user, e.g. responsive to a “post” submitted by another user, are stored in association with data indicative of a specified subset of an interest category classifications defined by the system. Users of the system further specify a subset of the interest category classifications to define their interests. The system then provides content items of interest to the user by mapping, as will be described, the defined interests of the user against the interests associated with the stored content items. The disclosed embodiments enable users to discover and expand their interconnections with other users which may have similar interests.
39 Citations
34 Claims
-
1. A method of distributing a content item, provided by a source to a content distribution system, to a subset of a plurality of users via a network coupled therewith, the content distribution system comprising a processor, a memory coupled with the processor and a data store coupled with the memory and the processor, the memory comprising a cache and the data store comprising a database, the method comprising:
-
receiving, by the processor, the content item from the source, the content item being associated with data indicative of a subset of a plurality of keywords selected from a plurality of keyword sets, each keyword set comprising a hierarchical sequence of keywords, wherein for each keyword set a first keyword of the sequence of keywords defines a context, different from a context defined by a first keyword of a different keyword set, and each subsequent keyword of the sequence of the keyword set defines a narrowing of the context over the previous keyword of the sequence of the keyword set; storing, by the processor, each of the received content item in a first format in the database in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the received content item; determining, by the processor, whether to store the received content item in the cache and, where it is determined to store the received content item in the cache, storing, by the processor, each of the received content item in a second format, different from the first format, in the cache in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the received content item; receiving, by the processor, a request for content from a requestor via the network; identifying, by the processor, based on the received request, one or more keywords selected from the plurality of keyword sets; determining, by the processor based on at least a subset of the identified keywords, whether there are any previously received content items stored in the cache in association with the subset of the identified keywords and, if there are any previously received content items stored in the cache in association with the subset of the identified keywords, causing, by the processor, the transmission of at least a subset of those determined previously received content items from the cache to the requestor via the network; and where there are no previously received content items stored in the cache in association with the subset of the identified keywords, determining, by the processor based on at least the subset of the identified keywords, whether there are any previously received content items stored in the database in association with the subset of the identified keywords and if there are any previously received content items stored in the database in association with the subset of the identified keywords, retrieving, by the processor, at least a subset of those determined previously received content items from the database, converting, by the processor, the retrieved content items from the first format to the second format, storing, by the processor, the converted content items in the cache in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the retrieved content items, and causing, by the processor, transmission of the converted retrieved content items to the requestor via the network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A system for distribution of a content item, provided by a source to a content distribution system, to a subset of a plurality of users, the content distribution system comprising a processor, a memory coupled with the processor and a data store coupled with the memory and the processor, the memory comprising a cache and the data store comprising a database, the system comprising:
-
first logic stored in the memory and executable by the processor to cause the processor to receive the content item from the source, the content item being associated with data indicative of a subset of a plurality of keywords selected from a plurality of keyword sets, each keyword set comprising a hierarchical sequence of keywords, wherein for each keyword set a first keyword of the sequence of keywords defines a context, different from a context defined by a first keyword of a different keyword set, and each subsequent keyword of the sequence of the keyword set defines a narrowing of the context over the previous keyword of the sequence of the keyword set; second logic stored in the memory and executable by the processor to cause the processor to store each of the received content item in a first format in the database in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the received content item; third logic stored in the memory and executable by the processor to cause the processor to determine whether to store the received content item in the cache and, where it is determined to store the received content item in the cache, store each of the received content item in a second format, different from the first format, in the cache in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the received content item; fourth logic stored in the memory and executable by the processor to cause the processor to receive a request for content from a requestor via a network coupled therewith; fifth logic stored in the memory and executable by the processor to cause the processor to identify, based on the received request, one or more keywords selected from the plurality of keyword sets; wherein the fifth logic is further executable by the processor to cause the processor to determine, based on at least a subset of the identified keywords, whether there are any previously received content items stored in the cache in association with the subset of the identified keywords and, if there are any previously received content items stored in the cache in association with the subset of the identified keywords, cause transmission of at least a subset of those determined previously received content items from the cache to the requestor; where there are no previously received content items stored in the cache in association with the subset of the identified keywords, the fifth logic being further executable by the processor to cause the processor to determine, based on at least the subset of the identified keywords, whether there are any previously received content items stored in the database in association with the subset of the identified keywords and if there are any previously received content items stored in the database in association with the subset of the identified keywords, retrieve at least a subset of those determined previously received content items from the database, convert the retrieved content items from the first format to the second format, store the converted content items in the cache in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the retrieved content items, and cause transmission of the converted retrieved content items to the requestor.
-
-
18. A system for distribution of a content item by a source to a content distribution system, to a subset of a plurality of users, the content distribution system comprising a memory and a data store, the memory comprising a cache and the data store comprising a database, the system comprising:
-
a content receiver coupled with the network and operative to receive the content item from the source, the content item being associated with data indicative of a subset of a plurality of keywords selected from a plurality of keyword sets, each keyword set comprising a hierarchical sequence of keywords, wherein for each keyword set a first keyword of the sequence of keywords defines a context, different from a context defined by a first keyword of a different keyword set, and each subsequent keyword of the sequence of the keyword set defines a narrowing of the context over the previous keyword of the sequence of the keyword set; a database manager coupled with database and the content receiver and operative to store each of the received content item in a first format in the database in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the received content item; a cache manager coupled with the cache and the content receiver and operative to determine whether to store the received content item in the cache and, where it is determined to store the received content item in the cache, store each of the received content item in a second format, different from the first format, in the cache in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the received content item; a request receiver coupled with the network operative to receive a request for content from a requestor via a network coupled therewith; a search manager coupled with the request receiver, database manager and cache manager and operative to identify, based on the received request, one or more keywords selected from the plurality of keyword sets; the search manager being further operative to determine, based on at least a subset of the identified keywords, whether there are any previously received content items stored in the cache in association with the subset of the identified keywords and, if there are any previously received content items stored in the cache in association with the subset of the identified keywords, cause transmission of at least a subset of those determined previously received content items from the cache to the requestor; where there are no previously received content items stored in the cache in association with the subset of the identified keywords, the search manager being further operative to determine, based on at least the subset of the identified keywords, whether there are any previously received content items stored in the database in association with the subset of the identified keywords and if there are any previously received content items stored in the database in association with the subset of the identified keywords, retrieve at least a subset of those determined previously received content items from the database, convert the retrieved content items from the first format to the second format, store the converted content items in the cache in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the retrieved content items, and cause transmission of the converted retrieved content items to the requestor. - View Dependent Claims (19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
-
-
34. A system for distribution of a content item, provided by a source to a content distribution system, to a subset of a plurality of users via a network coupled therewith, the content distribution system comprising a processor, a memory coupled with the processor and a data store coupled with the memory and the processor, the memory comprising a cache and the data store comprising a database, the system comprising:
-
means for receiving the content item from the source, the content item being associated with data indicative of a subset of a plurality of keywords selected from a plurality of keyword sets, each keyword set comprising a hierarchical sequence of keywords, wherein for each keyword set a first keyword of the sequence of keywords defines a context, different from a context defined by a first keyword of a different keyword set, and each subsequent keyword of the sequence of the keyword set defines a narrowing of the context over the previous keyword of the sequence of the keyword set; means for storing each of the received content item in a first format in the database in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the received content item; means for determining whether to store the received content item in the cache and, where it is determined to store the received content item in the cache, storing, by the processor, each of the received content item in a second format, different from the first format, in the cache in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the received content item; means for receiving a request for content from a requestor via the network; means for identifying, based on the received request, one or more keywords selected from the plurality of keyword sets; means for determining, based on at least a subset of the identified keywords, whether there are any previously received content items stored in the cache in association with the subset of the identified keywords and, if there are any previously received content items stored in the cache in association with the subset of the identified keywords, causing the transmission of at least a subset of those determined previously received content items from the cache to the requestor via the network; where there are no previously received content items stored in the cache in association with the subset of the identified keywords, the means for determining further including means for determining, based on at least the subset of the identified keywords, whether there are any previously received content items stored in the database in association with the subset of the identified keywords and if there are any previously received content items stored in the database in association with the subset of the identified keywords, retrieving at least a subset of those determined previously received content items from the database, converting the retrieved content items from the first format to the second format, storing the converted content items in the cache in association with data indicative of at least a subset of the subset of the plurality of keywords associated with the retrieved content items, and causing transmission of the converted retrieved content items to the requestor via the network.
-
Specification