Adaptive replacement cache
    1.
    发明授权
    Adaptive replacement cache 有权
    自适应替换缓存

    公开(公告)号:US07469320B2

    公开(公告)日:2008-12-23

    申请号:US11417078

    申请日:2006-05-03

    IPC分类号: G06F12/00

    摘要: A method for caching a block, which includes receiving a request to store the block in a cache and determining whether the cache is able to expand. If the cache is not able to expand, then determining whether evictable blocks are present in the cache and, if evictable blocks are present in the cache determining whether a total size of the evictable blocks is greater than or equal to a size of the block, evicting a sufficient number of the evictable blocks from the cache and storing the block in the cache, if the total size of the evictable blocks is greater than or equal to the size of the block, and activating a cache throttle, if the total size of the evictable blocks is less than the size of the block.

    摘要翻译: 一种用于缓存块的方法,其包括接收将所述块存储在高速缓存中并且确定所述高速缓存是否能够扩展的请求。 如果高速缓存不能扩展,则确定可缓存块是否存在于高速缓存中,并且如果可缓存的块存在于高速缓存中,确定可驱动块的总大小是否大于或等于块的大小, 如果所述可驱动块的总大小大于或等于所述块的大小,并将所述块存储在所述高速缓存中,则将所述可驱动块的足够数量从所述高速缓存中驱出并将所述块存储在所述高速缓存中,并且如果所述块的总大小 可驱动的块小于块的大小。

    Compressed victim cache
    2.
    发明授权
    Compressed victim cache 有权
    压缩的受害者缓存

    公开(公告)号:US07526615B2

    公开(公告)日:2009-04-28

    申请号:US11513863

    申请日:2006-08-31

    IPC分类号: G06F12/00

    摘要: A method for caching a block of data. The method including receiving a request to store the block and determining whether an active cache is able to expand. If the active cache is able to expand, then expanding the active cache to obtain an expanded active cache, and storing the block in the expanded active cache. If the active cache is not able to expand, then determining whether evictable blocks are present in the victim cache. If evictable blocks are present in the victim cache, then evicting a sufficient number of the evictable blocks from the victim cache to facilitate storing the block in the active cache, where the evictable blocks in the victim cache are compressed.

    摘要翻译: 一种用于缓存数据块的方法。 该方法包括接收存储块的请求并确定活动高速缓存是否能够扩展。 如果活动缓存能够扩展,则扩展活动缓存以获得扩展的活动高速缓存,并将该块存储在扩展的活动高速缓存中。 如果活动缓存不能扩展,则确定可缓存块是否存在于受害缓存中。 如果受害者缓存中存在可消除的块,则从受害者缓存中驱逐足够数量的可排除块,以便于将块存储在活动高速缓存中,其中受害缓存中的可驱逐块被压缩。

    Unlimited file system snapshots and clones
    5.
    发明授权
    Unlimited file system snapshots and clones 有权
    无限文件系统快照和克隆

    公开(公告)号:US08549051B2

    公开(公告)日:2013-10-01

    申请号:US11513800

    申请日:2006-08-31

    IPC分类号: G06F12/00 G06F17/30

    CPC分类号: G06F17/30088

    摘要: The invention relates to a system that includes a file system configured to create a snapshot of a hierarchical block tree (HBT) and a storage pool. After the snapshot has been created, the storage pool includes a snapshot, where the snapshot includes a copy of a first version of a root block and the HBT, where the HBT includes a second version of the root block. Further, the copy of the first version of the root block is created prior to overwriting the first version of the root block with the second version of the root block, the second version of the root block comprises references to a first block and a second block, and the copy of the first version of the root block comprises a reference to the first block and no reference to the second block.

    摘要翻译: 本发明涉及一种系统,其包括被配置为创建分层块树(HBT)和存储池的快照的文件系统。 创建快照后,存储池将包含一个快照,其中快照包含根块和HBT的第一个版本的副本,其中HBT包括根块的第二个版本。 此外,在用根块的第二版本覆盖根块的第一版本之前创建根块的第一版本的副本,根块的第二版本包括对第一块和第二块的引用 ,并且根块的第一版本的副本包括对第一块的引用,并且不引用第二块。

    Ditto blocks
    6.
    发明授权
    Ditto blocks 有权
    同上个块

    公开(公告)号:US07743225B2

    公开(公告)日:2010-06-22

    申请号:US11406590

    申请日:2006-04-19

    IPC分类号: G06F12/00 G06F13/00 G06F13/28

    摘要: A method for storing a data block in a storage pool, including receiving a write operation for the data block, writing the data block into the storage pool, determining a first indirect block to store in the storage pool, wherein the first indirect block references the data block, writing the first indirect block to a first location in the storage pool, creating a copy of the first indirect block, and writing the copy of first indirect block to a second location in the storage pool.

    摘要翻译: 一种用于将数据块存储在存储池中的方法,包括接收对数据块的写入操作,将数据块写入存储池,确定存储在存储池中的第一间接块,其中第一间接块引用 数据块,将所述第一间接块写入所述存储池中的第一位置,创建所述第一间接块的副本,以及将所述第一间接块的副本写入所述存储池中的第二位置。

    Method and apparatus for enabling adaptive endianness
    7.
    发明授权
    Method and apparatus for enabling adaptive endianness 有权
    实现自适应字节顺序的方法和装置

    公开(公告)号:US07533225B1

    公开(公告)日:2009-05-12

    申请号:US10919886

    申请日:2004-08-17

    IPC分类号: G06F13/00

    CPC分类号: G06F13/4027

    摘要: A method for reading a block, involving receiving a request to obtain the block, wherein the request comprises a block pointer, determining a block endianness by reading an endianness bit, obtaining the block using the block pointer, and byte-swapping data in the block to obtain a byte-swapped block, if a host endianness does not match the block endianness.

    摘要翻译: 一种用于读取块的方法,包括接收获得所述块的请求,其中所述请求包括块指针,通过读取字节序位确定块的字节顺序,使用块指针获取块,以及块中的字节交换数据 以获得一个字节交换的块,如果一个主机字节不匹配块的字节顺序。

    Method and system for metadata-based resilvering
    8.
    发明授权
    Method and system for metadata-based resilvering 有权
    基于元数据的弹性恢复的方法和系统

    公开(公告)号:US08938594B2

    公开(公告)日:2015-01-20

    申请号:US11407719

    申请日:2006-04-19

    CPC分类号: G06F11/2082

    摘要: A method for resilvering a storage pool includes determining whether any of a first plurality of blocks in the storage pool, comprising metadata, require resilvering, determining whether any of a second plurality of blocks in the storage pool, comprising data, require resilvering, resilvering all of the first plurality of blocks that require resilvering, and resilvering all of the second plurality of blocks that require resilvering, wherein all of the first plurality of blocks that require resilvering are resilvered prior to resilvering any of the second plurality of blocks.

    摘要翻译: 用于恢复存储池的方法包括确定包括元数据的存储池中的第一多个块中的任何块是否需要恢复,确定包括数据的存储池中的第二多个块中的任何块是否需要弹性恢复,全部恢复 所述第一组多个块需要弹性恢复,以及弹塑所有需要回弹的所述第二多个块,其中所述需要回弹的所述第一组多个块在所述第二多个块中的任一块之前被弹性恢复。

    METHOD AND SYSTEM FOR DATA REPLICATION
    9.
    发明申请
    METHOD AND SYSTEM FOR DATA REPLICATION 有权
    数据复制方法与系统

    公开(公告)号:US20090313532A1

    公开(公告)日:2009-12-17

    申请号:US12544762

    申请日:2009-08-20

    IPC分类号: H03M13/09 G06F11/10

    CPC分类号: G06F11/1076 G06F2211/1059

    摘要: A method for writing data to a storage pool includes receiving a write operation to write a logical block of data to the storage pool, determining a number (n−1) of physical blocks required to store the logical block of data, generating a parity block using the logical block of data, allocating n physical blocks in the storage pool, writing the parity block in the first of n allocated physical block, and writing the logical block of data across the remaining n−1 allocated physical blocks, where n is less than a number of disks in the storage pool, and where each of the n allocated physical blocks is located on a different disk in the storage pool.

    摘要翻译: 一种将数据写入存储池的方法包括接收写入操作以将数据的逻辑块写入存储池,确定存储逻辑数据块所需的数量(n-1)个物理块,产生奇偶校验块 使用逻辑数据块,在存储池中分配n个物理块,将奇偶校验块写入n个分配的物理块中的第一个,并将逻辑数据块写入剩余的n-1个分配的物理块,其中n少于 比存储池中的多个磁盘,并且其中每个n个分配的物理块位于存储池中的不同磁盘上。

    Gang blocks
    10.
    发明授权
    Gang blocks 有权
    帮派块

    公开(公告)号:US07437528B1

    公开(公告)日:2008-10-14

    申请号:US10919878

    申请日:2004-08-17

    IPC分类号: G06F12/00 G06F13/00 G06F13/28

    摘要: A method for allocating space on a disk involving receiving a request to allocate space on the disk having a first size, determining whether contiguous space of the first size exists on the disk. If contiguous space of the first size exists on the disk, allocating the contiguous space on the disk to obtain a contiguous space address, and responding to the request to allocate space on disk with a contiguous space pointer. If no contiguous space of the first size exists on the disk, allocating a gang block header, populating the gang block header, and responding to the request to allocate space on the disk with a gang block header pointer.

    摘要翻译: 一种用于在盘上分配空间的方法,包括接收在具有第一大小的盘上分配空间的请求,确定盘上是否存在第一大小的连续空间。 如果磁盘上存在第一个大小的连续空间,则在磁盘上分配连续的空间以获取连续的空间地址,并响应该请求,以便在具有连续空间指针的磁盘上分配空间。 如果磁盘上没有存在第一个大小的连续空间,则分配一个组块头,填充组块头,并响应该请求,使用一个组块头指针在磁盘上分配空间。