Patents by Inventor Manavalan KRISHNAN
Manavalan KRISHNAN 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: 9626400Abstract: A computer system detects a request to access a first data object stored in a tiered data structure, that includes internal nodes and leaf nodes, where data objects in the leaf nodes include unique key information and corresponding values, and the first data object is uniquely identified by a first key. In response to detecting the request to access the first data object, the computer system retrieves a leaf node that includes the first data object and identifies the first data object in the leaf node by combining unique key information of the first data object with a key prefix that is stored separately in the leaf node to generate a combined key and determining that the combined key matches the first key that uniquely identifies the first data object. After identifying the first data object, the computer system provides access to the first data object.Type: GrantFiled: July 21, 2014Date of Patent: April 18, 2017Assignee: SANDISK TECHNOLOGIES LLCInventors: Ramesh Chander, Johann George, Brian W. O'Krafka, Manavalan Krishnan
-
Publication number: 20170091243Abstract: A method of managing a storage system having one or more storage devices includes receiving a request to access, in a tiered data structure, a data object and one or more attributes of the data object and processing the access request. The request includes a first key value for the data object and respective second key values for the one or more attributes of the data object. Modified key values for the attributes of the data object are generated in accordance with at least a portion of the first key value and used to access tree entries for the data object attributes in one or more leaf nodes of the tiered data structure. A tree entry for the data object is also accessed from the same set of one or more leaf nodes.Type: ApplicationFiled: May 2, 2016Publication date: March 30, 2017Inventors: Tomy Ammuthan Cheru, Brian W. O'Krafka, Allen Samuels, Manavalan Krishnan
-
Patent number: 9390021Abstract: A computer system detects a request to access a first data object stored in a tiered data structure that includes internal nodes and leaf nodes. In response to detecting the request, the computer system determines whether the first data object is stored in a cache that includes a plurality of data objects from the tiered data structure that are stored separately from their corresponding leaf node in the cache. When the first data object is stored in the cache, the computer system returns the first data object from the cache and when the first data object is not stored in the cache, the computer system traverses the tiered data structure to a leaf node that includes the first data object and returns the first data object from the leaf node for the first data object in the tiered data structure.Type: GrantFiled: July 21, 2014Date of Patent: July 12, 2016Assignee: SANDISK TECHNOLOGIES LLCInventors: Brian W. O'Krafka, Tomy A. Cheru, Manavalan Krishnan, John Busch
-
Publication number: 20150286695Abstract: A memory controller detects a request, with a key to a data object and a value, to perform an operation. The memory controller locates the data object by mapping the key to a location of the data object in a tiered data structure and identifies a sequence number of the data object. When the sequence number of the data object is greater than a sequence number of a snapshot of the tiered data structure, the memory controller replaces the data object with a modified data object, including the key and the value, and assigns the modified object a unique sequence number. When the sequence number of the data object is less than the sequence number of the snapshot, the memory controller inserts a new data object, including the key and the value, into the tiered data structure and assigns the new data object the unique sequence number.Type: ApplicationFiled: August 7, 2014Publication date: October 8, 2015Inventors: Harihara Kadayam, Niranjan Patre Neelakanta, Ajit Kumar Tapse, Manavalan Krishnan, Brian Walter O'Krafka, Johann George
-
Publication number: 20150278093Abstract: A computer system detects a request to access a first data object stored in a tiered data structure that includes internal nodes and leaf nodes. In response to detecting the request, the computer system determines whether the first data object is stored in a cache that includes a plurality of data objects from the tiered data structure that are stored separately from their corresponding leaf node in the cache. When the first data object is stored in the cache, the computer system returns the first data object from the cache and when the first data object is not stored in the cache, the computer system traverses the tiered data structure to a leaf node that includes the first data object and returns the first data object from the leaf node for the first data object in the tiered data structure.Type: ApplicationFiled: July 21, 2014Publication date: October 1, 2015Inventors: Brian W. O'Krafka, Tomy A. Cheru, Manavalan Krishnan, John Busch
-
Publication number: 20150278271Abstract: A computer system detects a request to access a first data object stored in a tiered data structure, that includes internal nodes and leaf nodes, where data objects in the leaf nodes include unique key information and corresponding values, and the first data object is uniquely identified by a first key. In response to detecting the request to access the first data object, the computer system retrieves a leaf node that includes the first data object and identifies the first data object in the leaf node by combining unique key information of the first data object with a key prefix that is stored separately in the leaf node to generate a combined key and determining that the combined key matches the first key that uniquely identifies the first data object. After identifying the first data object, the computer system provides access to the first data object.Type: ApplicationFiled: July 21, 2014Publication date: October 1, 2015Inventors: Ramesh Chander, Johann George, Brian W. O'Krafka, Manavalan Krishnan
-
Patent number: 8954385Abstract: Approaches for recovering a node of a distributed transactional system. When a recovering node is being brought on-line, a copy of at least a portion of a first data store maintained by an existing node is created without ceasing to process transactions against the first data store at the existing node. The recovering node creates a second data store based on the copy of the first data store. While the recovering node creates the second data store, the recovering node stores committed transaction data received from a plurality of nodes. The committed transaction data describes transactions committed against data stores maintained by the sender of the committed transaction data. The recovering node may thereafter replay, against the second data store, any transactions identified by the committed transaction data that are associated with a global transaction number that is more recent than is a reference commit number.Type: GrantFiled: June 28, 2011Date of Patent: February 10, 2015Assignee: SanDisk Enterprise IP LLCInventors: Johann George, Darpan Dinker, Manavalan Krishnan, Brian W. O'Krafka
-
Patent number: 8868487Abstract: Approaches for processing an event in an objects store, such as an MySQL database management system or a memcached caching system, that are maintained on one or more solid state devices. A plurality of threads may be instantiated. Each of the threads may be configured to retrieve items from a queue of items. Each item in the queue of items may be associated with a particular event occurring within the object store. Each event is a message that indicates an activity requiring work has occurred within the object store. When a particular thread retrieves an item from the queue of items, the particular thread processes the particular event associated with the item retrieved by the particular thread. In this way, event handling in object stores such as MySQL and memcached may be performed more efficiently on a solid state device.Type: GrantFiled: April 11, 2011Date of Patent: October 21, 2014Assignee: Sandisk Enterprise IP LLCInventors: Manavalan Krishnan, Darpan Dinker, Brian W. O'Krafka
-
Patent number: 8694733Abstract: Approaches for replicating data in a distributed transactional system. At a first node of a cluster, a per-transaction write set, comprising a plurality of write operations, is committed against a first MySQL database. One or more per-transaction write sets are replicated from the first node to a second node. Upon receiving a read query, the second node parses the read query to identify a read set, calculates a write set conflict window for the read query, and upon determining that the read set conflicts with one or more write sets in the write set conflict window, waits to process the read query until all conflicting write sets are committed. However, upon determining that the read set does not conflict any write sets in the write set conflict window, the read query is processed without first committing any write transactions in the write set conflict window for the read query.Type: GrantFiled: February 17, 2012Date of Patent: April 8, 2014Assignee: Sandisk Enterprise IP LLCInventors: Manavalan Krishnan, Darpan Dinker, Johann George
-
Patent number: 8666939Abstract: Approaches for replicating data in a distributed transactional system. At a first node of a cluster, a per-transaction write set that comprises a plurality of write operations that are performed against a first data store maintained by the first node is committed. The per-transaction write set is replicated from the first node to a second node of the cluster. At the second node, the plurality of write operations, specified by the per-transaction write set, may be performed in parallel against a second data store maintained by the second node. At the second node, two or more threads may perform a portion of the plurality of write operations against data blocks stored within an in-memory buffer.Type: GrantFiled: June 28, 2011Date of Patent: March 4, 2014Assignee: Sandisk Enterprise IP LLCInventors: Brian W. O'Krafka, Darpan Dinker, Manavalan Krishnan, Johann George
-
Publication number: 20130151467Abstract: Approaches for replicating data in a distributed transactional system. At a first node of a cluster, a per-transaction write set, comprising a plurality of write operations, is committed against a first MySQL database. One or more per-transaction write sets are replicated from the first node to a second node. Upon receiving a read query, the second node parses the read query to identify a read set, calculates a write set conflict window for the read query, and upon determining that the read set conflicts with one or more write sets in the write set conflict window, waits to process the read query until all conflicting write sets are committed. However, upon determining that the read set does not conflict any write sets in the write set conflict window, the read query is processed without first committing any write transactions in the write set conflict window for the read query.Type: ApplicationFiled: February 17, 2012Publication date: June 13, 2013Inventors: Manavalan Krishnan, Darpan Dinker, Johann George
-
Publication number: 20120005154Abstract: Approaches for recovering a node of a distributed transactional system. When a recovering node is being brought on-line, a copy of at least a portion of a first data store maintained by an existing node is created without ceasing to process transactions against the first data store at the existing node. The recovering node creates a second data store based on the copy of the first data store. While the recovering node creates the second data store, the recovering node stores committed transaction data received from a plurality of nodes. The committed transaction data describes transactions committed against data stores maintained by the sender of the committed transaction data. The recovering node may thereafter replay, against the second data store, any transactions identified by the committed transaction data that are associated with a global transaction number that is more recent than is a reference commit number.Type: ApplicationFiled: June 28, 2011Publication date: January 5, 2012Inventors: Johann George, Darpan Dinker, Manavalan Krishnan, Brian W. O'Krafka
-
Publication number: 20110320403Abstract: Approaches for replicating data in a distributed transactional system. At a first node of a cluster, a per-transaction write set that comprises a plurality of write operations that are performed against a first data store maintained by the first node is committed. The per-transaction write set is replicated from the first node to a second node of the cluster. At the second node, the plurality of write operations, specified by the per-transaction write set, may be performed in parallel against a second data store maintained by the second node. At the second node, two or more threads may perform a portion of the plurality of write operations against data blocks stored within an in-memory buffer.Type: ApplicationFiled: June 28, 2011Publication date: December 29, 2011Inventors: Brian W. O'Krafka, Darpan Dinker, Manavalan Krishnan, Johann George
-
Publication number: 20110283045Abstract: Approaches for processing an event in an objects store, such as an MySQL database management system or a memcached caching system, that are maintained on one or more solid state devices. A plurality of threads may be instantiated. Each of the threads may be configured to retrieve items from a queue of items. Each item in the queue of items may be associated with a particular event occurring within the object store. Each event is a message that indicates an activity requiring work has occurred within the object store. When a particular thread retrieves an item from the queue of items, the particular thread processes the particular event associated with the item retrieved by the particular thread. In this way, event handling in object stores such as MySQL and memcached may be performed more efficiently on a solid state device.Type: ApplicationFiled: April 11, 2011Publication date: November 17, 2011Inventors: Manavalan KRISHNAN, Darpan Dinker, Brian W. O'Krafka