-
公开(公告)号:US20160110120A1
公开(公告)日:2016-04-21
申请号:US14518088
申请日:2014-10-20
Applicant: NetApp, Inc.
Inventor: Jayalakshmi Pattabiraman , Nikhil Mattankot , Deekshith Belchapada , Blake H. Lewis , Subramaniam Periyagaram , Satya Suresh Chouta Naga Veera , Rohit Singh , Rajesh Khandelwal , James Robert Morefield
IPC: G06F3/06
CPC classification number: G06F3/064 , G06F3/0613 , G06F3/0616 , G06F3/0683 , G06F7/06 , G06F12/02 , G06F12/023 , G06F2212/1016
Abstract: A first plurality of block identifiers is sorted based, at least in part, on a measure of spatial locality. A second plurality of block identifiers is sorted based, at least in part, on the measure of spatial locality. At least the first plurality of block identifiers and the second plurality of block identifiers are incrementally merged into a third plurality of block identifiers based, at least in part, on the measure of spatial locality. A block of data corresponding to metadata associated with a plurality of block identifiers of the third plurality of block identifiers is updated.
Abstract translation: 至少部分地基于空间局部性的度量来排序第一多个块标识符。 至少部分地基于空间局部性的度量来排序第二多个块标识符。 至少部分地基于空间局部性的度量,至少第一多个块标识符和第二多个块标识符被递增地合并到第三多个块标识符中。 对应于与第三多个块标识符的多个块标识符相关联的元数据的数据块被更新。
-
公开(公告)号:US11803316B2
公开(公告)日:2023-10-31
申请号:US17868260
申请日:2022-07-19
Applicant: NetApp, Inc.
Inventor: Kevin Daniel Varghese , Ananthan Subramanian , Parag Sarfare , Sandeep Yadav , Suhas Urkude , Rajesh Khandelwal
IPC: G06F3/06
CPC classification number: G06F3/0644 , G06F3/064 , G06F3/067 , G06F3/0613 , G06F3/0623 , G06F3/0659
Abstract: A method and system for co-locating journaling and data storage based on write requests. A write request that includes metadata and data is received from a client. A logical storage unit for storing the metadata and the data is identified. The logical storage unit is divided into a journal partition and a volume partition. The journal partition includes a first log and a second log. Which of the first log and the second log is an active log and which of the first log and the second log is an inactive log are identified. The metadata is recorded in a first location in the active log and the data is recorded in a second location in the active log during a single I/O operation. A reply is sent to the client after the metadata and the data are recorded in the journal partition.
-
公开(公告)号:US20220342577A1
公开(公告)日:2022-10-27
申请号:US17849290
申请日:2022-06-24
Applicant: NetApp, Inc.
Inventor: Kevin Daniel Varghese , Ananthan Subramanian , Parag Sarfare , Sandeep Yadav , Suhas Urkude , Rajesh Khandelwal
IPC: G06F3/06
Abstract: A method and system for co-locating journaling and data storage based on write requests. A write request that includes metadata and data is received from a client. A logical storage unit for storing the metadata and the data is identified. The logical storage unit is divided into a journal partition and a volume partition. The journal partition includes a first log and a second log. Which of the first log and the second log is an active log and which of the first log and the second log is an inactive log are identified. The metadata is recorded in a first location in the active log and the data is recorded in a second location in the active log during a single I/O operation. A reply is sent to the client after the metadata and the data are recorded in the journal partition.
-
公开(公告)号:US20200159432A1
公开(公告)日:2020-05-21
申请号:US16774127
申请日:2020-01-28
Applicant: NetApp Inc.
Inventor: Mukul Sharma , Kartik Rathnakar , Dnyaneshwar Nagorao Pawar , Venkateswarlu Tella , Kiran Nenmeli Srinivasan , Rajesh Khandelwal , Alok Sharma
IPC: G06F3/06
Abstract: One or more techniques and/or computing devices are provided for inline deduplication. For example, a checksum hash table and/or a block number hash table may be maintained within memory (e.g., a storage controller may maintain the hash tables in-core). The checksum hash table may be utilized for inline deduplication to identify potential donor blocks that may comprise the same data as an incoming storage operation. Data within an in-core buffer cache is eligible as potential donor blocks so that inline deduplication may be performed using data from the in-core buffer cache, which may mitigate disk access to underlying storage for which the in-core buffer cache is used for caching. The block number hash table may be used for updating or removing entries from the hash tables, such as for blocks that are no longer eligible as potential donor blocks (e.g., deleted blocks, blocks evicted from the in-core buffer cache, etc.).
-
公开(公告)号:US20140143288A1
公开(公告)日:2014-05-22
申请号:US14052597
申请日:2013-10-11
Applicant: NetApp, Inc.
Inventor: David Grunwald , Rajesh Khandelwal
IPC: G06F17/30
CPC classification number: G06F17/30194 , G06F17/30088 , G06F17/30091 , G06F17/30203
Abstract: A technique for efficiently scanning various datasets in a storage system to generate metadata for shared data blocks is provided. In one embodiment, data containers in an active file system of a storage object are first scanned. Remaining images (e.g., snapshots of the file system) are arranged in a chronological order based on the age of such images in the storage object. In some instances, to perform a metadata scan of a given image, the storage server compares each data container in the given image to a corresponding data container in a prior image (from the chronological order) to identify any non-identical data blocks (i.e., blocks that are not common between the data containers of the two images) in each data container. The metadata scanner then generates metadata only for the non-identical data blocks in each data container and skips metadata generation for any remaining data blocks.
Abstract translation: 提供了一种用于有效扫描存储系统中的各种数据集以产生共享数据块的元数据的技术。 在一个实施例中,首先扫描存储对象的活动文件系统中的数据容器。 剩余图像(例如,文件系统的快照)基于存储对象中的这些图像的年龄按时间顺序排列。 在某些情况下,为了执行给定图像的元数据扫描,存储服务器将给定图像中的每个数据容器与先前图像中的相应数据容器进行比较(从时间顺序),以识别任何不相同的数据块(即 ,两个图像的数据容器之间不常见的块)。 然后,元数据扫描器仅为每个数据容器中的不相同的数据块生成元数据,并跳过剩余数据块的元数据生成。
-
公开(公告)号:US12223193B2
公开(公告)日:2025-02-11
申请号:US18497925
申请日:2023-10-30
Applicant: NetApp, Inc.
Inventor: Kevin Daniel Varghese , Ananthan Subramanian , Parag Sarfare , Sandeep Yadav , Suhas Urkude , Rajesh Khandelwal
IPC: G06F3/06
Abstract: Methods and systems for co-locating journaling and data storage are provided. Separate journal and volume partitions may be maintained within each logical storage unit (e.g., Logical Unit Number (LUN)) of a distributed storage system. Journaling of metadata associated with write requests received from one or more clients may be distributed by identifying a destination logical storage unit to which data associated with a given write request is to be stored and causing the data and metadata to be persisted to disk by journaling the metadata and the data to respective portions of an active log within the journal partition of the destination logical storage unit. By using the same logical storage unit for both journaling of write requests and writing the data associated with such write requests, the bottleneck due to there being only a single device or storage unit handling all metadata for all write requests can be avoided.
-
公开(公告)号:US11409457B1
公开(公告)日:2022-08-09
申请号:US17239189
申请日:2021-04-23
Applicant: NetApp, Inc.
Inventor: Kevin Daniel Varghese , Ananthan Subramanian , Parag Sarfare , Sandeep Yadav , Suhas Urkude , Rajesh Khandelwal
IPC: G06F3/06
Abstract: A method and system for co-locating journaling and data storage based on write requests. A write request that includes metadata and data is received from a client. A logical storage unit for storing the metadata and the data is identified. The logical storage unit is divided into a journal partition and a volume partition. The journal partition includes a first log and a second log. Which of the first log and the second log is an active log and which of the first log and the second log is an inactive log are identified. The metadata is recorded in a first location in the active log and the data is recorded in a second location in the active log during a single I/O operation. A reply is sent to the client after the metadata and the data are recorded in the journal partition.
-
公开(公告)号:US11340812B2
公开(公告)日:2022-05-24
申请号:US17064423
申请日:2020-10-06
Applicant: NETAPP, INC.
Inventor: Jayalakshmi Pattabiraman , Nikhil Mattankot , Deekshith Belchapada , Blake H. Lewis , Subramaniam Periyagaram , Satya Suresh Chouta Naga Veera , Rohit Singh , Rajesh Khandelwal , James Robert Morefield
Abstract: A first plurality of block identifiers is sorted based, at least in part, on a measure of spatial locality. A second plurality of block identifiers is sorted based, at least in part, on the measure of spatial locality. At least the first plurality of block identifiers and the second plurality of block identifiers are incrementally merged into a third plurality of block identifiers based, at least in part, on the measure of spatial locality. A block of data corresponding to metadata associated with a plurality of block identifiers of the third plurality of block identifiers is updated.
-
公开(公告)号:US09965196B2
公开(公告)日:2018-05-08
申请号:US14518157
申请日:2014-10-20
Applicant: NetApp, Inc.
Inventor: Rohit Singh , Jungsook Yang , Rajesh Khandelwal , Jayalakshmi Pattabiraman
CPC classification number: G06F3/0613 , G06F3/064 , G06F3/0683 , G06F9/5016 , G06F12/023 , G06F12/0246 , G06F12/0253 , G06F12/0261 , G06F12/0276 , G06F17/30138
Abstract: Storage systems track free blocks using various data structures and maps. For instance, free block maps may contain data blocks with values that indicate whether a block is free or not. When an operation results in a block being freed, the relevant data block in the maps must be written during an I/O operation to update the value. Large numbers of updates my occur after an operation that frees a large numbers of blocks, which can lead to performance degradation. Accordingly, disclosed are systems and methods for deferring updating of free block data tracking structures using logs.
-
-
-
-
-
-
-
-