Patent application number | Description | Published |
20130031034 | ADAPTIVE RANKING OF NEWS FEED IN SOCIAL NETWORKING SYSTEMS - Machine learning models are used for ranking news feed stories presented to users of a social networking system. The social networking system divides its users into different sets, for example, based on demographic characteristics of the users and generates one model for each set of users. The models are periodically retrained. The news feed ranking model may rank news feeds for a user based on information describing other users connected to the user in the social networking system. Information describing other users connected to the user includes interactions of the other users with objects associated with news feed stories. These interactions include commenting on a news feed story, liking a news feed story, or retrieving information, for example, images, videos associated with a news feed story. | 01-31-2013 |
20130031489 | NEWS FEED RANKING MODEL BASED ON SOCIAL INFORMATION OF VIEWER - Machine learning models are used for ranking news feed stories presented to users of a social networking system. The social networking system divides its users into different sets, for example, based on demographic characteristics of the users and generates one model for each set of users. The models are periodically retrained. The news feed ranking model may rank news feeds for a user based on information describing other users connected to the user in the social networking system. Information describing other users connected to the user includes interactions of the other users with objects associated with news feed stories. These interactions include commenting on a news feed story, liking a news feed story, or retrieving information, for example, images, videos associated with a news feed story. | 01-31-2013 |
20140172875 | ARRANGING STORIES ON NEWSFEEDS BASED ON EXPECTED VALUE SCORING ON A SOCIAL NETWORKING SYSTEM - A social networking system generates a newsfeed for a user to view when accessing the social networking system. Candidate stories associated with users of the social networking system are selected and an expected value score for each candidate story is determined. An expected value score is based on the probability of a user performing various types of interactions with a candidate story and a numerical value for each type of interaction. The numerical value for a type of interaction represents a value to the social networking system of the type of interaction. Based on the expected value scores, the candidate stories are ranked and the ranking used to select candidate stories for the newsfeed. | 06-19-2014 |
20140172876 | DIVERSITY ENFORCEMENT ON A SOCIAL NETWORKING SYSTEM NEWSFEED - A social networking system generates a newsfeed for a user to view when accessing the social networking system. Candidate stories associated with users of the social networking system are selected and attributes of each story are determined. The candidate stories are ranked so that the ranking of a candidate story having one or more common attributes with another candidate story is modified. This reduces the likelihood of the newsfeed presenting candidate stories with common attributes proximate to each other. | 06-19-2014 |
20140172877 | BOOSTING RANKS OF STORIES BY A NEEDY USER ON A SOCIAL NETWORKING SYSTEM - A social networking system generates a newsfeed for a user to view when accessing the social networking system. Candidate stories associated with users of the social networking selection are selected for inclusion in the newsfeed. Based on data associated with users associated with candidate stories, the social networking system determines a neediness value for the users associated with the candidate stories. The neediness value of a user indicates a degree of assistance by the social networking system to distribute content associated with the user. For users indicated as “needy users” based on their neediness values, the social networking system modifies the location of candidate stories associated with needy users in a ranking of the candidate stories. | 06-19-2014 |
20140258191 | ADAPTIVE RANKING OF NEWS FEED IN SOCIAL NETWORKING SYSTEMS - Machine learning models are used for ranking news feed stories presented to users of a social networking system. The social networking system divides its users into different sets, for example, based on demographic characteristics of the users and generates one model for each set of users. The models are periodically retrained. The news feed ranking model may rank news feeds for a user based on information describing other users connected to the user in the social networking system. Information describing other users connected to the user includes interactions of the other users with objects associated with news feed stories. These interactions include commenting on a news feed story, liking a news feed story, or retrieving information, for example, images, videos associated with a news feed story. | 09-11-2014 |
Patent application number | Description | Published |
20110196664 | Location Assignment Daemon (LAD) Simulation System and Method - A system and method for simulating a state of a distributed storage system is provided. A current state of a distributed storage system and replication policies for the objects in the distributed storage system is obtained. Proposed modifications to the current state of the distributed storage system are received. The state of the distributed storage system is simulated over time based on the current state of the distributed storage system, the replication policies for the objects in the distributed storage system, and the proposed modifications to the current state of the distributed storage system. Then reports relating to the time evolution of the current state of the distributed storage system are generated based on the simulation. | 08-11-2011 |
20110196828 | Method and System for Dynamically Replicating Data Within A Distributed Storage System - A server computer at a first storage sub-system of a distributed storage system receives from a client a first client request for an object. If the object is not present in the first storage sub-system, the server computer identifies a second storage sub-system of the distributed storage system as having a replica of the requested object, the requested object including content and metadata. The server computer submits an object replication request for the requested object to the second storage sub-system and independently receives the content and metadata of the requested object from the second storage sub-system. The server computer generates a new replica of the object at the first storage sub-system using the received metadata and content and returns the metadata of the new replica of the object to the client. | 08-11-2011 |
20110196829 | Method and System for Providing Efficient Access to a Tape Storage System - A method for asynchronously replicating data onto a tape medium is implemented at one or more server computers associated with a distributed storage system and connected to a tape storage system. Upon receiving a first request from a client for storing an object within the tape storage system, a server computer stores the object within a staging sub-system of the distributed storage system and provides a first response to the requesting client. If a predefined condition is met, the server computer transfers objects from the staging sub-system to the tape storage system. For each transferred object, the server computer adds a reference to the object to a tape management sub-system, identifies a corresponding parent object associated with the object and its metadata within a parent object management sub-system of the distributed storage system, and updates the parent object's metadata to include the object's location within the tape storage system. | 08-11-2011 |
20110196830 | System and Method for Managing Replicas of Objects In A Distributed Storage System - A system and method for generating replication requests for objects in a distributed storage system is provided. Replication requests for objects in a distributed storage system are generated based at least in part on replication policies for the objects and a current state of the distributed storage system, wherein a respective replication request for a respective object instructs a respective instance of the distributed storage system to replicate the respective object so as to at least partially satisfy a replication policy for the respective object, wherein a respective replication policy includes criteria specifying at least storage device types on which replicas of object are to be stored. At least a subset of the replication requests is then distributed to the respective instances of the distributed storage system for execution. | 08-11-2011 |
20110196831 | Pruning of Blob Replicas - A system and method generating and distributing replica removal requests for objects in a distributed storage system is provided. Replica removal requests for objects in a distributed storage system are generated based at least in part on replication policies for the objects. A respective replica removal request instructs a respective instance of the distributed storage system to remove a respective replica of the respective object so as to at least partially satisfy replication policies for the respective object. Then the replica removal requests for the objects in the distributed storage system are distributed to respective instances of the distributed storage system corresponding to the replica removal requests for execution. | 08-11-2011 |
20110196832 | Location Assignment Daemon (LAD) For A Distributed Storage System - A system and method for generating replication requests for objects in a distributed storage system is provided. For a respective object in a distributed storage system the following is performed. Replication policies for the object that have not been satisfied are determined. Replication requests are ranked for the object whose replication policies have not been satisfied based on a number of replicas of the object that need to be created in order to satisfy the replication policies for the object. Replication requests are generated for the object based at least in part on the replication policies for the object that have not been satisfied and on a current state of the distributed storage system. At least a subset of the replication requests for the objects in the distributed storage system are distributed to respective instances of the distributed storage system corresponding to the replication requests for execution. | 08-11-2011 |
20110196900 | Storage of Data In A Distributed Storage System - A distributed storage system stores data for files. A first blob (binary large object) of data is received. The first blob is split into one or more first chunks of data. Content fingerprints for the first chunks of data are computed. The first chunks of data are stored in a chunk store while and their content fingerprints are stored in a store distinct from the chunk store. A second blob of data is received. The second blob is split into one or more second chunks of data. Content fingerprints for the second chunks of data are computed. Then for a second chunk of data whose content fingerprint matches a content fingerprint of a first chunk of data, a second reference to the corresponding first chunk of data that has a matching content fingerprint is stored, but the second chunk of data is not stored. | 08-11-2011 |
20140032200 | Systems and Methods of Simulating the State of a Distributed Storage System - A distributed storage system has a plurality of instances. A computer system simulates the state of the distributed storage system. The system obtains a current state of the distributed storage system and replication policies for objects in the distributed storage system. Each replication policy specifies criteria for placing copies of the relevant objects among the plurality of instances. The system receives proposed modifications to the state of the distributed storage system and simulates the state of the distributed storage system over time based on the current state of the distributed storage system, current statistical trends in the state of the distributed storage system, the replication policies for the objects in the distributed storage system, and the proposed modifications to the state of the distributed storage system. One or more reports are generated relating to time evolution of the state of the distributed storage system based on the simulation. | 01-30-2014 |
20140304240 | Pruning of Blob Replicas - A method allocates object replicas in a distributed storage system. The method identifies a plurality of objects in the distributed storage system. Each object has an associated storage policy that specifies a target number of object replicas stored at distinct instances of the distributed storage system. The method identifies an object of the plurality of objects whose number of object replicas exceeds the target number of object replicas specified by the storage policy associated with the object. The method selects a first replica of the object for removal based on last access times for replicas of the object, and transmits a request to a first instance of the distributed storage system that stores the first replica. The request instructs the first instance to remove the first replica of the object. | 10-09-2014 |
20150026128 | STORAGE OF DATA IN A DISTRIBUTED STORAGE SYSTEM - A distributed storage system has multiple instances. There is a plurality of local instances, and at least some of the local instances are at physically distinct geographic locations. Each local instance is configured to store data for a non-empty set of blobs in a plurality of data stores having a plurality of distinct data store types. In addition, each local instance stores metadata for the respective set of blobs in a metadata store distinct from the data stores. There is also a plurality of global instances. Each global instance is configured to store data for zero or more blobs in zero or more data stores and store metadata for all blobs stored at any local or global instance. The system selects one global instance to run a replication module that replicates blobs between instances according to blob policies. Some systems also include dynamic replication based on user needs. | 01-22-2015 |