G06F3/0644

WRITE ORDER PRESERVING DATA STREAM CONSUMPTION

A system, a method, and a computer program product for scalable processes for write-order preserving data stream consumption. A data partition in a plurality of data partitions of data stream is selected based on a request received from a client processing node. The plurality of data partitions are distributed among a plurality of broker nodes in a distributed messaging system. A broker node in the plurality of broker nodes hosting the selected data partition is identified. The identified broker node provides the selected data partition to the client processing node for performing at least one function.

Storing zones in a zone namespace on separate planes of a multi-plane memory device
11709605 · 2023-07-25 · ·

A processing device in a memory system receives requests to perform a plurality of memory access operations at a memory device configured with a zone namespace having a plurality of zones, the memory device comprising a plurality of planes, wherein each zone of the plurality of zones is associated with a respective plane of the plurality of planes. The processing device further concurrently performs the plurality of memory access operations on data stored in different zones of the plurality of zones, wherein the different zones are associated with different planes of the plurality of planes.

Memory controller and operating method thereof
11709606 · 2023-07-25 · ·

A memory controller controls a memory device including memory blocks, and can equalize wear levels of cores for controlling memory devices. The memory controller includes: cores for controlling the zones; a reset information controller for generating reset count values representing a number of reset requests input with respect to the zones, in response to a reset request, and generating reset count sum values obtained by summing reset count values of zones controlled by each of the cores; and a wear level manager for controlling the cores such that a core that is different from a first core having a highest reset count sum value from among the cores controls some of zones controlled by the first core according to whether a difference value between the highest reset count sum value and a lowest reset count sum value from among the reset count sum values exceeds a threshold difference value.

System and method for performing live partitioning in a data store

A system that implements a scalable data storage service may maintain tables in a data store on behalf of storage service clients. The service may maintain table data in multiple replicas of partitions that are stored on respective computing nodes in the system. In response to detecting an anomaly in the system, detecting a change in data volume on a partition or service request traffic directed to a partition, or receiving a service request from a client to split a partition, the data storage service may create additional copies of a partition replica using a physical copy mechanism. The data storage service may issue a split command defined in an API for the data store to divide the original and additional replicas into multiple replica groups, and to configure each replica group to maintain a respective portion of the table data that was stored in the partition before the split.

Memory system, memory controller and operating method
11709610 · 2023-07-25 · ·

A memory system, a memory controller and an operating method are disclosed. A first area, a second area included in the first area, and a third area are set. An area to which target data is to be written is determined to the first area or the third area. When the target data is written to the first area, the target data is preferentially written to the second area. The number of data bits stored per memory cell in the first area is less than the number of data bits stored per memory cell in the third area. As a consequence, it is possible to secure storage capacity of the memory system to at least a set reference while securing data write performance of the memory system recognized by a host to at least a set reference.

Method, device, and program product for managing storage pool of storage system
11709755 · 2023-07-25 · ·

Storage devices in a pool are divided into at least one group with a first number of storage devices in an existing group not higher than a range. When a second number of storage devices are added to the resource pool, a sum of the first number and the second number is determined. A new group is created based on at least a portion of the second number of storage devices when the sum does not satisfy the range; and another portion of the second number of storage devices are added to the existing group. A first storage space portion in each of a set of shared storage devices selected from the existing group is allocated to the existing group, and a second storage space portion in each of the set of shared storage devices is allocated to the new group. The storage space utilization rate can be increased.

DISTRIBUTED DATA SET ENCRYPTION AND DECRYPTION

An apparatus includes a processor component of a first node device caused to receive data block encryption data and an indication of size of an encrypted data block distributed to the first node device for decryption, and in response to the data set being of encrypted data: receive an indication of the quantity of sub-blocks within the encrypted data block, and a hashed identifier for each data sub-block; use the data block encryption data to decrypt the encrypted data block to regenerate data set portions from the data sub-blocks; analyze the hashed identifier of each data sub-block to determine whether all data set portions are distributed to the first node device for processing; and in response to a determination that at least one data set portion is to be distributed to a second node device for processing, transmit the at least one data set portion to the second node device.

PROCESSING APPARATUS AND NON-TRANSITORY COMPUTER READABLE MEDIUM
20180011652 · 2018-01-11 · ·

A processing apparatus includes a memory, a processor, and a setting processor. The memory has plural memory areas, and the plural memory areas include registered memory areas that are registered to be used, and unregistered memory areas that are not registered to be used. The processor stores input data in a corresponding memory area among the plural memory areas. In response to an instruction to perform a setting process related to a function which uses a memory area, the setting processor executes a setting process including registering a memory area selected from among the unregistered memory areas to use the selected memory area for the function or including presenting the selected memory area to a user as a candidate for the memory area used by the function.

Hot growing a cloud hosted block device
11709692 · 2023-07-25 · ·

A method of resizing a block storage volume for a virtual machine includes executing the virtual machine and attaching a virtual storage device to the virtual machine. The virtual storage device exposes the block storage volume on memory hardware to the virtual machine. The block storage volume includes a first storage capacity. The method also includes mounting the block storage volume to the virtual machine and resizing the block storage volume while the virtual machine continues to execute. The block storage volume is resized without attaching an additional virtual storage device to the virtual machine or mounting an additional block storage volume to the virtual machine.

File storage and computer system that creates new chunks after an update
11709628 · 2023-07-25 · ·

In file storage, a CPU is configured to: divide a file into a plurality of chunks, execute encoding processing on at least one of the chunks to obtain an encoded chunk, and store in cloud storage a plurality of chunks of the file including the encoded chunk; acquire, when receiving a read command of which target is data of a part of a file stored in the cloud storage, a read target chunk including data, which is a target of the read command, from the cloud storage; and execute, when an encoded chunk is included in the read target chunk, decoding processing on the encoded chunk, identify data that is a read target from the read target chunk including the chunk having been subjected to decoding processing, and hand over the identified data to a command source of the read command.