Abstract:
An underlying physical volume of a storage system is an aggregate having a plurality of storage devices. The aggregate has its own physical volume block number (pvbn) space. A file system layout apportions the underlying physical volume into a plurality of virtual volumes of the storage system each having a virtual volume identification (vvid). Each virtual volume has its own virtual volume block number (vvbn) space. The block allocation structures of a virtual volume are sized to the virtual volume, and not to the underlying aggregate, to thereby allow operations that manage data served by the storage system (e.g., snapshot operations) to efficiently work over the virtual volumes. Each storage block in a virtual volume is identified by the triplet: pvbn, vvid, and vvbn.
Abstract:
A method and apparatus for operating a data storage system is disclosed. An original active file system holds incoming write transactions. Data is written at a selected time to blocks in a data storage device of the original active file system, the data written to blocks which do not hold old data of the data storage system. Pointers to data of the original active file system are written at the selected time to the data storage device, the pointers written to blocks which do not hold old data of the data storage system, the pointers and a previously saved data of the active file system forming a consistency point of the original active file system at the selected time. A new active file system is started using the consistency point of the original active file system at the selected time.
Abstract:
A system and method for operating a storage system is provided. A plurality of operating system transaction entries are stored in a log, and a swarm of messages with respect to the plurality of operating system transaction entries is established. The swarm of messages is delivered to an operating system of the storage system. A processor performs a parallel retrieval process for a plurality of messages in the swarm of messages by processing the plurality of messages in an arbitrary order without regard to an underlying order of the messages.
Abstract:
A system and method for operating a storage system is provided. A plurality of operating system transaction entries are stored in a log, and a swarm of messages with respect to the plurality of operating system transaction entries is established. The swarm of messages is delivered to an operating system of the storage system. A processor performs a parallel retrieval process for a plurality of messages in the swarm of messages by processing the plurality of messages in an arbitrary order without regard to an underlying order of the messages.
Abstract:
A write allocation technique extends a conventional write allocation procedure employed by a write anywhere file system of a storage system. A write allocator of the file system implements the extended write allocation technique in response to an event in the file system. The extended write allocation technique efficiently allocates blocks, and frees blocks, to and from a virtual volume (vvol) of an aggregate. The aggregate is a physical volume comprising one or more groups of disks, such as RAID groups, underlying one or more vvols of the storage system. The aggregate has its own physical volume block number (pvbn) space and maintains metadata, such as block allocation structures, within that pvbn space. Each vvol also has its own virtual volume block number (vvbn) space and maintains metadata, such as block allocation structures, within that vvbn space. The inventive technique extends input/output efficiencies of the conventional write allocation procedure to comport with an extended file system layout of the storage system.
Abstract:
A file system layout apportions an underlying physical volume into one or more virtual volumes (vvols) of a storage system. The underlying physical volume is an aggregate comprising one or more groups of disks, such as RAID groups, of the storage system. The aggregate has its own physical volume block number (pvbn) space and maintains metadata, such as block allocation structures, within that pvbn space. Each vvol has its own virtual volume block number (vvbn) space and maintains metadata, such as block allocation structures, within that vvbn space. Notably, the block allocation structures of a vvol are sized to the vvol, and not to the underlying aggregate, to thereby allow operations that manage data served by the storage system (e.g., snapshot operations) to efficiently work over the vvols. The file system layout extends the file system layout of a conventional write anywhere file layout system implementation, yet maintains performance properties of the conventional implementation.
Abstract:
A system and method creates a writable clone of a read-only volume. A base snapshot is generated on a source volume on a source storage system and is duplicated as a read-only base snapshot replica on a target volume on a destination storage system. A copy (“clone) is then substantially instantaneously created from the read-only base snap-shot replica, thereby creating a writable clone of a read-only volume.
Abstract:
A system and method for enabling parallel replay of a backup memory log of client transaction request entries to a network storage appliance file system is provided. The backup memory is typically implemented as a non-volatile random access memory (NVRAM). An initiator establishes a swarm of messages with a plurality of transaction blocks pointing to logged request entries and related states associated therewith. The states represent the various phases of file system recovery and disk storage including a retrieval of disk information (data and meta-data), typically in the form of a LOAD, and a subsequent modify phase. The swarm is transferred to the file system for parallel disk information-retrieval in an interleaved process. Any transactions that cannot be performed due to a required prerequisite action (e.g. a prior file-create) are returned to the initiator for reloading once the prerequisite action has occurred.
Abstract:
In a system and method for updating a remote replicated destination file system snapshot with changes in a source file system snapshot, the snapshot being associated with a qtree (or other sub-organization of the file system volume), a qtree metadata file on the destination in provided. The qtree metadata file resides, in the destination volume, and outside the qtree structure. The metadata file stores state information with respect to each qtree. This metadata file resides at a known location in the destination volume. The metadata file can include a plurality of fixed length records having respective fields for storing various information including qtree-specific information, and can be part of a hidden metadata directory.
Abstract:
A method and system for reliably performing extra-long operations in a reliable state-full system (such as a file system). The file system includes a separate portion of the file system reserved for files having extra-long operations in progress, including file deletion and file truncation. This separate portion of the file system is called the zombie file space; it includes a separate name space from the regular (“live”) file system that is accessible to users, and is maintained as part of the file system when recording a consistency point.