Patents by Inventor Manik Surtani
Manik Surtani has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 10187463Abstract: An example method includes: identifying, by a new node, an address of a shared data store comprising information on a current membership in a peer-to-peer system, wherein the shared data store is shared by a plurality of nodes that are current members of the peer-to-peer system, wherein the shared data store is a container for storing data in a storage cloud; sending, by the new node, a first message comprising an address of the new node to the shared data store; requesting, by the new node, at least one membership data structure from the shared data store; receiving, by the new node, a second message comprising the at least one membership data structure; generating, by the new node, a new membership data structure comprising the address of the new node and the plurality of addresses for the plurality of nodes identified in the at least one membership data structure; sending, by the new node, a third message comprising the new membership data structure to the shared data store; and joining, by the new node, tType: GrantFiled: June 27, 2017Date of Patent: January 22, 2019Assignee: Red Hat, Inc.Inventors: Manik Surtani, Bela Ban
-
Publication number: 20170295228Abstract: An example method includes: identifying, by a new node, an address of a shared data store comprising information on a current membership in a peer-to-peer system, wherein the shared data store is shared by a plurality of nodes that are current members of the peer-to-peer system, wherein the shared data store is a container for storing data in a storage cloud; sending, by the new node, a first message comprising an address of the new node to the shared data store; requesting, by the new node, at least one membership data structure from the shared data store; receiving, by the new node, a second message comprising the at least one membership data structure; generating, by the new node, a new membership data structure comprising the address of the new node and the plurality of addresses for the plurality of nodes identified in the at least one membership data structure; sending, by the new node, a third message comprising the new membership data structure to the shared data store; and joining, by the new node, tType: ApplicationFiled: June 27, 2017Publication date: October 12, 2017Inventors: Manik Surtani, Bela Ban
-
Patent number: 9712340Abstract: After acquiring a network address, a computing device accesses a shared data store and writes the network address to the shared data store. The computing device additionally reads a plurality of network addresses from the shared data store, wherein the plurality of network addresses are for a plurality of nodes that are members of a peer-to-peer system. The computing device then joins the peer-to-peer system based on communicating with the plurality of nodes using the plurality of network addresses.Type: GrantFiled: February 28, 2011Date of Patent: July 18, 2017Assignee: Red Hat, Inc.Inventors: Manik Surtani, Bela Ban
-
Patent number: 9208190Abstract: A node a data grid receives a prepare request identifying data to lock for a first transaction. The prepare request indicates a locking order that is different from a locking order indicated by a prior prepare request of a second transaction using the same data. The node identifies keys that correspond to the data. The keys are co-located on the node. The node ranks the keys to define an order for acquiring locks for the data based on key identifiers that correspond to the keys. The defined order matches a locking order used by the second transaction. The node acquires locks for the data using the defined order.Type: GrantFiled: May 3, 2012Date of Patent: December 8, 2015Assignee: Red Hat, Inc.Inventors: Mircea Markus, Manik Surtani
-
Patent number: 9208211Abstract: A node in a data grid receives a client request to store an object in a database, the request including the object. The node divides the object into a plurality of key value pairs and links the plurality of key value pairs. The node then stores the plurality of key value pairs in the data grid.Type: GrantFiled: March 23, 2011Date of Patent: December 8, 2015Assignee: Red Hat, Inc.Inventors: Manik Surtani, Galder Zamarreño
-
Patent number: 9104714Abstract: A transaction originator node identifies multiple data elements distributed at multiple enlisted nodes to lock for a transaction managed by the transaction originator node. The transaction originator node determines which of the enlisted nodes is a first enlisted node in a lock order for the transaction and sends an update request to the first enlisted node in the lock order to lock a data element residing at the first enlisted node. The transaction originator node sends update requests to remaining enlisted nodes in the lock order to cache the update requests until the remaining enlisted nodes receive a message to perform a lock.Type: GrantFiled: May 31, 2012Date of Patent: August 11, 2015Assignee: Red Hat, Inc.Inventors: Mircea Markus, Manik Surtani
-
Patent number: 9092335Abstract: An apparatus and a method for accessing data at a server node of a data grid system with distributed cache is described. The server receives a request to access a logical tree structure of cache nodes at a tree structure interface module of the server. The tree structure interface operates on a flat map structure of the cache nodes corresponding to the logical tree structure, transparent to the request. Each cache node is defined and operated on using a two-dimensional coordinate including a fully qualified name and a type.Type: GrantFiled: March 26, 2010Date of Patent: July 28, 2015Assignee: Red Hat, Inc.Inventor: Manik Surtani
-
Patent number: 8949294Abstract: A proxy server for a data grid receives an object and a client request to store the object in a database using a first database protocol, wherein the request and the object have a first format that complies with the first database protocol. The first proxy server translates at least one of the object or the request into a second format that complies with a second protocol used by the data grid. A node of the data grid then processes the request to store the object on the data grid.Type: GrantFiled: March 23, 2011Date of Patent: February 3, 2015Assignee: Red Hat, Inc.Inventors: Manik Surtani, Galder Zamarreño
-
Patent number: 8914599Abstract: An apparatus and a method for providing amortized lock access in a data container is described. Each access from each thread of a process in a memory to each object of a data container in the memory is recorded in a queue of the data container. A queue manager determines whether the recorded number of accesses in the queue has reached a predetermined threshold. The queue manager executes a lock algorithm and an eviction algorithm on all objects in the data container when the recorded number of accesses in the queue has reached the predetermined threshold. The lock algorithm is configured to lock objects in the data container while the eviction algorithm is performed on the data container. The eviction algorithm is configured to evict one or more objects from the data container pursuant to the eviction algorithm.Type: GrantFiled: October 12, 2010Date of Patent: December 16, 2014Assignee: Red Hat, Inc.Inventors: Manik Surtani, Vladimire Blagojevic
-
Patent number: 8805984Abstract: A client computing system identifies a start of a multi-operational transaction pertaining to access of data stored in caches being managed by nodes residing in Java Virtual Machines in an in-memory data grid. The client computing system stores transaction context data indicating the start of the multi-operational transaction and identifies an application request to perform an operation pertaining to the multi-operational transaction. The application request is from an application that resides outside of the Java Virtual Machines of the nodes. The client computing system determines the transaction context of the operation based on the transaction context data and sends an operation request over a network to a managing node in the in-memory data grid to manage the multi-operational transaction. The operation request includes header data based on the transaction context data.Type: GrantFiled: July 14, 2011Date of Patent: August 12, 2014Assignee: Red Hat, Inc.Inventors: Mircea Markus, Manik Surtani
-
Patent number: 8719307Abstract: An apparatus and a method for forming a concurrent linked hash map is described. Doubly linked nodes of a linked list are formed in a data container of a networked memory. A hash table is generated from the doubly linked nodes. A parent node is located in the hash table to update a reference of a node in the data container. The parent node is processed in a forward direction of the linked list.Type: GrantFiled: April 23, 2010Date of Patent: May 6, 2014Assignee: Red Hat, Inc.Inventors: Manik Surtani, Jason Greene
-
Patent number: 8630979Abstract: An apparatus and a method operating on data at a server node of a data grid system with distributed cache. Data is copied to a network cloud of storage services remotely coupled to a server node with an asynchronous input output interface. The asynchronous input output interface is configured to asynchronously communicate with the network cloud of storage services. Confirmation that the data has been copied on the network cloud of storage services is received at the server node.Type: GrantFiled: February 26, 2010Date of Patent: January 14, 2014Assignee: Red Hat, Inc.Inventors: Manik Surtani, Adrian Cole
-
Patent number: 8612464Abstract: A system and method for locating a data entry in a server cluster using a hash function and hash codes that can be implemented on any platform, system, or in any language. In one embodiment, a client hashes a key corresponding to a data entry to be accessed from the server cluster. The hashing is performed with a hash function that is used by a cluster of servers to provide a distributed data repository. The client further compares the hash result with hash codes of the servers to identify one of the servers as a key holder that stores the data entry. The client then requests the key holder for access to the data entry.Type: GrantFiled: September 2, 2010Date of Patent: December 17, 2013Assignee: Red Hat, Inc.Inventors: Galder Zamarreno, Manik Surtani
-
Publication number: 20130325827Abstract: A transaction originator node identifies multiple data elements distributed at multiple enlisted nodes to lock for a transaction managed by the transaction originator node. The transaction originator node determines which of the enlisted nodes is a first enlisted node in a lock order for the transaction and sends an update request to the first enlisted node in the lock order to lock a data element residing at the first enlisted node. The transaction originator node sends update requests to remaining enlisted nodes in the lock order to cache the update requests until the remaining enlisted nodes receive a message to perform a lock.Type: ApplicationFiled: May 31, 2012Publication date: December 5, 2013Applicant: RED HAT INC.Inventors: Mircea Markus, Manik Surtani
-
MANAGING COPIES OF DATA ON MULTIPLE NODES USING A DATA CONTROLLER NODE TO AVOID TRANSACTION DEADLOCK
Publication number: 20130318314Abstract: A data controller node receives a request to update data stored at the data controller node for a transaction managed by a transaction originator node. The data controller node locks the data at the data controller node and identifies copies of the data residing at other nodes. The data controller node sends a message to the other nodes to update the copy at the other nodes without locking the copy of the data at the other nodes. The data controller node determines whether an acknowledgment is received from each of the other nodes that the copy of the data are updated for the transaction and updates the locked data at the data controller node for the transaction in response to receiving the acknowledgment from each of the other nodes.Type: ApplicationFiled: May 25, 2012Publication date: November 28, 2013Applicant: RED HAT, INC.Inventors: Mircea Markus, Manik Surtani -
Publication number: 20130297580Abstract: A node a data grid receives a prepare request identifying data to lock for a first transaction. The prepare request indicates a locking order that is different from a locking order indicated by a prior prepare request of a second transaction using the same data. The node identifies keys that correspond to the data. The keys are co-located on the node. The node ranks the keys to define an order for acquiring locks for the data based on key identifiers that correspond to the keys. The defined order matches a locking order used by the second transaction. The node acquires locks for the data using the defined order.Type: ApplicationFiled: May 3, 2012Publication date: November 7, 2013Applicant: Red Hat, Inc.Inventors: Mircea Markus, Manik Surtani
-
Patent number: 8402106Abstract: An apparatus and a method for operating on data at a cache node of a data grid system is described. An asynchronous future-based interface of a computer system receives a request to operate on a cache node of a cluster. An acknowledgment is sent back upon receipt of the request prior to operating on the cache node. The cache node is then operated on based on the request. The operation is replicated to other cache nodes in the cluster. An acknowledgment that the operation has been completed in the cluster is sent back.Type: GrantFiled: April 14, 2010Date of Patent: March 19, 2013Assignee: Red Hat, Inc.Inventor: Manik Surtani
-
Publication number: 20130019000Abstract: A client computing system identifies a start of a multi-operational transaction pertaining to access of data stored in caches being managed by nodes residing in Java Virtual Machines in an in-memory data grid. The client computing system stores transaction context data indicating the start of the multi-operational transaction and identifies an application request to perform an operation pertaining to the multi-operational transaction. The application request is from an application that resides outside of the Java Virtual Machines of the nodes. The client computing system determines the transaction context of the operation based on the transaction context data and sends an operation request over a network to a managing node in the in-memory data grid to manage the multi-operational transaction. The operation request includes header data based on the transaction context data.Type: ApplicationFiled: July 14, 2011Publication date: January 17, 2013Inventors: Mircea Markus, Manik Surtani
-
Publication number: 20120246190Abstract: A node in a data grid receives a client request to store an object in a database, the request including the object. The node divides the object into a plurality of key value pairs and links the plurality of key value pairs. The node then stores the plurality of key value pairs in the data grid.Type: ApplicationFiled: March 23, 2011Publication date: September 27, 2012Inventors: Manik Surtani, Galder Zamarreño
-
Publication number: 20120246202Abstract: A proxy server for a data grid receives an object and a client request to store the object in a database using a first database protocol, wherein the request and the object have a first format that complies with the first database protocol. The first proxy server translates at least one of the object or the request into a second format that complies with a second protocol used by the data grid. A node of the data grid then processes the request to store the object on the data grid.Type: ApplicationFiled: March 23, 2011Publication date: September 27, 2012Inventors: Manik Surtani, Galder Zamarreño