Patents by Inventor SHASHWAT SRIVASTAV

SHASHWAT SRIVASTAV 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: 9858013
    Abstract: A computer-executable method, computer program product, and system for managing metadata within a distributed data storage system, including a compute node in communication with a data storage array, the computer-executable method, computer program product, and system comprising receiving a data I/O from an application executing within the distributed data storage system, and creating a first storage system within the compute node, wherein the first storage system is enabled to manage metadata related to the data I/O, and processing the data I/O using the first storage system.
    Type: Grant
    Filed: June 30, 2014
    Date of Patent: January 2, 2018
    Assignee: EMC IP Holding Company LLC
    Inventors: Shashwat Srivastav, Sriram Sankaran, Vishrut Shah, Qi Zhang, Jun Luo, Chen Wang, Huapeng Yuan, Karthik Navaneethakrishnan, Jie Song, Wei Yin
  • Patent number: 9734180
    Abstract: An object storage system having object metadata query capability. Clients can pose queries to the object system in a high-level, declarative language. A query is evaluated against stored object metadata, and only objects satisfying the query's predicates are returned. The object storage system can evaluate alternative logical and physical query plans using a cost model. Queries can be posed using familiar REST-based APIs. The object storage system includes a distributed key-value store for secondary indexing of object metadata. A user can define secondary indexes considering the most common object access patterns.
    Type: Grant
    Filed: September 30, 2014
    Date of Patent: August 15, 2017
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Stephen G. Graham, Shashwat Srivastav, Sriram Sankaran, Vishrut Shah, Qi Zhang, Jun Luo
  • Patent number: 9703768
    Abstract: An object storage system having object metadata query capability. Clients can pose queries to the object system in a high-level, declarative language. A query is evaluated against stored object metadata, and only objects satisfying the query's predicates are returned. The object storage system can evaluate alternative logical and physical query plans using a cost model. Queries can be posed using familiar REST-based APIs.
    Type: Grant
    Filed: September 30, 2014
    Date of Patent: July 11, 2017
    Assignee: EMC IP Holding Company LLC
    Inventors: Stephen G. Graham, Shashwat Srivastav
  • Publication number: 20170177652
    Abstract: Structures and processes for garbage collection of search trees under Multi-Version Concurrency Control (MVCC). Such search trees may be used to store data within a distributed storage system. A process detects live search tree elements using tracing and then identify storage chunks having no live elements as garbage to be reclaimed. The process can be paused and resumed to reduce impact on other system processing. To reduce disk fragmentation, a garbage collector may copy pages between chunks prior to reclaiming chunk capacity. Also described is a resource efficient scheduler for a garbage collection.
    Type: Application
    Filed: June 27, 2016
    Publication date: June 22, 2017
    Inventors: Mikhail Danilov, Mikhail Malygin, Ivan Tchoub, Chen Wang, Shashwat Srivastav, Andrey Fomin
  • Publication number: 20170177473
    Abstract: Systems and methods for determining garbage collection (GC) scope in a distribute storage system using chunk-based storage. The systems and methods are compatible with multi-version concurrency control (MVCC) semantics.
    Type: Application
    Filed: June 27, 2016
    Publication date: June 22, 2017
    Inventors: Mikhail Danilov, Shashwat Srivastav, Mikhail Malygin, Chen Wang, Ivan Tchoub
  • Publication number: 20170161350
    Abstract: Embodiments of the present invention relate to synchronously replicating data in a distributed computing environment. To achieve synchronous replication both an eventual consistency approach and a strong consistency approach are contemplated. Received data may be written to a log of a primary data store for eventual committal. The data may then be annotated with a record, such as a unique identifier, which facilitates the replay of the data at a secondary data store. Upon receiving an acknowledgment that the secondary data store has written the data to a log, the primary data store may commit the data and communicate an acknowledgment of success back to the client. In a strong consistency approach, the primary data store may wait to send an acknowledgement of success to the client until it receives an acknowledgment that the secondary has not only written, but also committed, the data.
    Type: Application
    Filed: December 13, 2016
    Publication date: June 8, 2017
    Inventors: Bradley Gene Calder, Niranjan Nilakantan, Shashwat Srivastav, Jiesheng Wu, Abdul Rafay Abbasi, Shane Mainali, Padmanabha Chakravarthy Uddaraju
  • Publication number: 20170083549
    Abstract: Structures and processes for garbage collection of search trees under Multi-Version Concurrency Control (MVCC). Such search trees may be used to store data within a distributed storage system. A process detects live search tree elements using tracing and then identify storage chunks having no live elements as garbage to be reclaimed. The process can be paused and resumed to reduce impact on other system processing.
    Type: Application
    Filed: March 29, 2016
    Publication date: March 23, 2017
    Inventors: Mikhail Danilov, Mikhail Malygin, Chen Wang, Ivan Tchoub, Shashwat Srivastav, Andrey Fomin, Maxim Trusov
  • Patent number: 9558194
    Abstract: A computer implemented method, computer program product, and system for providing, via a storage provisioning engine, a scalable objects store enabled to store objects across multiple heterogeneous file arrays; wherein file arrays are enabled to be actively added to the object store without pausing the file arrays; and wherein data representing the objects enabled to be balanced across the heterogeneous file arrays based.
    Type: Grant
    Filed: May 3, 2013
    Date of Patent: January 31, 2017
    Assignee: EMC IP Holding Company LLC
    Inventors: Shashwat Srivastav, Vishrut Shah, Sriram Sankaran, Jun Luo, Fredrick A. Crable, Chen Wang, Huapeng Yuan, Subba R. Gaddamadugu, David A. Gillam, Daquan Zuo, Wei Yin, Brian D. Burck
  • Patent number: 9519555
    Abstract: Embodiments of the present invention relate to synchronously replicating data in a distributed computing environment. To achieve synchronous replication both an eventual consistency approach and a strong consistency approach are contemplated. Received data may be written to a log of a primary data store for eventual committal. The data may then be annotated with a record, such as a unique identifier, which facilitates the replay of the data at a secondary data store. Upon receiving an acknowledgment that the secondary data store has written the data to a log, the primary data store may commit the data and communicate an acknowledgment of success back to the client. In a strong consistency approach, the primary data store may wait to send an acknowledgement of success to the client until it receives an acknowledgment that the secondary has not only written, but also committed, the data.
    Type: Grant
    Filed: May 23, 2011
    Date of Patent: December 13, 2016
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Bradley Gene Calder, Niranjan Nilakantan, Shashwat Srivastav, Jiesheng Wu, Abdul Rafay Abbasi, Shane Mainali, Padmanabha Chakravarthy Uddaraju
  • Patent number: 9495293
    Abstract: A computer implemented method, system, and computer program product for enabling consistency between zones comprising creating a lease agreement between a first zone and at least a second zone; wherein the lease indicates that the first zone is the owner of an object; wherein the lease agreement dictates that a notification is to be sent before a cached object in the first zone is updated if the lease is still valid; wherein the lease indicates the first zone is to send a heartbeat to the second zone within the predetermined period of time if the object has not been changed and the lease is still valid; and setting up heartbeats from the first zone to at least a second zone within a predetermined amount of time; wherein the heartbeat indicates that the lease is still valid and the object has not been changed.
    Type: Grant
    Filed: June 30, 2014
    Date of Patent: November 15, 2016
    Assignee: EMC IP Holding Company, LLC
    Inventors: Shashwat Srivastav, Sriram Sankaran, Subba Gaddamadugu, Peter Musial, Andrew Robertson, Huapeng Yuan, Qi Zhang, Jun Luo, Vishrut Shah, Chen Wang
  • Patent number: 9442938
    Abstract: In one aspect, a method includes using a file system layer configured to interact with a plurality of volumes and enabling an application to interact with any of the plurality of volumes using a single file system format provided by the file system layer. At least two of the plurality of volumes have different file system formats.
    Type: Grant
    Filed: September 26, 2013
    Date of Patent: September 13, 2016
    Assignee: EMC Corporation
    Inventors: Shashwat Srivastav, Vishrut Shah, Sriram Sankaran, Jun Luo, Chen Wang, Huapeng Yuan, Subba R. Gaddamadugu, Qi Zhang, Wei Yin, Jie Song, Andrew D. Robertson, Peter M. Musial
  • Publication number: 20160140202
    Abstract: Embodiments of the present invention relate to asynchronously replicating data in a distributed computing environment. To achieve asynchronous replication, data received at a primary data store may be annotated with information, such as an identifier of the data. The annotated data may then be communicated to a secondary data store, which may then write the data and annotated information to one or more logs for eventual replay and committal at the secondary data store. The primary data store may communicate an acknowledgment of success in committing the data at the primary data store as well as of success in writing the data to the secondary data store. Additional embodiments may include committing the data at the secondary data store in response to receiving an instruction that authorizes committal of data through an identifier.
    Type: Application
    Filed: January 22, 2016
    Publication date: May 19, 2016
    Inventors: Bradley Gene Calder, Niranjan Nilakantan, Shashwat Srivastav, Jiesheng Wu, Abdul Rafay Abbasi, Shane Mainali, Padmanabha Chakravarthy Uddaraju
  • Patent number: 9336232
    Abstract: In one aspect, a method includes enabling a REST interface to have access to a volume, receiving a request to allow a native file access to the volume and allowing an application to use a native file interface to have access to the volume while preventing the modifications to the volume through the REST interface if the request is received.
    Type: Grant
    Filed: September 26, 2013
    Date of Patent: May 10, 2016
    Assignee: EMC Corporation
    Inventors: Shashwat Srivastav, Vishrut Shah, Sriram Sankaran, Jun Luo, Chen Wang, Huapeng Yuan, Subba R. Gaddamadugu, Qi Zhang, Wei Yin, Jie Song, Andrew D. Robertson, Peter M. Musial
  • Publication number: 20160070720
    Abstract: Presented herein are methods of replicating versioned and hierarchical data structures, as well as data structures representing complex transactions. Due to interdependencies between data entities and a lack of guaranteed message ordering, simple replication methods employed for simple data types cannot be used. Operations on data structures exhibit dependencies between the messages making up the operations. This strategy can be extended to various types of complex transactions by considering certain messages to depend on other messages or on the existence of other entries at the data store. Regardless of origin, these dependencies can be enforced by suspending the processing of messages with unsatisfied dependencies until all of its dependencies have been met. Alternately, transactions can be committed immediately, creating entities that include versioned identifiers for each of their dependencies. These entities can then be garbage collected of the parent objects are not subsequently created.
    Type: Application
    Filed: July 8, 2015
    Publication date: March 10, 2016
    Inventors: BRADLEY GENE CALDER, NIRANJAN NILAKANTAN, SHASHWAT SRIVASTAV, JIESHENG WU, ABDUL RAFAY ABBASI, SHANE MAINALI, PADMANABHA CHAKRAVARTHY UDDARAJU, JU WANG, HEMAL KHATRI, ARILD SKJOLSVOLD, HARSHAWARDHAN GADGIL
  • Patent number: 9274906
    Abstract: Embodiments of the present invention relate to invoking and managing a failover of a storage account between partitions within a distributed computing environment, where each partition represents a key range of data for the storage account. The partitions affected by the failover include source partitions hosted on a primary storage stamp and destination partitions hosted on a secondary storage stamp, where the storage account's data is being actively replicated from the primary to the secondary storage stamp. Upon receiving a manual or automatic indication to perform the failover, configuring the source partitions to independently perform flush-send operations (e.g., distributing pending messages as a group) and then configuring the destination partitions to independently perform flush-replay operations (e.g., aggressively replaying currently pending transactions).
    Type: Grant
    Filed: June 9, 2014
    Date of Patent: March 1, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Bradley Gene Calder, Niranjan Nilakantan, Shashwat Srivastav, Jiesheng Wu, Arild Einar Skjolsvold, Maxim Mazeev, Abdul Rafay Abbasi, Shane Mainali, Hemal Khatri, Ju Wang, Padmanabha Chakravarthy Uddaraju, Leonidas Rigas
  • Patent number: 9251021
    Abstract: Embodiments of the present invention relate to asynchronously replicating data in a distributed computing environment. To achieve asynchronous replication, data received at a primary data store may be annotated with information, such as an identifier of the data. The annotated data may then be communicated to a secondary data store, which may then write the data and annotated information to one or more logs for eventual replay and committal at the secondary data store. The primary data store may communicate an acknowledgment of success in committing the data at the primary data store as well as of success in writing the data to the secondary data store. Additional embodiments may include committing the data at the secondary data store in response to receiving an instruction that authorizes committal of data through a identifier.
    Type: Grant
    Filed: May 23, 2011
    Date of Patent: February 2, 2016
    Inventors: Bradley Gene Calder, Niranjan Nilakantan, Shashwat Srivastav, Jiesheng Wu, Abdul Rafay Abbasi, Shane Mainali, Padmanabha Chakravarthy Uddaraju
  • Patent number: 9223517
    Abstract: A method, system, and computer program product for providing, via a provisioning engine, a scalable set of indexed key-value pairs enabled to store objects in a data storage environment; wherein the data representing the objects is enabled to be spread across arrays in the data storage environment; wherein additional arrays are enabled to be added to the data storage environment and included in the indexed key-value pairs; wherein the data stored across the arrays may be balanced.
    Type: Grant
    Filed: May 3, 2013
    Date of Patent: December 29, 2015
    Assignee: EMC Corporation
    Inventors: Shashwat Srivastav, Vishrut Shah, Sriram Sankaran, Jun Luo, Chen Wang, Huapeng Yuan, Subba R. Gaddamadugu, Qi Zhang, Jie Song, Andrew D. Robertson, Peter M. Musial
  • Patent number: 9098470
    Abstract: Presented herein are methods of replicating versioned and hierarchical data structures, as well as data structures representing complex transactions. Due to interdependencies between data entities and a lack of guaranteed message ordering, simple replication methods employed for simple data types cannot be used. Operations on data structures exhibit dependencies between the messages making up the operations. This strategy can be extended to various types of complex transactions by considering certain messages to depend on other messages or on the existence of other entries at the data store. Regardless of origin, these dependencies can be enforced by suspending the processing of messages with unsatisfied dependencies until all of its dependencies have been met. Alternately, transactions can be committed immediately, creating entities that include versioned identifiers for each of their dependencies. These entities can then be garbage collected of the parent objects are not subsequently created.
    Type: Grant
    Filed: May 23, 2011
    Date of Patent: August 4, 2015
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Bradley Gene Calder, Niranjan Nilakantan, Shashwat Srivastav, Jiesheng Wu, Abdul Rafay Abbasi, Shane Mainali, Padmanabha Chakravarthy Uddaraju, Ju Wang, Hemal Khatri, Arild Skjolsvold, Harshawardhan Gadgil
  • Patent number: 8918362
    Abstract: Embodiments of the present invention relate to systems, methods, and computer storage media for replicating data in a distributed computing environment utilizing a combination of replication methodologies. A full-object replication may be utilized to replicate a full state of an object from a primary data store to a secondary data store. A checkpoint created after initiating the full-object replication may be parsed to identify changes to the object that have been entered since initiating the full-object replication. This replication process is referred to as a delta-checkpoint replication methodology. Additionally, in an embodiment, a log-based replication methodology may be utilized. The log-based replication may communicate data from a log of the primary data store to the secondary data store. It is also contemplated in an exemplary embodiment that when the log-based replication fails to maintain a throughput threshold, one of the other replication methodologies may be initiated, at least temporarily.
    Type: Grant
    Filed: May 23, 2011
    Date of Patent: December 23, 2014
    Assignee: Microsoft Corporation
    Inventors: Bradley Gene Calder, Niranjan Nilakantan, Shashwat Srivastav, Jiesheng Wu, Abdul Rafay Abbasi, Shane Mainali, Padmanabha Chakravarthy Uddaraju
  • Patent number: 8886796
    Abstract: Embodiments of the present invention relate to invoking and managing load-balancing operation(s) applied to partitions within a distributed computing environment, where each partition represents a key range of data for a storage account. The partitions affected by the load-balancing operation(s) are source partitions hosted on a primary storage stamp and/or destination partitions hosted on a secondary storage stamp, where the primary and secondary storage stamps are located in geographically distinct areas and are equipped to replicate the storage account's data therebetween. The load-balancing operation(s) include splitting partitions into child partitions upon detecting an increased workload as a result of active replication, merging partitions to form parent partitions upon detecting a reduction in workload as a result of decreased processing-related resource consumption, or offloading partitions based on resource consumption.
    Type: Grant
    Filed: May 23, 2011
    Date of Patent: November 11, 2014
    Assignee: Microsoft Corporation
    Inventors: Bradley Gene Calder, Niranjan Nilakantan, Shashwat Srivastav, Jiesheng Wu, Abdul Rafay Abbasi, Shane Mainali, Padmanabha Chakravarthy Uddaraju, Arild Einar Skjolsvold, Hemal Khatri, Ju Wang