G06F12/0684

DETERMINING BYTE-HOURS USAGE OF A VAULT OR BY USERS

Systems and methods for determining utilization levels of storage within a dispersed storage network (DSN). The methods include obtaining transaction records, updating a cumulative data storage byte-hour count for storage of corresponding bytes of encoded data slices in the storage units of the DSN, and issuing byte-hour usage information based on the updated cumulative data storage byte-hour counts. Each transaction record can include one or more of an operation count, an operation type (e.g., read, write, delete), number of slice bytes transferred, number of slice bytes deleted, a timestamp, a user identifier, and a vault identifier. The updating can include one or more of identifying the one or more affiliated entities, determining a byte-hour adjustment (i.e., up or down) based on a transaction record, and updating a byte-hour record for affiliated entities based on the byte-hour adjustment.

LOGICALLY DEFINED DISPERSED STORAGE UNITS
20170192699 · 2017-07-06 ·

Methods for assigning data storage resources are disclosed. The methods includes obtaining memory resource availability information for a plurality of physical memory devices of a dispersed storage network, determining a number of logical storage units for the dispersed storage network, determining a memory capacity level for each of the logical storage units, determining a mapping in accordance with a mapping approach of at least some of the plurality of physical memory devices to achieve a corresponding memory capacity level, and when accessing encoded data slices associated with the logical storage unit by an accessing entity, communicating slice access messages with a dispersed storage unit associated with the logical storage unit. A dispersed storage managing unit and dispersed storage network are also disclosed.

REDUCING DATA STORED WHEN USING MULTIPLE INFORMATION DISPERSAL ALGORITHMS
20170192700 · 2017-07-06 ·

Systems and methods for storing data in a dispersed storage network using at least two information dispersal algorithms (IDA's) having different widths and thresholds are disclosed. In multiple IDA configurations, at least two IDA's with different widths and thresholds are paired and used to store the data multiple times, where some IDA's provide wider IDA configurations that are more reliable and other IDA's provide narrower configurations with a lower threshold and lower reliability. Given the data stored in the less reliable IDA configurations is stored as a performance optimization to reduce the input/output operations necessary for reading the data, it is not in all circumstances, necessary to write the data in the less reliable IDA configurations. As a further optimization, the processing unit may opt to write only a subset of the IDA configurations. Similarly, dispersed storage units themselves, when reaching the capacity limits for their memory devices, may begin to delete slices they hold for some of the IDA configurations, to free up space.

INTELLIGENT SLICE CACHING
20170192898 · 2017-07-06 ·

Systems and methods for intelligent slice caching in a dispersed storage network. The methods include determining a minimum slice access rate for encoded data slices to be stored, determining a least access rate of a least accessed encoded data slice stored, determining an estimated access rate for an encoded data slice and determining whether to store the encoded data slice in small fast memory as a cached encoded data slice based on the minimum slice access rate, the least access rate, and the estimated access rate. The method further includes facilitating storage of the encoded data slice in small fast memory. The method may also include updating the minimum slice access rate and transferring an encoded data slice stored in small fast memory to large slow memory when an actual access rate is less than the minimum slice access rate or is less than the least access rate.

APPLYING MULTIPLE HASH FUNCTIONS TO GENERATE MULTIPLE MASKED KEYS IN A SECURE SLICE IMPLEMENTATION
20170192907 · 2017-07-06 ·

Methods and apparatus for efficiently storing and accessing secure data are disclosed. The method of storing includes encrypting data utilizing an encryption key to produce encrypted data, performing deterministic functions on the encrypted data to produce deterministic function values, masking the encryption key utilizing the deterministic function values to produce masked keys and combining the encrypted data and the masked keys to produce a secure package. The method of accessing includes de-combining a secure package to reproduce encrypted data and masked keys, selecting a deterministic function, performing the selected deterministic function on the reproduced encrypted data to reproduce a deterministic function value, de-masking a corresponding masked key utilizing the reproduced deterministic function value to reproduce an encryption key, and decrypting the reproduced encrypted data utilizing the reproduced encryption key to reproduce data.

ESTIMATING A NUMBER OF ENTRIES IN A DISPERSED HIERARCHICAL INDEX

Methods and systems for estimating a number of entries in a dispersed hierarchical index. The method and systems involve determining a number of random walks N to perform on the dispersed hierarchical index, conducting N walkthroughs based on the number of walkthroughs, determining a number of walk entries for each of the N random walks and averaging the number of walk entries for each of the N random walks to produce an estimated total number of entries for the dispersed hierarchical index. The determining may be based on one or more of a number of levels, a desired confidence interval, a predetermination, and interpretation of system registry information, and an interpretation of a request. Each random walk starts at a root node and ends at a leaf node through L levels of the dispersed hierarchical index.

DETAILED MEMORY DEVICE STATISTICS WITH DRIVE WRITE LOCATION DETERMINATION
20170195420 · 2017-07-06 ·

Method and systems for selecting memory resources in a dispersed storage network (DSN) include a processing module obtaining deep statistics for one or more memory device of at least some storage units of a plurality of storage units of the DSN. The processing module also determines a performance level of the memory device based on the associated deep statistics of at least the memory device and further determines whether to access a memory device based on the associated performance level of the memory device. For example, the processing module indicates not to access the memory device when the performance level of the memory device is less than a minimum performance threshold level and selects another memory device associated with a favorable performance level. In addition to, the processing module can generate a new DSN address for new data storage where the new DSN address is associated with the another memory device.

Data compression using accelerator with multiple search engines

In an embodiment, a processor includes hardware processing cores, a cache memory, and a compression accelerator comprising a hash table memory. The compression accelerator is to: determine a hash value for input data to be compressed; read a first plurality of N location values stored in a hash table entry indexed by the hash value; perform a first set of string searches in parallel from a history buffer using the first plurality of N location values stored in the hash table entry; read a second plurality of N location values stored in a first overflow table entry indexed by a first overflow pointer included in the hash table entry; and perform a second set of string searches in parallel from the history buffer using the second plurality of N location values stored in the first overflow table entry. Other embodiments are described and claimed.

OUT-OF-RANGE REFERENCE DETECTION DEVICE, METHOD, AND RECORDING MEDIUM
20170139828 · 2017-05-18 · ·

An out-of-range reference detection method according to an exemplary aspect of the invention includes: acquiring a mask value corresponding to a base address register number of a predetermined effective address from a mask value storage unit storing correspondence relationships between the base address register number of a base address register storing a base address of a segment and the mask value showing a size of a memory that can be continuously referred to from the base address, determining whether or not the effective address is outside the range of the mask value, and outputting a result of the determination.

DATA COMPRESSION USING ACCELERATOR WITH MULTIPLE SEARCH ENGINES

In an embodiment, a processor includes hardware processing cores, a cache memory, and a compression accelerator comprising a hash table memory. The compression accelerator is to: determine a hash value for input data to be compressed; read a first plurality of N location values stored in a hash table entry indexed by the hash value; perform a first set of string searches in parallel from a history buffer using the first plurality of N location values stored in the hash table entry; read a second plurality of N location values stored in a first overflow table entry indexed by a first overflow pointer included in the hash table entry; and perform a second set of string searches in parallel from the history buffer using the second plurality of N location values stored in the first overflow table entry. Other embodiments are described and claimed.