Patents by Inventor Shiv Rajpal
Shiv Rajpal 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: 9891835Abstract: A system for storing data in a dynamic fashion. The system includes a storage entity. The storage entity includes portions of a plurality of different persistent storage devices. Each storage device has a set of constraints. The storage entity is configured to store data in a dynamic fashion in a layout on the persistent storage devices of the storage entity that meets the different data requirements for the data while still being within the constraints for the persistent storage devices. The storage entity is configured to change the layout for a portion of the data as requirements related to at least one of performance or resiliency for a portion of the data change while the storage entity continues to provide the data from the storage entity.Type: GrantFiled: January 30, 2017Date of Patent: February 13, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Sachin Chiman Patel, Shiv Rajpal, Karan Mehra
-
Publication number: 20170235498Abstract: A system for storing data in a dynamic fashion. The system includes a storage entity. The storage entity includes portions of a plurality of different persistent storage devices. Each storage device has a set of constraints. The storage entity is configured to store data in a dynamic fashion in a layout on the persistent storage devices of the storage entity that meets the different data requirements for the data while still being within the constraints for the persistent storage devices. The storage entity is configured to change the layout for a portion of the data as requirements related to at least one of performance or resiliency for a portion of the data change while the storage entity continues to provide the data from the storage entity.Type: ApplicationFiled: January 30, 2017Publication date: August 17, 2017Inventors: Sachin Chiman Patel, Shiv Rajpal, Karan Mehra
-
Patent number: 9600181Abstract: A system for storing data in a dynamic fashion. The system includes a storage entity. The storage entity includes portions of a plurality of different persistent storage devices. Each storage device has a set of constraints. The storage entity is configured to store data in a dynamic fashion in a layout on the persistent storage devices of the storage entity that meets the different data requirements for the data while still being within the constraints for the persistent storage devices. The storage entity is configured to change the layout for a portion of the data as requirements related to at least one of performance or resiliency for a portion of the data change while the storage entity continues to provide the data from the storage entity.Type: GrantFiled: March 11, 2015Date of Patent: March 21, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Sachin Chiman Patel, Shiv Rajpal, Karan Mehra
-
Patent number: 9524300Abstract: A system in which a file system may operate on a volume in which the logical address extent of the volume is divided into multiple tiers, each tier providing storage having a distinct trait set by mapping the logical addresses of the volume to appropriate underlying storage systems. A volume system exposes the volume to the file system in a manner that the file system itself has awareness of the tiers, and is aware of the trait sets of each tier. The file system may thus store file system namespaces (such as directories and files) into the tiers as appropriate for the file system namespace. A provisioning system may also be provided and be configured to provision the volume to include such tiers, and if desired, to extend the tiers.Type: GrantFiled: March 14, 2013Date of Patent: December 20, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Shiv Rajpal, Juan-Lee Pang, Sarosh Cyrus Havewala, Surendra Verma, Karan Mehra, Bryan Stephen Matthew, Neal Robert Christiansen, Andrew Herron
-
Publication number: 20160266799Abstract: A system for storing data in a dynamic fashion. The system includes a storage entity. The storage entity includes portions of a plurality of different persistent storage devices. Each storage device has a set of constraints. The storage entity is configured to store data in a dynamic fashion in a layout on the persistent storage devices of the storage entity that meets the different data requirements for the data while still being within the constraints for the persistent storage devices. The storage entity is configured to change the layout for a portion of the data as requirements related to at least one of performance or resiliency for a portion of the data change while the storage entity continues to provide the data from the storage entity.Type: ApplicationFiled: March 11, 2015Publication date: September 15, 2016Inventors: Sachin Chiman Patel, Shiv Rajpal, Karan Mehra
-
Patent number: 9436399Abstract: A thinly provisioned storage system detects whether physical storage capacity is available when there is a request to allocate storage capacity, prior to data being written to the storage system. In particular, at the time when the file system allocates storage, such as when creating a file or performing an extending write (append) operation, allocating storage to an unallocated region of a sparse file, defragmenting a file, and the like, a storage system can verify that actual physical storage capacity is available. Thus, if there is insufficient actual physical capacity at the time when a storage allocation is attempted, then an error message can be sent and remedial action can be taken.Type: GrantFiled: September 23, 2015Date of Patent: September 6, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Matt Garson, Neal Christiansen, Sarosh Havewala, Shiv Rajpal, Karan Mehra, Surendra Verma, Daniel Chan
-
Patent number: 9330161Abstract: Embodiments are directed to creating global, aggregated namespaces for storage management and to providing consistent namespaces in a distributed storage system. In one scenario, a computer system defines data storage objects for each data storage node. The data storage objects uniquely identify storage elements of the data storage nodes, where each data storage object includes various associated attributes. The computer system replicates the defined data storage objects and any associated attributes from a first data storage node to a second, different data storage node among the data storage nodes. As such, the defined data storage objects are visible from any node in the data storage nodes. The computer system also aggregates the defined data storage objects for each of the data storage nodes and creates a global, aggregated namespace that includes the aggregated data storage objects for each of the data storage nodes.Type: GrantFiled: April 12, 2013Date of Patent: May 3, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Andrea D'Amato, Shiv Rajpal, Gregory Robert Domzalski, Vyacheslav Kuznetsov, Sarosh Cyrus Havewala, Ankur Kasturiya, Karan Mehra
-
Patent number: 9262313Abstract: The provisioning of a volume that has multiple tiers corresponding to different trait sets. The volume to be provisioned is identified along with multiple tiers that are to be in the volume. For each of the tiers that are to be provisioned within the volume, a corresponding trait set is identified as to be applied to each tier. This corresponding trait set may be based on underlying storage systems that are available at the time of provisioning, or which are anticipated to be available. The volume is then caused to be provisioned with the corresponding tiers having the corresponding trait sets. Also, the provisioning of a file, which is determined to have one or more storage traits. Based on these storage traits, the file is then caused to be assigned to an appropriate tier.Type: GrantFiled: March 14, 2013Date of Patent: February 16, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Andrew Herron, Sarosh Cyrus Havewala, Karan Mehra, Ankur Kasturiya, Shiv Rajpal
-
Publication number: 20160011811Abstract: A thinly provisioned storage system detects whether physical storage capacity is available when there is a request to allocate storage capacity, prior to data being written to the storage system. In particular, at the time when the file system allocates storage, such as when creating a file or performing an extending write (append) operation, allocating storage to an unallocated region of a sparse file, defragmenting a file, and the like, a storage system can verify that actual physical storage capacity is available. Thus, if there is insufficient actual physical capacity at the time when a storage allocation is attempted, then an error message can be sent and remedial action can be taken.Type: ApplicationFiled: September 23, 2015Publication date: January 14, 2016Inventors: Matt Garson, Neal Christiansen, Sarosh Havewala, Shiv Rajpal, Karan Mehra, Surendra Verma, Daniel Chan
-
Patent number: 9229809Abstract: The storage of data sets in a storage set (e.g., data sets written to hard disk drives comprising a RAID array) may diminish the performance of the storage set through non-sequential writes, particularly if the storage devices promptly write data sets that are followed by sequentially following data sets. Additionally, storage sets may exhibit inconsistencies due to non-atomic writes of data sets and verifiers (e.g., checksums) and an intervening failure, such as an occurrence of the RAID write hole. Instead, data sets and verifiers may first be written to a stored on the nonvolatile media of a storage device before being committed to the storage set. Such writes may be sequentially written to the journal, irrespective of the locations of the data sets in the storage set; and recovery of a failure may simply involve re-committing the consistent records in the journal to correct incomplete writes to the storage set.Type: GrantFiled: September 11, 2011Date of Patent: January 5, 2016Assignee: Microsoft Technology Licensing LLCInventors: Darren Moss, Karan Mehra, Rajeev Nagar, Surendra Verma, Shiv Rajpal
-
Patent number: 9146853Abstract: A thinly provisioned storage system detects whether physical storage capacity is available when there is a request to allocate storage capacity, prior to data being written to the storage system. In particular, at the time when the file system allocates storage, such as when creating a file or performing an extending write (append) operation, allocating storage to an unallocated region of a sparse file, defragmenting a file, and the like, a storage system can verify that actual physical storage capacity is available. Thus, if there is insufficient actual physical capacity at the time when a storage allocation is attempted, then an error message can be sent and remedial action can be taken.Type: GrantFiled: March 28, 2013Date of Patent: September 29, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Matt Garson, Neal Christiansen, Sarosh Havewala, Shiv Rajpal, Karan Mehra, Surendra Verma, Daniel Chan
-
Patent number: 9141626Abstract: A volume system that presents a volume having an extent of logical addresses to a file system. A volume exposure system exposes the volume to the file system in a manner that the volume has multiple tiers, each offering storage of different traits. This is performed using multiple heterogenic underlying storage systems, each having different storage system-specific traits. Each underlying storage system may be hardware, software, or a combination thereof that permits each storage system to expose storage having the particular storage system-specific traits to the file system. The volume system supports each tier by mapping logical addresses of the tier to portions of underling storage systems that are consistent with the tier traits.Type: GrantFiled: March 14, 2013Date of Patent: September 22, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Shiv Rajpal, Karan Mehra, Andrew Herron, Shi Cong
-
Patent number: 8984175Abstract: A method and apparatus for providing a multipathing connection to a storage volume, where in one embodiment, the invention prohibits the disk driver from reading the storage parameter information (e.g., table of contents) upon initialization. The method commences with a multipathing disk driver determining at least on active port and at least on passive port for the storage volume. The disk driver then sends a request via the active port to the storage volume for the storage parameter information that is contained in the disk array. After the host computer's operating system disk driver receives the storage parameter information, it copies the information and distributes the information to the port definitions for the passive ports. Consequently, the ports are defined without causing a failover within the storage volume.Type: GrantFiled: April 26, 2004Date of Patent: March 17, 2015Assignee: Symantec Operating CorporationInventors: Shiv Rajpal, Ajay P. Salpekar, Margaret Kwong
-
Patent number: 8886910Abstract: The representation of storage devices on computers (e.g., as logical volumes) may be complicated by the pooling of multiple storage devices in order to apply redundancy plans such as mirroring and checksumming. Presented herein is a storage device driver configured to operate as a storage device interface generating representations of the storage regions of the storage devices; to claim those regions as a storage controller; and to expose pooled storage regions as logical disks. Additionally, the storage device driver may support the inclusion of storage devices in a cluster, comprising nodes that may be appointed as managers of the storage pool configuration; as managers of the storage devices; as owners having exclusive read/write access to the storage pool or cluster resources; and as cluster resource writers having exclusive write access to a cluster resource. The nodes of the cluster may interoperate to share the storage devices while avoiding write conflicts.Type: GrantFiled: September 12, 2011Date of Patent: November 11, 2014Assignee: Microsoft CorporationInventors: Karan Mehra, Rajeev Nagar, Shiv Rajpal, Darren Moss, Andrea D'Amato, Alan Warwick, Vyacheslav Kuznetsov
-
Publication number: 20140310278Abstract: Embodiments are directed to creating global, aggregated namespaces for storage management and to providing consistent namespaces in a distributed storage system. In one scenario, a computer system defines data storage objects for each data storage node. The data storage objects uniquely identify storage elements of the data storage nodes, where each data storage object includes various associated attributes. The computer system replicates the defined data storage objects and any associated attributes from a first data storage node to a second, different data storage node among the data storage nodes. As such, the defined data storage objects are visible from any node in the data storage nodes. The computer system also aggregates the defined data storage objects for each of the data storage nodes and creates a global, aggregated namespace that includes the aggregated data storage objects for each of the data storage nodes.Type: ApplicationFiled: April 12, 2013Publication date: October 16, 2014Applicant: Microsoft CorporationInventors: Andrea D'Amato, Shiv Rajpal, Gregory Robert Domzalski, Vyacheslav Kuznetsov, Sarosh Cyrus Havewala, Ankur Kasturiya, Karan Mehra
-
Publication number: 20140297987Abstract: A thinly provisioned storage system detects whether physical storage capacity is available when there is a request to allocate storage capacity, prior to data being written to the storage system. In particular, at the time when the file system allocates storage, such as when creating a file or performing an extending write (append) operation, allocating storage to an unallocated region of a sparse file, defragmenting a file, and the like, a storage system can verify that actual physical storage capacity is available. Thus, if there is insufficient actual physical capacity at the time when a storage allocation is attempted, then an error message can be sent and remedial action can be taken.Type: ApplicationFiled: March 28, 2013Publication date: October 2, 2014Applicant: Microsoft CorporationInventors: Matt Garson, Neal Christiansen, Sarosh Havewala, Shiv Rajpal, Karan Mehra, Surendra Verma, Daniel Chan
-
Publication number: 20140279966Abstract: A volume system that presents a volume having an extent of logical addresses to a file system. A volume exposure system exposes the volume to the file system in a manner that the volume has multiple tiers, each offering storage of different traits. This is performed using multiple heterogenic underlying storage systems, each having different storage system-specific traits. Each underlying storage system may be hardware, software, or a combination thereof that permits each storage system to expose storage having the particular storage system-specific traits to the file system. The volume system supports each tier by mapping logical addresses of the tier to portions of underling storage systems that are consistent with the tier traits.Type: ApplicationFiled: March 14, 2013Publication date: September 18, 2014Applicant: Microsoft CorporationInventors: Shiv Rajpal, Karan Mehra, Andrew Herron, Shi Cong
-
Publication number: 20140280397Abstract: A system in which a file system may operate on a volume in which the logical address extent of the volume is divided into multiple tiers, each tier providing storage having a distinct trait set by mapping the logical addresses of the volume to appropriate underlying storage systems. A volume system exposes the volume to the file system in a manner that the file system itself has awareness of the tiers, and is aware of the trait sets of each tier. The file system may thus store file system namespaces (such as directories and files) into the tiers as appropriate for the file system namespace. A provisioning system may also be provided and be configured to provision the volume to include such tiers, and if desired, to extend the tiers.Type: ApplicationFiled: March 14, 2013Publication date: September 18, 2014Applicant: Mocrosoft CorporationInventors: Shiv Rajpal, Juan-Lee Pang, Sarosh Cyrus Havewala, Surendra Verma, Karan Mehra, Bryan Stephen Matthew, Neal Robert Christiansen, Andrew Herron
-
Publication number: 20140281227Abstract: The provisioning of a volume that has multiple tiers corresponding to different trait sets. The volume to be provisioned is identified along with multiple tiers that are to be in the volume. For each of the tiers that are to be provisioned within the volume, a corresponding trait set is identified as to be applied to each tier. This corresponding trait set may be based on underlying storage systems that are available at the time of provisioning, or which are anticipated to be available. The volume is then caused to be provisioned with the corresponding tiers having the corresponding trait sets. Also, the provisioning of a file, which is determined to have one or more storage traits. Based on these storage traits, the file is then caused to be assigned to an appropriate tier.Type: ApplicationFiled: March 14, 2013Publication date: September 18, 2014Applicant: MICROSOFT CORPORATIONInventors: Andrew Herron, Sarosh Cyrus Havewala, Karan Mehra, Ankur Kasturiya, Shiv Rajpal
-
Publication number: 20130067188Abstract: The representation of storage devices on computers (e.g., as logical volumes) may be complicated by the pooling of multiple storage devices in order to apply redundancy plans such as mirroring and checksumming. Presented herein is a storage device driver configured to operate as a storage device interface generating representations of the storage regions of the storage devices; to claim those regions as a storage controller; and to expose pooled storage regions as logical disks. Additionally, the storage device driver may support the inclusion of storage devices in a cluster, comprising nodes that may be appointed as managers of the storage pool configuration; as managers of the storage devices; as owners having exclusive read/write access to the storage pool or cluster resources; and as cluster resource writers having excusive write access to a cluster resource. The nodes of the cluster may interoperate to share the storage devices while avoiding write conflicts.Type: ApplicationFiled: September 12, 2011Publication date: March 14, 2013Applicant: Microsoft CorporationInventors: Karan Mehra, Rajeev Nagar, Shiv Rajpal, Darren Moss, Andrea D'Amato, Alan Warwick, Vyacheslav Kuznetsov