CPU-efficient cache replacment with two-phase eviction

    公开(公告)号:US11080189B2

    公开(公告)日:2021-08-03

    申请号:US16256726

    申请日:2019-01-24

    Applicant: VMware, Inc.

    Abstract: The present disclosure provides techniques for managing a cache of a computer system using a cache management data structure. The cache management data structure includes a cold queue, a ghost queue, and a hot queue. The techniques herein improve the functioning of the computer because management of the cache management data structure can be performed in parallel with multiple cores or multiple processors, because a sequential scan will only pollute (i.e., add unimportant memory pages) cold queue, and to an extent, ghost queue, but not hot queue, and also because the cache management data structure has lower memory requirements and lower CPU overhead on cache hit than some prior art algorithms.

    Maintaining high availability during network partitions for virtual machines stored on distributed object-based storage

    公开(公告)号:US10949245B2

    公开(公告)日:2021-03-16

    申请号:US16527767

    申请日:2019-07-31

    Applicant: VMware, Inc.

    Abstract: Techniques are disclosed for maintaining high availability (HA) for virtual machines (VMs) running on host systems of a host cluster, where each host system executes a HA module in a plurality of HA modules and a storage module in a plurality of storage modules, where the host cluster aggregates, via the plurality of storage modules, locally-attached storage resources of the host systems to provide an object store, where persistent data for the VMs is stored as per-VM storage objects across the locally-attached storage resources comprising the object store, and where a failure causes the plurality of storage modules to observe a network partition in the host cluster that the plurality of HA modules do not. In one embodiment, a host system in the host cluster executing a first HA module invokes an API exposed by the plurality of storage modules for persisting metadata for a VM to the object store. If the API is not processed successfully, the host system: (1) identifies a subset of second HA modules in the plurality of HA modules; (2) issues an accessibility query for the VM to the subset of second HA modules in parallel, the accessibility query being configured to determine whether the VM is accessible to the respective host systems of the subset of second HA modules; and (3) if at least one second HA module in the subset indicates that the VM is accessible to its respective host system, transmits a command to the at least one second HA module to invoke the API on its respective host system.

    System and methods of zero-copy data path among user level processes

    公开(公告)号:US10747594B1

    公开(公告)日:2020-08-18

    申请号:US16256713

    申请日:2019-01-24

    Applicant: VMware, Inc.

    Abstract: The disclosure provides an approach for performing an operation by a first process on behalf of a second process, the method comprising: obtaining, by the first process, a memory handle from the second process, wherein the memory handle allows access, by the first process, to at least some of the address space of the second process; dividing the address space of the memory handle into a plurality of sections; receiving, by the first process, a request from the second process to perform an operation; determining, by the first process, a section of the plurality of sections that is to be mapped from the address space of the memory handle to the address space of the first process for the performance of the operation by the first process; mapping the section from the address space of the memory handle to the address space of the first process; and performing the operation by the first process on behalf of the second process.

    Maintaining High Availability During Network Partitions for Virtual Machines Stored on Distributed Object-Based Storage

    公开(公告)号:US20200233693A1

    公开(公告)日:2020-07-23

    申请号:US16527767

    申请日:2019-07-31

    Applicant: VMware, Inc.

    Abstract: Techniques are disclosed for maintaining high availability (HA) for virtual machines (VMs) running on host systems of a host cluster, where each host system executes a HA module in a plurality of HA modules and a storage module in a plurality of storage modules, where the host cluster aggregates, via the plurality of storage modules, locally-attached storage resources of the host systems to provide an object store, where persistent data for the VMs is stored as per-VM storage objects across the locally-attached storage resources comprising the object store, and where a failure causes the plurality of storage modules to observe a network partition in the host cluster that the plurality of HA modules do not. In one embodiment, a host system in the host cluster executing a first HA module invokes an API exposed by the plurality of storage modules for persisting metadata for a VM to the object store. If the API is not processed successfully, the host system: (1) identifies a subset of second HA modules in the plurality of HA modules; (2) issues an accessibility query for the VM to the subset of second HA modules in parallel, the accessibility query being configured to determine whether the VM is accessible to the respective host systems of the subset of second HA modules; and (3) if at least one second HA module in the subset indicates that the VM is accessible to its respective host system, transmits a command to the at least one second HA module to invoke the API on its respective host system.

    SYSTEM AND METHOD FOR SPEED UP DATA REBUILD IN A DISTRIBUTED STORAGE SYSTEM WITH LOCAL DEDUPLICATION

    公开(公告)号:US20190227727A1

    公开(公告)日:2019-07-25

    申请号:US15880391

    申请日:2018-01-25

    Applicant: VMware, Inc.

    Abstract: A method includes obtaining a plurality of representations corresponding respectively to a plurality of blocks of data stored on a source node. A plurality of data pairs are sent to a destination node, where each data pair includes a logical address associated with a block of data from the plurality of blocks of data and the corresponding representation of the block of data. A determination is made whether the blocks of data associated with the respective logical addresses are duplicates of data stored on the destination node. In accordance with an affirmative determination, a reference to a physical address of the block of data stored on the destination node is stored. In accordance with a negative determination, an indication that the data corresponding to the respective logical address is not a duplicate is stored. The data indicated as not being a duplicate is written to the destination node.

    Distributed transaction log
    58.
    发明授权

    公开(公告)号:US09830234B2

    公开(公告)日:2017-11-28

    申请号:US14469526

    申请日:2014-08-26

    Applicant: VMware, Inc.

    Abstract: Embodiments of the disclosure provide techniques for updating a distributed transaction log on a previously offline resource object component using distributed transaction logs from active host computer nodes from separate RAID mirror configurations. Each component object maintains a journal (log) where distributed transactions are recorded. If a component object goes offline and subsequently returns (e.g., if the node hosting the component object reboots), the component object is marked as stale. To return the component object to an active state, a distributed resources module retrieves the journals from other resource component objects from other RAID configurations where the data is mirrored. The module filters corresponding data that is missing in the journal of the previously offline corresponding object and merges the filtered data to the journal.

    DATA DEDUPLICATION IN A BLOCK-BASED STORAGE SYSTEM
    59.
    发明申请
    DATA DEDUPLICATION IN A BLOCK-BASED STORAGE SYSTEM 审中-公开
    基于块的存储系统中的数据校验

    公开(公告)号:US20160350325A1

    公开(公告)日:2016-12-01

    申请号:US14724392

    申请日:2015-05-28

    Applicant: VMware, Inc.

    Abstract: A method and system are disclosed for storing client data objects in a deduplicated storage system. Deduplicated data may be stored in a plurality of physical data blocks. A content map layer can provide a mapping between the physical data blocks to logical map objects associated with the client data objects. The deduplicated data may be mapped to logical data blocks that comprise the client data objects.

    Abstract translation: 公开了一种用于将客户端数据对象存储在重复数据删除的存储系统中的方法和系统。 重复数据可以存储在多个物理数据块中。 内容映射图层可以提供物理数据块与与客户端数据对象相关联的逻辑映射对象之间的映射。 重复数据删除的数据可以映射到构成客户数据对象的逻辑数据块。

    Orchestrating High Availability Failover for Virtual Machines Stored on Distributed Object-Based Storage
    60.
    发明申请
    Orchestrating High Availability Failover for Virtual Machines Stored on Distributed Object-Based Storage 有权
    为存储在分布式基于对象的存储上的虚拟机协调高可用性故障转移

    公开(公告)号:US20150378853A1

    公开(公告)日:2015-12-31

    申请号:US14317669

    申请日:2014-06-27

    Applicant: VMware, Inc.

    Abstract: Techniques are disclosed for orchestrating high availability (HA) failover for virtual machines (VMs) running on host systems of a host cluster, where the host cluster aggregates locally-attached storage resources of the host systems to provide an object store, and where persistent data for one or more of the VMs is stored as per-VM storage objects across the locally-attached storage resources comprising the object store. In one embodiment, a host system in the host cluster executing a HA module determines a VM to be restarted on an active host system in the host cluster. The host system further determines if the VM's persistent data is stored in the object store. If so, the host system adds the VM to a list of VMs to be immediately restarted. Otherwise, the host system checks whether the VM is accessible to the host system by querying a storage layer of the host system configured to manage the object store.

    Abstract translation: 披露了用于为在主机集群的主机系统上运行的虚拟机(VM)的高可用性(HA)故障切换进行协调的技术,其中主机集群聚集主机系统的本地连接的存储资源以提供对象存储,以及持久数据 对于一个或多个VM,通过包括对象存储的本地连接的存储资源被存储为每个VM存储对象。 在一个实施例中,执行HA模块的主机集群中的主机系统确定要在主机集群中的主动主机系统上重新启动的VM。 主机系统还确定VM的持久数据是否存储在对象存储中。 如果是这样,主机系统会将VM添加到要立即重新启动的VM列表中。 否则,主机系统通过查询配置为管理对象存储的主机系统的存储层来检查主机系统是否可访问VM。

Patent Agency Ranking