Abstract:
In one embodiment, a system comprises a host processor and a storage system. The storage system comprises one or more storage devices, and each storage device comprises a non-volatile memory and a compute offload controller. The non-volatile memory stores data, and the compute offload controller performs compute tasks on the data based on compute offload commands from the host processor.
Abstract:
In accordance with some embodiments, classification of input/output requests from a database to a storage system may be performed. Each input/output request may be associated with a database class, and each database class may be mapped to a quality of service policy. Thus, quality of service may be enforced such that different data blocks within the storage system of the database may be afforded appropriate quality of service.
Abstract:
Embodiments of the present disclosure may relate to a compute offload controller that may include a parser to parse a received compute offload command, and identify a block-based compute descriptor based at least in part on the compute offload command. In some embodiments, the compute offload controller may further include an offload executor to perform an operation on data in a block-based storage device based at least in part on the block-based compute descriptor. In some embodiments, the block-based compute descriptor may include a virtual input object, a virtual output object, and a compute type identifier. Other embodiments may be described and/or claimed.
Abstract:
Embodiments of apparatuses and methods for adaptive data compression and associated contextual information are described. In various embodiments, an apparatus may include a context monitoring module to gather contextual information for transmission of data and a policy module to gather user preference on cost associated with transmission of data. The apparatus may further include an analysis module to determine whether to compress data prior to transmission, based at least in part on the contextual information and the user preference. Other embodiments may be described and/or claimed.
Abstract:
Embodiments of the present disclosure may relate to a compute offload controller that may include a parser to parse a received compute offload command, and identify a block-based compute descriptor based at least in part on the compute offload command. In some embodiments, the compute offload controller may further include an offload executor to perform an operation on data in a block-based storage device based at least in part on the block-based compute descriptor. In some embodiments, the block-based compute descriptor may include a virtual input object, a virtual output object, and a compute type identifier. Other embodiments may be described and/or claimed.
Abstract:
Computer-readable storage media, computing devices and methods associated with file cache management are discussed herein. In embodiments, a computing device may include a file cache and a file cache manager coupled with the file cache. The file cache manager may be configured to implement a context-aware eviction policy to identify a candidate file for deletion from the file cache, from a plurality of individual files contained within the file cache, based at least in part on file-level context information associated with the individual files. In embodiments, the file-level context information may include an indication of access recency and access frequency associated with the individual files. In such embodiments, identifying the candidate file for deletion from the file cache may be based, at least in part, on both the access recency and the access frequency of the individual files. Other embodiments may be described and/or claimed.
Abstract:
Techniques for storage and processing for distributed file systems are disclosed. In the illustrative embodiment, padding is placed between data elements in a file to be stored on a distributed file system. The file is to be split into several objects in order to be stored in the distributed file system, and the padding is used to prevent a data element from being split across two different objects. The objects are stored on data nodes, which analyze the objects to determine which data elements are present in the object as well at the location of those objects. The location of the objects is saved on the data storage device, and those locations can be used to perform queries on the data elements in the object on the data storage device itself. Such an approach can reduce transfer of data elements from data storage to local memory of the data node.
Abstract:
Methods and apparatus related to framework and/or methodology for selective caching of Erasure Coded fragments in a distributed storage system are described. In one embodiment, a plurality of fragments of a data object are generated. Each of the plurality of fragments is Erasure Coded (EC) prior to storage at a storage node of a plurality of storage nodes. Each of the plurality of fragments is transmitted with a caching hint to indicate whether that fragment is to be cached at the storage node. Other embodiments are also disclosed and claimed.
Abstract:
Storage class memory may be used in an architecture to achieve high performance, high reliability, high compatibility. In some embodiments, reads may be handled in a conventional way used in a memory based model. However writes do not use a memory based model but instead correspond to a storage based model. The hybrid nature can be achieved by setting the storage class memory to be write protected so that all writes must go through a software based block device interface. In some embodiments, the software based block device interface prevents erroneous writes to the storage class memory.
Abstract:
In accordance with some embodiments, identification of transport streams facilitates the classification of those streams. Classification of those streams in turn enables a classification to be matched to a quality of service policy. Thus, quality of service policies may be enforced so that different streams can be afforded appropriate quality of service.