Patent application number | Description | Published |
20080288646 | DATA CONSISTENCY WITHIN A FEDERATION INFRASTRUCTURE - In some embodiments, it is determined that a primary node has been elected from among a plurality of nodes in a replica set of nodes. The primary node accepts and processes client data access requests. The replica set includes the primary node and other secondary nodes. The primary node receives client data access requests. The primary node assigns a data sequence number to each client data access request that mutates state in the order the client data access requests are received. The data sequence numbers include a linearized processing order that is to be followed by each of the nodes in the replica set. The primary node sends the mutating client data access requests including any corresponding data sequence numbers to the secondary nodes. The primary node receives, from a threshold number of secondary nodes, an acknowledgement indicating reception of the client data access request. The primary node commits the data mutating access request. | 11-20-2008 |
20080288659 | MAINTAINING CONSISTENCY WITHIN A FEDERATION INFRASTRUCTURE - The present invention extends to methods, systems, and computer program products for a joining node to join a ring of nodes within a rendezvous federation. Embodiments include detecting a neighborhood of nodes on the ring of nodes. The joining node indicates its intent to take id-space ownership for a portion of the id-space between the joining node and a selected immediately adjacent node. The joining node indicates an intent to monitor the selected node. The joining node receives three indications, the first indicating acceptance of the joining node's intent to take id-space ownership for a portion of the id-space between the joining node and the selected node, the second indicating acceptance of the joining node's intent to monitor the selected node, the third indicating the first selected node's intent to monitor the joining node. The joining node indicates acceptance of the selected node's intent to monitor the joining node. | 11-20-2008 |
20090319684 | SUBFEDERATION CREATION AND MAINTENANCE IN A FEDERATION INFRASTRUCTURE - A computational system determines that a joining node in the federation infrastructure desires to join an identified subfederation within the federation infrastructure. The system accesses the joining node's group table, where the group table includes membership information identifying subfederations within the federation infrastructure. Each node in the federation maintains neighborhood information for each subfederation of which the node is aware. The system determines that no entry for the identified subfederation exists in the joining node's group table and, based on the determination, routes a group join message to a rendezvous point within the federation infrastructure. The rendezvous point checks its group table for an entry corresponding to the identified subfederation. The system also receives an indication from the rendezvous point indicating that the rendezvous point's group table does not include a corresponding entry for the identified subfederation and that the joining node is the first member of the identified subfederation. | 12-24-2009 |
20090327312 | ORGANIZING RESOURCES INTO COLLECTIONS TO FACILITATE MORE EFFICIENT AND RELIABLE RESOURCE ACCESS - The present invention extends to methods, systems, and computer program products for organizing resources into collections to facilitate more efficient and reliable resource access. Namespace managers communicate with one another to form a federation namespace infrastructure. The infrastructure can efficiently route, migrate, and process namespace requests, such as, for example, namespace registration requests from providers requesting to manage portions of namespaces and lookup requests from consumers requesting access to managed resources. Resources can be registered in and made accessible from multiple different namespaces. Resources can be identified using nested queries that filter results at multiple levels of a hierarchical namespace. | 12-31-2009 |
20100005071 | ORGANIZING RESOURCES INTO COLLECTIONS TO FACILITATE MORE EFFICIENT AND RELIABLE RESOURCE ACCESS - The present invention extends to methods, systems, and computer program products for organizing resources into collections to facilitate more efficient and reliable resource access. Namespace managers communicate with one another to form a federation namespace infrastructure. The infrastructure can efficiently route, migrate, and process namespace requests, such as, for example, namespace registration requests from providers requesting to manage portions of namespaces and lookup requests from consumers requesting access to managed resources. Resources can be registered in and made accessible from multiple different namespaces. Resources can be identified using nested queries that filter results at multiple levels of a hierarchical namespace. | 01-07-2010 |
20100046399 | RENDEZVOUSING RESOURCE REQUESTS WITH CORRESPONDING RESOURCES - The present invention extends to methods, systems, and computer program products for rendezvousing resource requests with corresponding resources. Doubly linked sorted lists are traversed using modulo arithmetic in both directions. Sorted lists can be partitioned based on a multiple proximity metrics. Node routing tables provide a logarithmic index to nodes within the ID space of the federation infrastructure to facilitate more efficient routing. Messages can be routed to nodes within a ring and proximally routed to nodes in other partitioned rings. | 02-25-2010 |
20110082928 | MAINTAINING CONSISTENCY WITHIN A FEDERATION INFRASTRUCTURE - The present invention extends to methods, systems, and computer program products for a joining node to join a ring of nodes within a rendezvous federation. Embodiments of the invention include establishing a neighborhood of multiple nodes on the ring of nodes. The joining node indicates its intent to take id-space ownership for a portion of the id-space between the joining node and a selected immediately adjacent node. The joining node initiates a one-way monitoring relationship with the selected immediately adjacent node. The joining node receiving an indication from the selected immediately adjacent node that indicates acceptance of the joining node's intent to take id-space ownership for a portion of the id-space between the joining node and the selected node and indicates establishment of a one-way monitoring relationship between the selected node and the joining node. The joining node agrees to participate in a one-way monitoring relationship with the selected node. | 04-07-2011 |
20110235551 | RENDEZVOUSING RESOURCE REQUESTS WITH CORRESPONDING RESOURCES - The present invention extends to methods, systems, and computer program products for rendezvousing resource requests with corresponding resources. Doubly linked sorted lists are traversed using modulo arithmetic in both directions. Sorted lists can be partitioned based on a multiple proximity metrics. Node routing tables provide a logarithmic index to nodes within the ID space of the federation infrastructure to facilitate more efficient routing. Messages can be routed to nodes within a ring and proximally routed to nodes in other partitioned rings. | 09-29-2011 |
20110238841 | RENDEZVOUSING RESOURCE REQUESTS WITH CORRESPONDING RESOURCES - The present invention extends to methods, systems, and computer program products for rendezvousing resource requests with corresponding resources. Doubly linked sorted lists are traversed using modulo arithmetic in both directions. Sorted lists can be partitioned based on a multiple proximity metrics. Node routing tables provide a logarithmic index to nodes within the ID space of the federation infrastructure to facilitate more efficient routing. Messages can be routed to nodes within a ring and proximally routed to nodes in other partitioned rings. | 09-29-2011 |
20110296069 | Fabric Based Lock Manager Service - A replicated finite state machine lock service facilitates resource sharing in a distributed system. A lock request from a client identifies a resource and a lock-mode, and requests a leaseless lock on the resource. The service uses client instance identifiers to categorize requests as duplicate, stale, abandoned, or actionable. A lock may be abandoned when a client holding the lock goes down. After a per-client abandonment timer expires, the lock service may treat any exclusive lock granted to the client as abandoned, and treat any non-exclusive lock granted to the client as unlocked. The service tries to notify a lock-holding client if another client requests the same lock, and treats the lock as abandoned if the notification attempt fails. An abandoned read lock is granted to a different client on request. An abandoned write lock is granted or refused depending on whether the requesting client accepts abandoned write locks. | 12-01-2011 |
20120036237 | DATA CONSISTENCY WITHIN A FEDERATION INFRASTRUCTURE - A primary node is elected from among a plurality of nodes in a replica set of nodes. The primary node accepts and processes client data access requests. The replica set includes the primary node and other secondary nodes. The primary node receives client data access requests and assigns a data sequence number to each client data access request that mutates state in the order the client data access requests are received. The data sequence numbers include a linearized processing order that is followed by each of the nodes in the replica set. The primary node sends the mutating client data access requests including any corresponding data sequence numbers to the secondary nodes. The primary node receives, from a threshold number of secondary nodes, an acknowledgement indicating reception of the client data access request. The primary node commits the data mutating access request. | 02-09-2012 |
20120079234 | PERFORMING COMPUTATIONS IN A DISTRIBUTED INFRASTRUCTURE - The present invention extends to methods, systems, and computer program products for performing computations in a distributed infrastructure. Embodiments of the invention include a general purpose distributed computation infrastructure that can be used to perform efficient (in-memory), scalable, failure-resilient, atomic, flow-controlled, long-running state-less and state-full distributed computations. Guarantees provided by a distributed computation infrastructure can build upon existent guarantees of an underlying distributed fabric in order to hide the complexities of fault-tolerance, enable large scale highly available processing, allow for efficient resource utilization, and facilitate generic development of stateful and stateless computations. A distributed computation infrastructure can also provide a substrate on which existent distributed computation models can be enhanced to become failure-resilient. | 03-29-2012 |
20120331103 | ORGANIZING RESOURCES INTO COLLECTIONS TO FACILITATE MORE EFFICIENT AND RELIABLE RESOURCE ACCESS - Resources are organized into collections to facilitate more efficient and reliable resource access. Namespace managers communicate with one another to form a federation namespace infrastructure. The infrastructure can efficiently route, migrate, and process namespace requests, such as, for example, namespace registration requests from providers requesting to manage portions of namespaces and lookup requests from consumers requesting access to managed resources. Resources can be registered in and made accessible from multiple different namespaces. Resources can be identified using nested queries that filter results at multiple levels of a hierarchical namespace. | 12-27-2012 |
20120331122 | ORGANIZING RESOURCES INTO COLLECTIONS TO FACILITATE MORE EFFICIENT AND RELIABLE RESOURCE ACCESS - Resources are organized into collections to facilitate more efficient and reliable resource access. Namespace managers communicate with one another to form a federation namespace infrastructure. The infrastructure efficiently routes, migrates, and processes namespace requests, such as, for example, namespace registration requests from providers requesting to manage portions of namespaces and lookup requests from consumers requesting access to managed resources. Resources are registered in and made accessible from multiple different namespaces. Resources are identified using nested queries that filter results at multiple levels of a hierarchical namespace. | 12-27-2012 |
20130290398 | PERFORMING COMPUTATIONS IN A DISTRIBUTED INFRASTRUCTURE - The present invention extends to methods, systems, and computer program products for performing computations in a distributed infrastructure. Embodiments of the invention include a general purpose distributed computation infrastructure that can be used to perform efficient (in-memory), scalable, failure-resilient, atomic, flow-controlled, long-running state-less and state-full distributed computations. Guarantees provided by a distributed computation infrastructure can build upon existent guarantees of an underlying distributed fabric in order to hide the complexities of fault-tolerance, enable large scale highly available processing, allow for efficient resource utilization, and facilitate generic development of stateful and stateless computations. A distributed computation infrastructure can also provide a substrate on which existent distributed computation models can be enhanced to become failure-resilient. | 10-31-2013 |
20140207925 | CLUSTER VOTER MODEL - Determining if a new federation should be formed. A method includes a voter node determining that it has sufficient votes to form a new federation. The method further includes determining that no node existing in a previous federation already has a quorum of valid global tickets. Each global ticket indicates that a node agrees that a federation should continue to exist. As a result, the voter node forms a new federation. | 07-24-2014 |
20140208173 | COMMON LEASE AGENT FOR CLUSTER COMMUNICATION - Detecting failures of interconnected machines. A method includes establishing a machine to machine lease at a first machine using a first lease agent at the first machine to a second lease agent at a second machine as a result of an application on the first machine requesting to establish a lease with an application on the second machine. Using the machine to machine lease, the method further includes detecting a communication failure between the first machine and the second machine or a machine failure of the second machine. | 07-24-2014 |
Patent application number | Description | Published |
20090193288 | ROUTING TOKEN TRANSFER AND RECOVERY PROTOCOL IN RENDEZVOUS FEDERATION - Systems and methods that provide for assignment and recovery of tokens as part of a plurality of nodes and distributed application framework/network. The assignment component assigns numbers and tasks to candidates and facilitates multiple leader election. Moreover, a recovery component can recover a token for a node that leaves the network (e.g., crashes). Such recovery component ensures consistency, wherein only one server is assigned recovery of the token and associated tasks. | 07-30-2009 |
20090213757 | NEIGHBORHOOD MAINTENANCE IN THE FEDERATION - Systems and methods that provide for joining a node to a federation. A link component facilitates joining such node thru three phases of join, introduce and advise. A plurality of messages and replies are exchanged between nodes in form of introduce, advise, and response messages. Such messages contain the sending node's full neighborhood. | 08-27-2009 |
20100106813 | QUORUM BASED TRANSACTIONALLY CONSISTENT MEMBERSHIP MANAGEMENT IN DISTRIBUTED STORAGE SYSTEMS - Systems and methods that restore a failed reconfiguration of nodes in a distributed environment. By analyzing reports from read/write quorums of nodes associated with a configuration, automatic recovery for data partitions can be facilitated. Moreover, a configuration manager component tracks current configurations for replication units and determines whether a reconfiguration is required (e.g., due to node failures, node recovery, replica additions/deletions, replica moves, or replica role changes, and the like.) Reconfigurations of data activated as being replicated from an old configuration to being replicated on a new configuration may be performed in a transactionally consistent manner based on dynamic quorums associated with the new configuration and the old configuration. | 04-29-2010 |
20100106831 | BOOTSTRAP RENDEZVOUS FEDERATION - Systems and methods that ensure formation of a single ring from a seed node at any given time. A “bootstrap” phase is included in a node's life cycle, to mitigate adverse affects of split-brain conditions in a network. During such bootstrap phase, if an existing ring is found, the seed node can join the existing ring in a same manner as a non-seed node does. If no ring is detected, the bootstrap phase attempts to elect a seed node to be the “super-seed node”, wherein a new ring can then be formed with such new super-seed node as the first node. | 04-29-2010 |
20100107002 | FAILURE NOTIFICATION IN RENDEZVOUS FEDERATION - Systems and methods that supply a global knowledge on what nodes are available in the system, via employing routing tokens that are analyzed by a centralized management component to infer status for the nodes. When nodes fail, the routing tokens associated therewith are acquired by neighboring nodes, and the global knowledge updated. Moreover, upon inferring a failed or down status for a node, a challenge can be sent to a node reporting such failure to verify actual failure(s). | 04-29-2010 |
20100114826 | CONFIGURATION MANAGEMENT IN DISTRIBUTED DATA SYSTEMS - Systems and methods for managing configurations of data nodes in a distributed environment A configuration manager is implemented as a set of distributed master nodes that may use quorum-based processing to enable reliable identification of master nodes storing current configuration information, even if some of the master nodes fail. If a quorum of master nodes cannot be achieved or some other event occurs that precludes identification of current configuration information, the configuration manager may be rebuilt by analyzing reports from read/write quorums of nodes associated with a configuration, allowing automatic recovery of data partitions. | 05-06-2010 |
20110194558 | RELIABLE BROADCAST IN A FEDERATION OF NODES - Architecture that provides reliable communications of broadcast data (e.g., a message) in a collection of nodes. Each node in the collection is assigned a range of identifiers in a token. The union of the tokens for all nodes is the entire identifier range space. Each node that receives a reliable broadcast message from an originator node acknowledges receipt of the message using its token. One or more intermediate nodes forward the message from the originator node to other nodes with which the originator node has no direct communications (multi-level node structure). The indirect nodes each send acknowledgements back to the parent nodes (which can be an intermediate node) which combine the tokens to ensure the entire range space for the associated assigned token range is covered. The originator node ultimately receives tokens to compute if all nodes have received the message. | 08-11-2011 |
20130232115 | Quorum Based Transactionally Consistent Membership Management in Distributed Storage - Systems and methods that restore a failed reconfiguration of nodes in a distributed environment. By analyzing reports from read/write quorums of nodes associated with a configuration, automatic recovery for data partitions can be facilitated. Moreover, a configuration manager component tracks current configurations for replication units and determines whether a reconfiguration is required (e.g., due to node failures, node recovery, replica additions/deletions, replica moves, or replica role changes, and the like.) Reconfigurations of data activated as being replicated from an old configuration to being replicated on a new configuration may be performed in a transactionally consistent manner based on dynamic quorums associated with the new configuration and the old configuration. | 09-05-2013 |