WRITE ORDERING FOR PERSISTENT MEMORY

    公开(公告)号:US20210326065A1

    公开(公告)日:2021-10-21

    申请号:US16852580

    申请日:2020-04-20

    Applicant: NetApp Inc.

    Abstract: Techniques are provided for implementing write ordering for persistent memory. A set of actions are identified for commitment to persistent memory of a node for executing an operation upon the persistent memory. An episode is created to comprise a first subset of actions of the set of actions that can be committed to the persistent memory in any order with respect to one another such that a consistent state of the persistent memory can be reconstructed in the event of a crash of the node during execution of the operation. The first subset of actions within the episode are committed to the persistent memory and further execution of the operation is blocked until the episode completes.

    Object format resilient to remote object store errors

    公开(公告)号:US10853166B2

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

    申请号:US16459790

    申请日:2019-07-02

    Applicant: NetApp Inc.

    Abstract: Techniques are provided for remote object store error handling. A storage system may store data within one or more tiers of storage, such as a local storage tier (e.g., solid state storage and disks maintained by the storage system), a remote object store (e.g., storage provided by a third party storage provider), and/or other storage tiers. Because the remote object store may not provide the same data consistency and guarantees that the storage system provides for clients such as through the local storage tier, additional validation is provided by the storage system for the remote object store. For example, when data is put into an object of the remote object store, a verification get operation is performed to read and validate information within a header of the object. Other verifications and checks are performed such as using a locally stored metafile to detect corrupt or lost metadata and/or objects.

    Metadata compaction
    23.
    发明授权

    公开(公告)号:US10852994B2

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

    申请号:US16365956

    申请日:2019-03-27

    Applicant: NetApp Inc.

    Abstract: Techniques are provided for compacting indirect blocks. For example, an object is represented as a structure comprising data blocks within which data of the object is stored and indirect blocks comprising block numbers of where the data blocks are located in storage. Block numbers within a set of indirect blocks are compacted into a compacted indirect block comprising a base block number, a count of additional block numbers after the base block number in the compacted indirect block, and a pattern of the block numbers in the compacted indirect block. The compacted indirect block is stored into memory for processing access operations to the object. Storing compacted indirect blocks into memory allows for more block numbers to be stored within memory.

    MULTI-TIER WRITE ALLOCATION
    24.
    发明申请

    公开(公告)号:US20200073567A1

    公开(公告)日:2020-03-05

    申请号:US16679914

    申请日:2019-11-11

    Applicant: NetApp Inc.

    Abstract: Techniques are provided for multi-tier write allocation. A storage system may store data within a multi-tier storage environment comprising a first storage tier (e.g., storage devices maintained by the storage system), a second storage tier (e.g., a remote object store provided by a third party storage provider), and/or other storage tiers. A determination is made that data (e.g., data of a write request received by the storage system) is to be stored within the second storage tier. The data is stored into a staging area of the first storage tier. A second storage tier location identifier, for referencing the data according to a format utilized by the second storage tier, is assigned to the data and provided to a file system hosting the data. The data is then destaged from the staging area into the second storage tier, such as within an object stored within the remote object store.

    Composite aggregate architecture
    25.
    发明授权

    公开(公告)号:US10521143B2

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

    申请号:US15467293

    申请日:2017-03-23

    Applicant: NetApp Inc.

    Abstract: Techniques are provided for providing a storage abstraction layer for a composite aggregate architecture. A storage abstraction layer is utilized as an indirection layer between a file system and a storage environment. The storage abstraction layer obtains characteristic of a plurality of storage providers that provide access to heterogeneous types of storage of the storage environment (e.g., solid state storage, high availability storage, object storage, hard disk drive storage, etc.). The storage abstraction layer generates storage bins to manage storage of each storage provider. The storage abstraction layer generates a storage aggregate from the heterogeneous types of storage as a single storage container. The storage aggregate is exposed to the file system as the single storage container that abstracts away from the file system the management and physical storage details of data of the storage aggregate.

    OBJECT FORMAT RESILIENT TO REMOTE OBJECT STORE ERRORS

    公开(公告)号:US20190324844A1

    公开(公告)日:2019-10-24

    申请号:US16459790

    申请日:2019-07-02

    Applicant: NetApp Inc.

    Abstract: Techniques are provided for remote object store error handling. A storage system may store data within one or more tiers of storage, such as a local storage tier (e.g., solid state storage and disks maintained by the storage system), a remote object store (e.g., storage provided by a third party storage provider), and/or other storage tiers. Because the remote object store may not provide the same data consistency and guarantees that the storage system provides for clients such as through the local storage tier, additional validation is provided by the storage system for the remote object store. For example, when data is put into an object of the remote object store, a verification get operation is performed to read and validate information within a header of the object. Other verifications and checks are performed such as using a locally stored metafile to detect corrupt or lost metadata and/or objects.

    METHODS FOR IMPROVING JOURNAL PERFORMANCE IN STORAGE NETWORKS AND DEVICES THEREOF

    公开(公告)号:US20170344282A1

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

    申请号:US15167924

    申请日:2016-05-27

    Applicant: NetApp, Inc.

    Abstract: A method, non-transitory computer readable medium and storage server computing device that determines when a generated storage operation corresponds with one of a set of predefined storage operations. The storage operation is executed and a result of the execution of the storage operation is withheld from a file system, when the determining indicates that the storage operation corresponds with one of the set of predefined storage operations. A determination is made when a consistency point operation has completed. The result of the execution of the storage operation is presented to the file system, when the determining indicates that a consistency point operation has completed. This technology reduces the number of storage operations that are required to be journaled to maintain consistency of a file system, thereby reducing the runtime resources required to facilitate the journaling and replay resource required to replay the storage operations in a journal following a recovery.

    DISCARDING SENSITIVE DATA FROM PERSISTENT POINT-IN-TIME IMAGE
    28.
    发明申请
    DISCARDING SENSITIVE DATA FROM PERSISTENT POINT-IN-TIME IMAGE 有权
    从持续时间图像中删除敏感数据

    公开(公告)号:US20140025963A1

    公开(公告)日:2014-01-23

    申请号:US14033071

    申请日:2013-09-20

    Applicant: NetApp, Inc.

    CPC classification number: G06F21/6218 G06F21/62 G06F2221/2107

    Abstract: A network storage server implements a method to discard sensitive data from a Persistent Point-In-Time Image (PPI). The server first efficiently identifies a dataset containing the sensitive data from a plurality of datasets managed by the PPI. Each of the plurality of datasets is read-only and encrypted with a first encryption key. The server then decrypts each of the plurality of datasets, except the dataset containing the sensitive data, with the first encryption key. The decrypted datasets are re-encrypted with a second encryption key, and copied to a storage structure. Afterward, the first encryption key is shredded.

    Abstract translation: 网络存储服务器实现从持续时间点映像(PPI)中丢弃敏感数据的方法。 服务器首先从PPI管理的多个数据集中有效地识别包含敏感数据的数据集。 多个数据集中的每个数据集是只读的并用第一加密密钥加密。 服务器然后使用第一加密密钥对包含敏感数据的数据集之外的多个数据集中的每一个进行解密。 解密的数据集用第二加密密钥重新加密,并复制到存储结构。 之后,第一个加密密钥被打碎。

    Maintaining and recomputing reference counts in a persistent memory file system

    公开(公告)号:US12248376B2

    公开(公告)日:2025-03-11

    申请号:US18623387

    申请日:2024-04-01

    Applicant: NetApp Inc.

    Abstract: Techniques are provided for maintaining and recomputing reference counts in a persistent memory file system of a node. Primary reference counts are maintained for pages within persistent memory of the node. In response to receiving a first operation to link a page into a persistent memory file system of the persistent memory, a primary reference count of the page is incremented before linking the page into the persistent memory file system. In response to receiving a second operation to unlink the page from the persistent memory file system, the page is unlinked from the persistent memory file system before the primary reference count is decremented. Upon the node recovering from a crash, the persistent memory file system is traversed in order to update shadow reference counts for the pages with correct reference count values, which are used to overwrite the primary reference counts with the correct reference count values.

Patent Agency Ranking