-
公开(公告)号:US10452445B2
公开(公告)日:2019-10-22
申请号:US15691574
申请日:2017-08-30
Applicant: Microsoft Technology Licensing, LLC
Inventor: Karan Mehra , Emanuel Paleologu , Vinod R. Shankar
Abstract: The techniques disclosed herein provide a dynamically configurable cluster of storage devices. In some configurations, the dynamically configurable cluster is associated with a fault domain. The cluster may include a plurality of computing devices that each include at least a storage device. The plurality of storage devices in the cluster may be configured to support a plurality of workloads coupled to the dynamically configurable cluster. The plurality of storage devices in the dynamically configurable cluster may be allocated to one or more of the plurality of workloads based on metadata identified resiliency requirements, performance requirements, and/or cost factors linked to the one or more of the plurality of workloads.
-
公开(公告)号:US20180004560A1
公开(公告)日:2018-01-04
申请号:US15199228
申请日:2016-06-30
Applicant: Microsoft Technology Licensing, LLC
Inventor: Vinod R. Shankar , Vladimir Petter , Vyacheslav Kuznetsov
IPC: G06F9/455
Abstract: Systems and methods for live migration of VMs between different nodes are provided. More specifically, the system and methods utilize a heat map and an access pattern to determine the fetching order of files and/or blocks from the cache of a host node for rebuilding the cache on a destination node. Additionally, the systems and methods are able to persist the cache of a host node across a crash, allowing a destination node to fetch blocks and/or files from the cache on the host node after a crash instead of having to access the VM files and/or blocks from an original source. Accordingly, the systems and methods decrease migration latency of the VM during live migration and free up network bandwidth during the live migration when compared to prior systems and methods that utilize just the heat map to determine the fetching order and/or that are not able to persist the cache across a crash.
-
公开(公告)号:US20170228184A1
公开(公告)日:2017-08-10
申请号:US15581392
申请日:2017-04-28
Applicant: Microsoft Technology Licensing, LLC
Inventor: Vyacheslav Kuznetsov , Vinod R. Shankar , Andrea D'Amato , David Allen Dion
CPC classification number: G06F3/0622 , G06F3/0632 , G06F3/0637 , G06F3/067 , G06F21/78 , H04L63/083 , H04L63/10 , H04L67/1097
Abstract: Embodiments provide a method and system for enabling access to a storage device. Specifically, a node may request admittance to a cluster that has read and write access to a storage device. The node seeking access to the storage device must be first be approved by other nodes in the cluster. As part of the request, the node seeking access to the storage device sends a registration key to a storage device. Upon expiration of a registration timer, the node seeking access to the storage device receives a registration table from the storage device and determines whether its registration key is stored in the registration table. If the registration key is stored in the registration table the node has been accepted in the cluster and as a result, has been granted read and write access to the storage device.
-
公开(公告)号:US10809927B1
公开(公告)日:2020-10-20
申请号:US16399849
申请日:2019-04-30
Applicant: Microsoft Technology Licensing, LLC
Inventor: Karan Mehra , Vinod R. Shankar , Taylor Alan Hope
IPC: G06F3/06
Abstract: A virtual disk is instantiated as a representation of a storage volume. The virtual disk is configured with metadata corresponding to the storage volume. A storage stack is instantiated that is operable to provide an active I/O path to the storage volume. The storage stack is modified by adding an alternative I/O path to the virtual disk. The alternative I/O path includes a layout driver configured to manage a converted storage layout for the storage volume. The storage volume is encapsulated to the virtual disk. The active I/O path is closed and the alternative I/O path is enabled for I/O requests to the virtual disk. The storage layout of the storage device is converted without taking the storage volume offline.
-
公开(公告)号:US10732873B1
公开(公告)日:2020-08-04
申请号:US16388114
申请日:2019-04-18
Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC
Inventor: Scott Chao-Chueh Lee , Bryan Stephen Matthew , Vinod R. Shankar
Abstract: A data store is accessed that stores a collected historical record of performance metrics for input/output operations executed at a storage device that is part of a group of storage devices that are configured to provide a fault resiliency function. A performance profile is determined for the selected storage device based on selected performance metrics of the historical record. A difference between the performance profile for the storage device and a characteristic performance profile for similar storage devices is determined. When the difference exceeds a predetermined deviance threshold, selected I/O requests designated for the selected storage device are redirected to another device of the group of storage devices.
-
公开(公告)号:US09917790B2
公开(公告)日:2018-03-13
申请号:US14448781
申请日:2014-07-31
Applicant: Microsoft Technology Licensing, LLC
Inventor: Slava Kuznetsov , Vinod R. Shankar , Andrea D'Amato , Vladimir Petter
IPC: H04L12/911 , G06F3/06 , H04L12/26 , H04L12/923
CPC classification number: H04L47/783 , G06F3/061 , G06F3/0659 , G06F3/067 , H04L43/16 , H04L47/762
Abstract: A system is configured to use a de-randomizer and budget data structure to economize I/O operations for a shared storage device while still allowing access to the device to a number of different entities. Embodiments can identify a comparatively low cost next operation as compared to other I/O operations, including a cost for seek time, for a first entity to dispatch to the storage device when the first entity has sufficient budget to have the I/O operation performed on its behalf and to identify an I/O operation for a second entity to dispatch to the storage device when there is insufficient budget for the first entity.
-
公开(公告)号:US09430333B2
公开(公告)日:2016-08-30
申请号:US13829204
申请日:2013-03-14
Applicant: Microsoft Technology Licensing, LLC
Inventor: Andrea D'Amato , Vinod R. Shankar
CPC classification number: G06F11/1458 , G06F11/1469 , G06F11/1484 , G06F2201/825 , G06F2201/84
Abstract: The targeted recovery of application-specific data corresponding to an application without performing recovery of the entire volume. The recovery is initiated by beginning to copy the prior state of the content of an application-specific data container from a prior snapshot to the application-specific data container in an operation volume accessible by the application. However, while the content of the application-specific data container is still being copied from the snapshot to the application-specific data container, the application is still permitted to perform read and write operations on the application-specific data container. Thus, the application-specific data container appears to the application to be fully accessible even though recovery of the content of the application-specific data container is still continuing in the background.
Abstract translation: 有针对性地恢复与应用程序相对应的应用程序特定数据,而不执行整个卷的恢复。 通过开始将应用程序特定数据容器的内容的先前状态从先前的快照复制到应用程序可访问的操作卷中的应用程序特定的数据容器来启动恢复。 然而,尽管应用程序特定数据容器的内容仍然从快照复制到特定于应用程序的数据容器,但仍然允许应用程序对应用程序特定的数据容器执行读写操作。 因此,即使应用程序特定的数据容器的内容的恢复仍然在后台继续,应用程序对应用程序看起来是完全可访问的。
-
公开(公告)号:US11620136B2
公开(公告)日:2023-04-04
申请号:US16411018
申请日:2019-05-13
Applicant: Microsoft Technology Licensing, LLC
Inventor: Vinod R. Shankar , Taylor Alan Hope , Karan Mehra , Emanuel Paleologu
IPC: G06F9/4401 , G06F8/65 , G06F9/50
Abstract: Data is identified that defines a known good state for a current operating system. The identified data includes read-only sets that are not updated during operation of the computing device, and modifiable sets that can be updated during operation of the computing device. The read-only sets are captured on an opportunistic basis and the modifiable sets are captured when the computing device is to be rebooted. A first and second virtual disk are allocated as snapshots of the identified data. The first virtual disk is updated to generate an updated state. The updates to the first virtual disk are isolated from the second virtual disk. The second virtual disk is maintained as an immutable snapshot of the identified data. In response to a failed reboot with the updated state, the computing device reverts to the known good state using the snapshot of the identified data.
-
公开(公告)号:US10809940B1
公开(公告)日:2020-10-20
申请号:US16389605
申请日:2019-04-19
Applicant: Microsoft Technology Licensing, LLC
Inventor: Karan Mehra , Justin Sing Tong Cheung , Vinod R. Shankar , Grigory Borisovich Lyakhovitskiy
IPC: G06F3/06
Abstract: A first storage node configured to store data associated with a user is allocated. The data stored on the first storage node is mirrored at a second storage node. A resiliency mechanism is implemented at the first and second storage nodes. The resiliency mechanism is configured to restore data on at least one of the storage devices of the first and second storage nodes. In response to a loss of availability of either the first or second storage node and a loss of availability of one or more storage device on an available storage node, data on the unavailable storage devices of the available storage node is recovered using the resiliency mechanism of the available storage node.
-
公开(公告)号:US10686721B2
公开(公告)日:2020-06-16
申请号:US15918525
申请日:2018-03-12
Applicant: Microsoft Technology Licensing, LLC
Inventor: Slava Kuznetsov , Vinod R. Shankar , Andrea D'Amato , Vladimir Petter
IPC: H04L12/911 , H04L12/923 , H04L12/26 , G06F3/06
Abstract: A system is configured to use a de-randomizer and budget data structure to economize I/O operations for a shared storage device while still allowing access to the device to a number of different entities. Embodiments can identify a comparatively low cost next operation as compared to other I/O operations, including a cost for seek time, for a first entity to dispatch to the storage device when the first entity has sufficient budget to have the I/O operation performed on its behalf and to identify an I/O operation for a second entity to dispatch to the storage device when there is insufficient budget for the first entity.
-
-
-
-
-
-
-
-
-