Proximity-based searching on online social networks
First Claim
1. A method comprising, by one or more computing devices of an online social network:
- receiving, from a client system of a first user of the online social network, a search query inputted by the first user;
accessing a proximity graph from a proximity-coefficient system of the online social network, wherein the proximity graph comprises;
a first node corresponding to the first user;
a plurality of second nodes corresponding to a plurality of entities, respectively;
a plurality of proximity edges connecting the nodes, wherein each proximity edge is associated with a corresponding proximity coefficient that is weighted based on a geographic distance between entities corresponding to the nodes and a period of time the entities corresponding to the nodes were within a threshold distance of each other;
identifying one or more entities of the plurality of entities matching the search query, at least a portion of the entities being identified based at least in part on whether there is a proximity edge connecting the nodes corresponding to the first user and the identified entity;
accessing, from the proximity graph of the proximity-coefficient system, a proximity coefficient for each identified entity corresponding to a node connected to the first node by a proximity edge, wherein each proximity coefficient is based on a geographic distance between the first user and the respective identified entity and the period of time the first user and the identified entity were within the threshold distance of each other;
calculating a score for each identified entity based at least in part on the value of the accessed proximity coefficient for the identified entity and social-graph information associated with the identified entity; and
sending, to the client system of the first user in response to the received search query, instructions for presenting one or more search results for display to the first user, wherein each search result references an identified entity each having a score greater than a threshold score.
3 Assignments
0 Petitions
Accused Products
Abstract
In one embodiment, an online social network may receive, from a client system of a first user of the online social network, a search query inputted by the first user; and identify one or more of the entities matching the search query. At least a portion of the entities being identified based at least in part on a recorded geographic proximity between the first user and each identified entity. The online social network may access one or more proximity coefficients for the identified entities from a proximity-coefficient system of the online social network; calculate a score for each identified entity based at least in part on the value of the accessed proximity coefficients for the identified entity and social-graph information associated with the identified entity; and send, to the client system of the first user in response to the received search query, search results for display to the first user.
190 Citations
20 Claims
-
1. A method comprising, by one or more computing devices of an online social network:
-
receiving, from a client system of a first user of the online social network, a search query inputted by the first user; accessing a proximity graph from a proximity-coefficient system of the online social network, wherein the proximity graph comprises; a first node corresponding to the first user; a plurality of second nodes corresponding to a plurality of entities, respectively; a plurality of proximity edges connecting the nodes, wherein each proximity edge is associated with a corresponding proximity coefficient that is weighted based on a geographic distance between entities corresponding to the nodes and a period of time the entities corresponding to the nodes were within a threshold distance of each other; identifying one or more entities of the plurality of entities matching the search query, at least a portion of the entities being identified based at least in part on whether there is a proximity edge connecting the nodes corresponding to the first user and the identified entity; accessing, from the proximity graph of the proximity-coefficient system, a proximity coefficient for each identified entity corresponding to a node connected to the first node by a proximity edge, wherein each proximity coefficient is based on a geographic distance between the first user and the respective identified entity and the period of time the first user and the identified entity were within the threshold distance of each other; calculating a score for each identified entity based at least in part on the value of the accessed proximity coefficient for the identified entity and social-graph information associated with the identified entity; and sending, to the client system of the first user in response to the received search query, instructions for presenting one or more search results for display to the first user, wherein each search result references an identified entity each having a score greater than a threshold score. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:
-
receive, from a client system of a first user of the online social network, a search query inputted by the first user; access a proximity graph from a proximity-coefficient system of the online social network, wherein the proximity graph comprises; a first node corresponding to the first user; a plurality of second nodes corresponding to a plurality of entities, respectively; a plurality of proximity edges connecting the nodes, wherein each proximity edge is associated with a corresponding proximity coefficient that is weighted based on a geographic distance between entities corresponding to the nodes and a period of time the entities corresponding to the nodes were within a threshold distance of each other; identify one or more entities of the plurality of entities matching the search query, at least a portion of the entities being identified based at least in part on whether there is a proximity edge connecting the nodes corresponding to the first user and the identified entity; access, from the proximity graph of the proximity-coefficient system, a proximity coefficient for each identified entity corresponding to a node connected to the first node by a proximity edge, wherein each proximity coefficient is based on a geographic distance between the first user and the respective identified entity and the period of time the first user and the identified entity were within the threshold distance of each other; calculate a score for each identified entity based at least in part on the value of the accessed proximity coefficient for the identified entity and social-graph information associated with the identified entity; and send, to the client system of the first user in response to the received search query, instructions for presenting one or more search results for display to the first user, wherein each search result references an identified entity each having a score greater than a threshold score.
-
-
20. A system comprising:
- one or more processors; and
a memory coupled to the processors comprising instructions executable by the processors, the processors operable when executing the instructions to;receive, from a client system of a first user of the online social network, a search query inputted by the first user; access a proximity graph from a proximity-coefficient system of the online social network, wherein the proximity graph comprises; a first node corresponding to the first user; a plurality of second nodes corresponding to a plurality of entities, respectively; a plurality of proximity edges connecting the nodes, wherein each proximity edge is associated with a corresponding proximity coefficient that is weighted based on a geographic distance between entities corresponding to the nodes and a period of time the entities corresponding to the nodes were within a threshold distance of each other; identify one or more entities of the plurality of entities matching the search query, at least a portion of the entities being identified based at least in part on whether there is a proximity edge connecting the nodes corresponding to the first user and the identified entity; access, from the proximity graph of the proximity-coefficient system, a proximity coefficient for each identified entity corresponding to a node connected to the first node by a proximity edge, wherein each proximity coefficient is based on a geographic distance between the first user and the respective identified entity and the period of time the first user and the identified entity were within the threshold distance of each other; calculate a score for each identified entity based at least in part on the value of the accessed proximity coefficient for the identified entity and social-graph information associated with the identified entity; and send, to the client system of the first user in response to the received search query, instructions for presenting one or more search results for display to the first user, wherein each search result references an identified entity each having a score greater than a threshold score.
- one or more processors; and
Specification