SEARCHING PUBLIC POSTS ON ONLINE SOCIAL NETWORKS
First Claim
1. A method comprising:
- receiving a search query from a client system of a first user of an online social network;
generating a plurality of query commands based on the search query, wherein the plurality of query commands comprises;
a first query command comprising a query constraint for objects having a first privacy setting; and
a second query command comprising a query constraint for objects having a second privacy setting, wherein the second privacy setting is more restrictive than the first privacy setting;
searching one or more data stores to identify a plurality of objects matching the plurality of query commands, wherein the identified objects comprise;
a first set of objects associated with the online social network that match the first query command; and
a second set of objects associated with the online social network that match the second query command;
generating one or more search results corresponding to one or more of the identified objects, respectively, each search result comprising a reference to the corresponding identified object, wherein at least one of the search results corresponds to an object from the first set of objects, and wherein at least one of the search results corresponds to an object from the second set of objects; and
sending, responsive to the search query, a search-results page to the client system of the first user for display, the search-results page comprising one or more of the generated search results.
3 Assignments
0 Petitions
Accused Products
Abstract
In one embodiment, a method includes receiving a search query. The method includes generating query commands based on the search query. The of query commands include a first query command comprising a query constraint for objects having a first privacy setting, and a second query command comprising a query constraint for objects having a second privacy setting, wherein the second privacy setting is more restrictive than the first privacy setting. The method includes searching to identify a first set of objects that match the first query command, and a second set of objects associated that match the second query command. The method includes generating one or more search results and sending a search-results page to the client system of the first user for display.
-
Citations
25 Claims
-
1. A method comprising:
-
receiving a search query from a client system of a first user of an online social network; generating a plurality of query commands based on the search query, wherein the plurality of query commands comprises; a first query command comprising a query constraint for objects having a first privacy setting; and a second query command comprising a query constraint for objects having a second privacy setting, wherein the second privacy setting is more restrictive than the first privacy setting; searching one or more data stores to identify a plurality of objects matching the plurality of query commands, wherein the identified objects comprise; a first set of objects associated with the online social network that match the first query command; and a second set of objects associated with the online social network that match the second query command; generating one or more search results corresponding to one or more of the identified objects, respectively, each search result comprising a reference to the corresponding identified object, wherein at least one of the search results corresponds to an object from the first set of objects, and wherein at least one of the search results corresponds to an object from the second set of objects; and sending, responsive to the search query, a search-results page to the client system of the first user for display, the search-results page comprising one or more of the generated search results.
-
-
2. The method of claim 1, wherein each object is of a particular object-type, and wherein the object-type of each object is selected from a group consisting of:
- users, photos, videos, pages, applications, events, locations, and user groups.
-
3. The method of claim 1, wherein generating the plurality of query commands is further based on information provided by the online social network.
-
4. The method of claim 3, wherein the information provided by the social network is one or more of location information associated with the first user, language information associated with the first user, or user preferences of the first user.
-
5. The method of claim 1, wherein the first query command is generated based on a first set of information provided by the online social network and the second query command is generated based on a second set of information provided by the online social network.
-
6. The method of claim 1, wherein searching comprises searching a plurality of verticals to identify the plurality of sets of objects that match the plurality of query commands, and wherein each vertical stores one or more objects associated with the online social network, each object corresponding to a second node of the plurality of second nodes, and wherein each vertical of the plurality of verticals stores objects of a particular object-type, at least one object-type being posts.
-
7. The method of claim 1, further comprising calculating a score for each identified object of the plurality of objects.
-
8. The method of claim 7, wherein calculating a score for each identified object is based at least on an author of the object, a number of times the object has been engaged with, a quality of text matching, a phrase associated with the object that is trending, a topic associated with the object, or a date associated with the object.
-
9. The method of claim 7 further comprising identifying objects in the first set of objects authored by key-authors, and wherein calculating a score for each object in the first set of objects is based at least on the objected authored by key-authors.
-
10. The method of claim 7, wherein calculating a score for each object in the first set of objects is based at least on a quality of text matching, wherein each object in the first set of objects matches the search query.
-
11. The method of claim 7, wherein calculating a score for each object in the second set of objects is based at least on a quality of text matching, wherein each object in the second set of objects substantially matches the search query.
-
12. The method of claim 7, wherein calculating a score for each object in the second set of objects is based at least on an affinity between the querying user and the author of the object or affinity between the querying user and one or more commenters of the object.
-
13. The method of claim 7, wherein each generated search result corresponds to an identified object having a score greater than a threshold score.
-
14. The method of claim 1, further comprising:
-
determining for each identified object a visibility of the object with respect to the first user; and excluding each identified object that is not visible to the first user from the generated search results.
-
-
15. The method of claim 1, wherein the search-results page comprises a plurality of search-results modules, at least one search-results module comprising search results corresponding to objects from the first set of objects, and at least one search-results module comprising search results corresponding to objects from the second set of objects.
-
16. The method of claim 1, further comprising blending the first and second sets of identified objects to form a set of blended search results comprising a threshold number of identified objects from each set.
-
17. The method of claim 1, further comprising accessing a social graph comprising a plurality of nodes and a plurality of edges connecting the nodes, each of the edges between two of the nodes representing a single degree of separation between them, the nodes comprising:
-
a first node corresponding to the first user; and a plurality of second nodes corresponding to a plurality of objects associated with the online social network, respectively.
-
-
18. The method of claim 1, wherein the plurality of query commands are generated by a sub-request generator of the online social network.
-
19. The method of claim 1, wherein the first privacy setting is a public privacy setting.
-
20. The method of claim 1, wherein the second privacy setting is for objects associated with second users within a threshold degree of separation from the first user with in the online social network.
-
21. The method of claim 1, wherein the second privacy setting is for objects associated with second users included in a list.
-
22. The method of claim 1, wherein the second privacy setting is for objects associated with second users that are connected to the first user by a friend edge.
-
23. The method of claim 1, wherein the second privacy setting is for objects associated with groups that are connected to the first user.
-
24. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
-
receive a search query from a client system of a first user of an online social network; generate a plurality of query commands based on the search query, wherein the plurality of query commands comprises; a first query command comprising a query constraint for objects having a first privacy setting; and a second query command comprising a query constraint for objects having a second privacy setting, wherein the second privacy setting is more restrictive than the first privacy setting; search one or more data stores to identify a plurality of objects matching the plurality of query commands, wherein the identified objects comprise; a first set of objects associated with the online social network that match the first query command; and a second set of objects associated with the online social network that match the second query command; generate one or more search results corresponding to one or more of the identified objects, respectively, each search result comprising a reference to the corresponding identified object, wherein at least one of the search results corresponds to an object from the first set of objects, and wherein at least one of the search results corresponds to an object from the second set of objects; and send, responsive to the search query, a search-results page to the client system of the first user for display, the search-results page comprising one or more of the generated search results.
-
-
25. A system comprising:
- one or more processors; and
a non-transitory memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to;receive a search query from a client system of a first user of an online social network; generate a plurality of query commands based on the search query, wherein the plurality of query commands comprises; a first query command comprising a query constraint for objects having a first privacy setting; and a second query command comprising a query constraint for objects having a second privacy setting, wherein the second privacy setting is more restrictive than the first privacy setting; search one or more data stores to identify a plurality of objects matching the plurality of query commands, wherein the identified objects comprise; a first set of objects associated with the online social network that match the first query command; and a second set of objects associated with the online social network that match the second query command; generate one or more search results corresponding to one or more of the identified objects, respectively, each search result comprising a reference to the corresponding identified object, wherein at least one of the search results corresponds to an object from the first set of objects, and wherein at least one of the search results corresponds to an object from the second set of objects; and send, responsive to the search query, a search-results page to the client system of the first user for display, the search-results page comprising one or more of the generated search results.
- one or more processors; and
Specification