Abstract:
A system and method enables efficient implementation of snapshots of data organized as arbitrary data structures on a byte-addressable persistent memory of a host computer. A user-level library of the host computer may configure the persistent memory as a software transactional memory (STM) system defined by operations, such as a STM commit operation, that ensure safe and consistent storage of the data (i.e., the data structures) within a region of the persistent memory. The library may then cooperate with an application executing on the host computer to control access to a data structure, e.g., to change a datum, stored in the region of the persistent memory as a transaction using the STM commit operation. Within a context of the transaction, the library may precisely determine which byte or bytes of the datum have changed within the region, as well as how and when the bytes have changed. Armed with precise knowledge of the context of the transaction, the library may efficiently implement a snapshot (i.e., point-in-time copy) of the changed datum and its associated data structure at the granularity at which it was modified, e.g., at the byte-addressable granularity.
Abstract:
A system and method for efficiently replicating data stored in a byte-addressable, persistent memory of a host computer. A user-level library of the host computer may configure the persistent memory as a software transactional memory (STM) system defined by operations, such as a STM commit operation, that ensure safe and consistent storage of the data within a region of the persistent memory. The library may then cooperate with an application executing on the host computer to control access to the data, e.g., to change the data, as a transaction using the STM commit operation. Within a context of the transaction, the library may precisely determine which bytes of the data have changed within the region, as well as how and when the data bytes have changed. Armed with precise knowledge of the context of the transaction, the library may efficiently replicate the changed data at the byte-addressable granularity.
Abstract:
The embodiments described herein provide a system and method for efficiently storing small, random modifications or changes to data on one or more storage devices, such as disks, of storage servers coupled to a host computer in a network environment. Illustratively, the data is stored in a region of a byte-addressable, persistent memory of the host computer and is replicated (i.e., copied) as changed data of the region on the disks at the granularity at which it was modified, e.g., at the byte-addressable granularity. To that end, each storage server employs a data structure (e.g., a Fibonacci array) that is configured to efficiently accumulate the small, random data changes into one or more large blocks of changed data for storage on the disks in a manner that realizes the streaming bandwidth of the disk.
Abstract:
The present technology relates to identifying an artificial intelligence model based on a received first key value to write a received first block of data associated with a file. The received first key value is applied to the identified artificial intelligence model which is trained to output one of a plurality of actual index values where the identified artificial intelligence model and the plurality of data blocks are stored as a neural tree. The one of the actual index values is compared to a range within the actual index values to determine when the one of the actual index value points to a first data block of the plurality of data. The received first block of data associated with the file is written into the determined first data block.
Abstract:
The embodiments described herein provide a system and method for efficiently storing small, random modifications or changes to data on one or more storage devices, such as disks, of storage servers coupled to a host computer in a network environment. Illustratively, the data is stored in a region of a byte-addressable, persistent memory of the host computer and is replicated (i.e., copied) as changed data of the region on the disks at the granularity at which it was modified, e.g., at the byte-addressable granularity. To that end, each storage server employs a data structure (e.g., a Fibonacci array) that is configured to efficiently accumulate the small, random data changes into one or more large blocks of changed data for storage on the disks in a manner that realizes the streaming bandwidth of the disk.
Abstract:
A system and method for efficiently replicating data stored in a byte-addressable, persistent memory of a host computer. A user-level library of the host computer may configure the persistent memory as a software transactional memory (STM) system defined by operations, such as a STM commit operation, that ensure safe and consistent storage of the data within a region of the persistent memory. The library may then cooperate with an application executing on the host computer to control access to the data, e.g., to change the data, as a transaction using the STM commit operation. Within a context of the transaction, the library may precisely determine which bytes of the data have changed within the region, as well as how and when the data bytes have changed. Armed with precise knowledge of the context of the transaction, the library may efficiently replicate the changed data at the byte-addressable granularity.
Abstract:
The present technology relates to identifying an artificial intelligence model based on a received first key value to write a received first block of data associated with a file. The received first key value is applied to the identified artificial intelligence model which is trained to output one of a plurality of actual index values where the identified artificial intelligence model and the plurality of data blocks are stored as a neural tree. The one of the actual index values is compared to a range within the actual index values to determine when the one of the actual index value points to a first data block of the plurality of data. The received first block of data associated with the file is written into the determined first data block.
Abstract:
The present technology relates to identifying one of a plurality of artificial intelligence models based on a received key value. The received key value is applied to the identified one of the artificial intelligence models which is trained to output one of a plurality of actual index values. The one of the actual index values is compared to a range within the actual index values to determine when the one of the actual index value points to the data block. A received input-output operation is performed on the data block when the one of the actual index values is determined to point to the data block.
Abstract:
The present technology relates to identifying one of a plurality of artificial intelligence models based on a received key value. The received key value is applied to the identified one of the artificial intelligence models which is trained to output one of a plurality of actual index values. The one of the actual index values is compared to a range within the actual index values to determine when the one of the actual index value points to the data block. A received input-output operation is performed on the data block when the one of the actual index values is determined to point to the data block.
Abstract:
A system and method for efficiently replicating data stored in a byte-addressable, persistent memory of a host computer. A user-level library of the host computer may configure the persistent memory as a software transactional memory (STM) system defined by operations, such as a STM commit operation, that ensure safe and consistent storage of the data within a region of the persistent memory. The library may then cooperate with an application executing on the host computer to control access to the data, e.g., to change the data, as a transaction using the STM commit operation. Within a context of the transaction, the library may precisely determine which bytes of the data have changed within the region, as well as how and when the data bytes have changed. Armed with precise knowledge of the context of the transaction, the library may efficiently replicate the changed data at the byte-addressable granularity.