Plurality Of Memory Devices (e.g., Array, Etc.) Patents (Class 714/6.2)
  • Patent number: 9164827
    Abstract: Method and apparatus for protecting data comprising dividing data into a plurality of data subsets. Generating parity data for each data subset and another data subset of the plurality of data subsets. Generating parity data for each data subset and a second other data subset of the plurality of data subsets. Method and apparatus for recovering data comprising retrieving one or more data subsets. Retrieving two or more different parity data sets generated for one data subset. Regenerating any missing data subsets using the retrieved one or more data subset and two or more retrieved parity data sets. Combining the one or more retrieved data subset and regenerated missing data subsets to form the recovered data.
    Type: Grant
    Filed: July 17, 2012
    Date of Patent: October 20, 2015
    Assignee: Qando Services Inc.
    Inventors: Iskender Syrgabekov, Yerkin Zadauly
  • Patent number: 9122699
    Abstract: A failure resilient distributed replicated data storage system is described herein. The storage system includes zones that are independent, and autonomous from each other. The zones include nodes that are independent and autonomous. The nodes include storage devices. When a data item is stored, it is partitioned into a plurality of data objects and a plurality of parity objects calculated. Reassembly instructions are created for the data item. The data objects and parity objects are spread across all nodes and zones in the storage system. Reassembly instructions are also spread across the zones. When a read request is received, the data item is prepared from the lowest latency nodes according to the reassembly instructions. This provides for data resiliency while keeping the amount of storage space required relatively low.
    Type: Grant
    Filed: December 14, 2012
    Date of Patent: September 1, 2015
    Assignee: DataDirect Networks, Inc.
    Inventors: Donald J. Molaro, David Fellinger, Adam Fried-Gintis, Dan Olster
  • Patent number: 9087612
    Abstract: Errors on a dynamic random access memory (“DRAM”) having an error correcting decoder (“ECC”) can be detected by the ECC when reading a row of the DRAM. The ECC includes error correcting code logic. If errors are detected that cannot be corrected by the ECC logic, test control logic determines weak cell information for the row, evaluates the errors using the weak cell information, and may correct the errors. The weak cell information may include weak cell locations and failure values.
    Type: Grant
    Filed: February 28, 2013
    Date of Patent: July 21, 2015
    Assignee: International Business Machines Corporation
    Inventors: Michele M. Franceschini, Hillery C. Hunter, Ashish Jagmohan, Charles A. Kilmer, Kyu-hyoun Kim, Luis A. Lastras-Montano, Moinuddin K. Qureshi
  • Patent number: 9087005
    Abstract: A method and associated systems for increasing resiliency of a distributed computing system. A processor creates a first virtual machine and a second virtual machine, each of which monitor the other. When the first virtual machine identifies that the second virtual machine has become unavailable or is otherwise compromised, the first virtual machine automatically requests that a system-management entity restart the unavailable machine. If a certain number of restart attempts fails to restore the second virtual machine to desired functionality, the first virtual machine automatically requests that the system-management entity recreate or reprovision the second virtual machine from a prior backup. If a certain number of such recreations or reprovisionings attempts fails, a system administrator is automatically notified that further action is needed.
    Type: Grant
    Filed: May 31, 2013
    Date of Patent: July 21, 2015
    Assignee: International Business Machines Corporation
    Inventors: Han Chen, Joachim H. Frank, Hui Lei, E. Michael Maximilien, Lin Yang
  • Patent number: 9081701
    Abstract: Apparatus and methods provide relatively low uncorrectable bit error rates, low write amplification, long life, fast and efficient retrieval, and efficient storage density such that a solid-state drive (SSD) can be reliably implemented using various types of memory cells, including relatively inexpensive multi-level cell flash. One embodiment intelligently coordinates remapping of bad blocks with error correction code control, which eliminates the tables used to avoid bad blocks.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: July 14, 2015
    Assignee: PMC-Sierra, Inc.
    Inventors: Philip Lyon Northcott, Peter Graumann, Stephen Bates
  • Patent number: 9043574
    Abstract: A dispersed storage (DS) unit for use within a dispersed storage network is capable of self-configuring using registry information provided to the DS unit. The registry information includes a slice name assignment indicating a range of slice names corresponding to a plurality of potential data slices of potential data objects to be stored in the DS unit. Based on the registry information, the DS unit allocates a portion of physical memory to store the potential data slices.
    Type: Grant
    Filed: December 28, 2012
    Date of Patent: May 26, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Manish Motwani, Wesley Leggette
  • Patent number: 9043660
    Abstract: Embodiments relate to a computer implemented information processing system, method and program product for data access. The information processing system includes a data store having a top tier store and at least another tier store with the top tier store including a counter for each entry of a symbol and another tier store including a representative frequency value defined for the another tier store. A sorter is also provided configured to sort the symbol in the top tier store and the another tier stores according to a value generated in the counter for the assessed symbol. The said sorter is also configured to restore entry of the symbol in the top tier store, in response to a symbol having moved from said top tier store to another tier store, by using the representative frequency value defined for said another store to which said symbol was moved.
    Type: Grant
    Filed: October 26, 2012
    Date of Patent: May 26, 2015
    Assignee: International Business Machines Corporation
    Inventors: Takashi Imamichi, Teruo Koyanagi, Raymond H. P. Rudy, Yuya Unno
  • Patent number: 9037900
    Abstract: The method includes receiving a command at a first storage system of a block storage cluster. The command is transmitted by the initiator system to the first storage system via a network and includes a request for data. The method further includes transferring the stored data from the first storage system to the initiator system via the network when data requested in the data request is stored by the first storage system. The method further includes transmitting a referral response from the first storage system to the initiator system when a portion of the data requested in the data request is not stored by the first storage system, but is stored by a second storage. system of the block storage cluster.
    Type: Grant
    Filed: July 16, 2014
    Date of Patent: May 19, 2015
    Assignee: NETAPP, INC.
    Inventors: Gerald J. Fredin, Andrew J. Spry, Kenneth J. Gibson, Ross E. Zwisler
  • Patent number: 9026843
    Abstract: Systems and methods presented herein provide for managing connections in a SAS domain comprising at least first and second expanders. The first expander detects a failure of the initiator and indicates a change in the SAS domain to the second expander. The second expander detects an increase in arbitration wait time for a connection between the initiator and the target device, determines a race condition exists in the second expander, denies the connection between the initiator and the target device, directs the target device to wait for another connection, performs a discovery of the domain based on the discovery request from the first expander, and prevents a subsequent connection by the target device to the initiator after discovery completes.
    Type: Grant
    Filed: August 8, 2013
    Date of Patent: May 5, 2015
    Assignee: LSI Corporation
    Inventors: Reid A. Kaufmann, Charles D. Henry, Jeffrey D. Weide
  • Patent number: 9015523
    Abstract: Apparatuses and methods associated with memory allocations for virtual machines are disclosed. In embodiments, an apparatus may include a processor; a plurality of memory modules; and a memory controller configured to provide a layout of the memory modules. The apparatus may further include a VMM configured to be operated by the processor to manage execution of a VM by the processor including selective allocation of the memory modules to the VM using the layout of the memory modules provided to the VMM by the memory controller. Other embodiments may be described and claimed.
    Type: Grant
    Filed: December 20, 2012
    Date of Patent: April 21, 2015
    Assignee: Intel Corporation
    Inventors: Sudip S. Chahal, Mohan J. Kumar, Don G. Meyers, David Stanasolovich, Joshua Boelter
  • Patent number: 9015524
    Abstract: The SSD performs to encode input data from the host device into BCH code having data length and code length sequentially and controls RRAM to stores the encoded data when the write requesting signal is input from the host device. When the number of BCH code that becomes data of one page of the flash memory after being decoded is stored to RRAM, the SSD controls RRAM to read out data stored in RRAM, performs error correction and decoding to the read data as BCH code having the data length and the code length, and controls the flash memory to store the encoded data.
    Type: Grant
    Filed: August 5, 2011
    Date of Patent: April 21, 2015
    Assignee: The University of Tokyo
    Inventors: Ken Takeuchi, Mayumi Fukuda
  • Patent number: 9003227
    Abstract: A method is used in recovering file system blocks of file systems. A first read error is encountered upon reading a file system block of a file system. The file system block includes a first set of chunks. A second read error is encountered upon reading a duplicate copy of the file system block. The duplicate copy of the file system block includes a second set of chunks. Each chunk of the first and second sets of chunks is evaluated. Based on the evaluation, the file system block is recovered.
    Type: Grant
    Filed: June 29, 2012
    Date of Patent: April 7, 2015
    Assignee: EMC Corporation
    Inventors: Dixitkumar Vishnubhai Patel, Srinivasa Rao Vempati, Jean-Pierre Bono, Luogeng Dai
  • Patent number: 8996910
    Abstract: A method begins by a dispersed storage (DS) processing module determining storage device failure information for a plurality of storage devices within a maintenance free storage container, wherein the maintenance free storage container allows for multiple storage devices of the plurality of storage devices to be in a failure mode without replacement and wherein the storage device failure information indicates storage devices of the plurality of storage devices that are in the failure mode. The method continues with the DS processing module maintaining a dynamic container address space of the maintenance free storage container based on the storage device failure information. The method continues with the DS processing module managing mapping of container addresses of the dynamic container address space to dispersed storage network (DSN) addresses of an assigned DSN address range.
    Type: Grant
    Filed: April 18, 2012
    Date of Patent: March 31, 2015
    Assignee: Cleversafe, Inc.
    Inventors: S. Christopher Gladwin, Jason K. Resch, Gary W. Grube, Timothy W. Markison
  • Patent number: 8977890
    Abstract: According to one embodiment, a memory system includes a first memory, a second memory, and a control unit. The first memory includes a volatile first register retaining a first operation parameter. The control unit performs a first operation of retaining the first operation parameter in the second memory. Then, the control unit turns OFF the first memory while retaining the first operation parameter in the second memory when an operation mode is switched from a first mode to a power saving second mode. Then, the control unit performs a second operation of turning on the first memory, and transferring the first operation parameter retained in the second memory to the first register when the operation mode is switched from the second mode to the first mode.
    Type: Grant
    Filed: December 20, 2012
    Date of Patent: March 10, 2015
    Assignee: Kabushiki Kaisha Toshiba
    Inventor: Kohei Oikawa
  • Patent number: 8977892
    Abstract: A disk control apparatus includes a processor, and a memory coupled to the processor in which executes a process as follows. The process includes diagnosing whether or not a failure has occurred on each of a plurality of disk apparatuses, determining, when the failure has occurred, whether or not the failure is a pre-defined failure, and excluding from diagnosis targets, when the failure is the pre-defined failure, a disk apparatus group included in a RAID together with a failed disk apparatus that is determined to have the pre-defined failure in the plurality of disk apparatuses.
    Type: Grant
    Filed: July 5, 2012
    Date of Patent: March 10, 2015
    Assignee: Fujitsu Limited
    Inventors: Kenji Kobayashi, Norihide Kubota, Atsushi Igashira, Ryota Tsukahara, Hidejirou Daikokuya, Kazuhiko Ikeuchi, Chikashi Maeda
  • Patent number: 8972777
    Abstract: Multiple storage apparatuses are provided, at least part of which are individually incorporated into one of storage groups. Each of multiple control apparatuses is configured to, when assigned one or more of the storage groups each including one or more of the storage apparatuses, control data storage by storing data designating each assigned storage group redundantly in the storage apparatuses of the assigned storage group. An information processing apparatus is configured to, when a storage group with data redundancy being lost is detected, make a change in control apparatus assignment for the storage groups in such a manner that a storage group different from the detected storage group is not assigned to a control apparatus with the detected storage group assigned thereto. Subsequently, the information processing apparatus causes the control apparatus to execute a process of restoring the data redundancy of the detected storage group.
    Type: Grant
    Filed: March 18, 2013
    Date of Patent: March 3, 2015
    Assignee: Fujitsu Limited
    Inventors: Kazutaka Ogihara, Yasuo Noguchi, Tatsuo Kumano, Masahisa Tamura, Kazuichi Oe, Toshihiro Ozawa, Munenori Maeda, Ken Iizawa, Jun Kato
  • Patent number: 8972779
    Abstract: Disclosed is a method of calculating parity. The method dividing, by a client system, a file which is to be stored into chunks of a preset size and distributively storing the chunks in a plurality of data servers; sending, by the client system, a data write complete notification message to a metadata server; storing, by the metadata server, a file sent through the data write complete notification message in a recovery queue; and sending, by the metadata server, a random data server a parity calculation request for the file stored in the recovery queue.
    Type: Grant
    Filed: December 2, 2011
    Date of Patent: March 3, 2015
    Assignee: Electronics and Telecommunications Research Institute
    Inventors: Sang Min Lee, Hong Yeon Kim, Young Kyun Kim, Han Namgoong
  • Patent number: 8972776
    Abstract: An apparatus includes a non-volatile memory and a controller. The non-volatile memory includes a plurality of R-blocks. The controller is coupled to the non-volatile memory. The controller is configured to (i) write data using the R-blocks as a unit of allocation and (ii) perform recycling operations selectively on either an entire one of the R-blocks or a portion less than all of one of the R-blocks.
    Type: Grant
    Filed: March 7, 2013
    Date of Patent: March 3, 2015
    Assignee: Seagate Technology, LLC
    Inventors: Leonid Baryudin, Alex G. Tang, Earl T. Cohen
  • Patent number: 8966311
    Abstract: A method begins by a processing module determining failure mode information for a plurality of storage modules of a maintenance-free storage container. The method continues with the processing module managing storage mapping information of data content within the plurality of storage modules based on the failure mode information and receiving a data access request. The method continues with the processing module interpreting the data access request based on the storage mapping information to identify one or more of the plurality of storage modules to produce one or more identified storage modules and generating an in-container data access request based on the data access request and the one or more identified storage modules. The method continues with the processing module sending the in-container data access request to the one or more identified storage modules.
    Type: Grant
    Filed: June 20, 2012
    Date of Patent: February 24, 2015
    Assignee: Cleversafe, Inc.
    Inventors: S. Christopher Gladwin, Jason K. Resch, Gary W. Grube, Timothy W. Markison
  • Patent number: 8966341
    Abstract: A method includes a DSN access token module retrieving one or more sets of at least a threshold number of dispersed storage (DS) error coding function slices from the DSN memory via the computing device. The method continues with the computing device and/or the DSN access token module decoding the one or more sets of the at least a threshold number of DS error coding function slices using a default DS error coding function to recapture a DS error coding function. The method continues with the computing device and/or the DSN access token module generating a plurality of sets of data access requests in accordance with the DS error coding function. The method continues with the computing device sending the plurality of sets of data access requests to the DSN memory.
    Type: Grant
    Filed: May 13, 2014
    Date of Patent: February 24, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison, Greg Dhuse, Jason K. Resch, Ilya Volvovski, Wesley Leggette
  • Patent number: 8959375
    Abstract: A system and method for power management of storage resources are disclosed. A method may include detecting an occurrence of an event associated with a storage resource disposed in an array of storage resources. The method may further include transitioning the storage resource into a specified power state in response to the detection of the occurrence of the event. A system may include a storage resource and a power management module communicatively coupled to the storage resource. The storage resource may be disposed in an array of storage resources. The power management module may be operable to detect an occurrence of an event associated with the storage resource, and may be operable to transition the storage resource into a specified power state in response to the detection of the occurrence of the event.
    Type: Grant
    Filed: April 9, 2014
    Date of Patent: February 17, 2015
    Assignee: Dell Products L.P.
    Inventors: Christiaan Wenzel, Radhakrishna Dasari, Vishwanath Jayaraman, Jianwen Yin
  • Patent number: 8959388
    Abstract: A technique of managing thin pool logical unit (TLU) recovery is performed in a data storage array that forms TLUs from a slice storage pool of logical unit (LUN) slices. The technique involves allocating a set of LUN slices of the slice storage pool to support TLU recovery. The technique further involves, after the set of LUN slices has been allocated, taking offline a TLU which currently requires TLU recovery. The technique further involves, while the TLU is offline, performing a TLU recovery procedure to recover the TLU. The TLU recovery procedure utilizes the set of LUN slices that was allocated to support TLU recovery.
    Type: Grant
    Filed: December 28, 2012
    Date of Patent: February 17, 2015
    Assignee: EMC Corporation
    Inventors: Yaming Kuang, Dennis Duprey, Samuel Mullis, Changxin Liu
  • Patent number: 8954783
    Abstract: Technologies are described herein for providing a two-tier failover service. A request to access content by an application associated with an application identifier may be identified. A first record corresponding to the application identifier may be retrieved from a database information table. The first record may include a reference identifier, a database name of a database, and a failover value. A second record corresponding to the reference identifier may be retrieved from a server information table. The second record may include an indication of a first server computer as a primary server computer and an indication of a second server computer as a secondary server computer. A connection specification to either the first server computer or the second server computer may be generated based on the first record and the second record.
    Type: Grant
    Filed: June 28, 2012
    Date of Patent: February 10, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Shen Wang, Joseph Milan Filcik, Vijayalakshmi Ramkumar, Steven Greenberg, Chris Seitzinger, Brian Eugene Kihneman
  • Patent number: 8954787
    Abstract: A maintenance free storage container includes a plurality of storage servers, wherein the maintenance free storage container allows for multiple storage servers of the plurality of storage servers to be in a failure mode without replacement. The maintenance free storage container further includes a container controller operable to manage failure mode information of the plurality of storage servers, manage mapping of a plurality of virtual storage servers to at least some of the plurality of storage servers based on the failure mode information, communicate storage server access requests with a device external to the maintenance free storage container using addressing of the plurality of virtual storage servers, and communicate the storage server access requests within the maintenance free storage container using addressing of the plurality of storage servers.
    Type: Grant
    Filed: April 18, 2012
    Date of Patent: February 10, 2015
    Assignee: Cleversafe, Inc.
    Inventors: S. Christopher Gladwin, Jason K. Resch, Gary W. Grube, Timothy W. Markison
  • Patent number: 8954793
    Abstract: A method and a storage server for backing up data, involves mass storage devices of users of the service that connect to the storage server of the service provider over a public data network. The customers store the data with their terminals. The data is stored to the file system of the mass storage device which encrypts the stored data and transfers the data in encrypted form over the public data network to the storage server. The storage server calculates error correction data from the encrypted data. The error correction data is stored in the mass memory of the storage server. When recovering the stored data of the users, the storage server requests the stored data of all the users whose data was used for the error correction data calculation over the public data network to be used for the recovery calculation.
    Type: Grant
    Filed: September 15, 2010
    Date of Patent: February 10, 2015
    Assignee: Varaani Works Oy
    Inventor: Kimmo Lahdensivu
  • Publication number: 20150039932
    Abstract: Systems and methods presented herein provide for managing connections in a SAS domain comprising at least first and second expanders. The first expander detects a failure of the initiator and indicates a change in the SAS domain to the second expander. The second expander detects an increase in arbitration wait time for a connection between the initiator and the target device, determines a race condition exists in the second expander, denies the connection between the initiator and the target device, directs the target device to wait for another connection, performs a discovery of the domain based on the discovery request from the first expander, and prevents a subsequent connection by the target device to the initiator after discovery completes.
    Type: Application
    Filed: August 8, 2013
    Publication date: February 5, 2015
    Applicant: LSI CORPORATION
    Inventors: Reid A. Kaufmann, Charles D. Henry, Jeffrey D. Weide
  • Patent number: 8949656
    Abstract: Determining port failover information is described. First information is determined by a first storage processor executing first code for performing port matching. The first information identifies a first set of port pairs. Each port pair includes a first port of the first or second storage processor and a second port of the first or second storage processor. Each port pair denotes the first port as protecting the second port. Upon failure or unavailability of the second port, the first port virtualizes the second port and requests directed to the second port are redirected to the first port. Similarly, second information is determined by the second storage processor executing second code for performing the port matching. Port failover processing is performed upon failure or unavailability of port(s) of the first storage processor and/or the second storage processor. Port failover processing uses the first information and/or the second information.
    Type: Grant
    Filed: June 29, 2012
    Date of Patent: February 3, 2015
    Assignee: EMC Corporation
    Inventors: Anoop George Ninan, Shuyu Lee, Matthew Long, Daniel B. Lewis, Dilesh Naik
  • Patent number: 8934311
    Abstract: A semiconductor device includes a first memory region including a plurality of memory cells; a test unit configured to test the first memory region, and detect a weak bit from among the plurality of memory cells; and a second memory region configured to store a weak bit address (WBA) of the first memory region, and data intended to be stored in the weak bit, wherein the first memory region and the second memory region include different types of memory cells.
    Type: Grant
    Filed: September 5, 2012
    Date of Patent: January 13, 2015
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Hak-soo Yu, Uk-song Kang, Chul-woo Park, Joo-sun Choi, Hong-Sun Hwang
  • Patent number: 8930780
    Abstract: The present invention is related to systems and methods for harmonizing testing and using a storage media. As an example, a data system is set forth that includes: a data decoder circuit, a data processing circuit, and a write circuit. The data decoder circuit is configured to decode a test data set to yield a result. The data processing circuit is configured to encode a user data set guided by the result to yield a codeword. The write circuit is configured to store an information set corresponding to the codeword to a storage medium.
    Type: Grant
    Filed: August 28, 2012
    Date of Patent: January 6, 2015
    Assignee: LSI Corporation
    Inventors: Shaohua Yang, Bruce A. Wilson
  • Patent number: 8924967
    Abstract: Embodiments maintain high availability of software application instances in a fault domain. Subordinate hosts are monitored by a master host. The subordinate hosts publish heartbeats via a network and datastores. Based at least in part on the published heartbeats, the master host determines the status of each subordinate host, distinguishing between subordinate hosts that are entirely inoperative and subordinate hosts that are operative but partitioned (e.g., unreachable via the network). The master host may restart software application instances, such as virtual machines, that are executed by inoperative subordinate hosts or that cease executing on partitioned subordinate hosts.
    Type: Grant
    Filed: April 28, 2011
    Date of Patent: December 30, 2014
    Assignee: VMware, Inc.
    Inventors: Michael Nelson, Keith Farkas, Elisha Ziskind, Sridhar Rajagopal, Guoqiang Shu, Ron Passerini, Joanne Ren
  • Publication number: 20140380088
    Abstract: An “erasure code” is an encoding of multiple different sets of data. Redundant copies of data are maintained in such erasure codes, thereby utilizing only a fraction of the storage capacity of unencoded copies. Erasure codes are efficiently generated, with a minimum of processing resources utilizing XOR functionality. Additionally, erasure codes are generated from local data, thereby avoiding the consumption of network resources. At least one unencoded copy of a set of data is maintained, while the remaining, redundant copies are encoded into erasure codes. Requests for data are provided from the unencoded copy. Should it fail, a new unencoded copy can be generated by another computing device having access to both an erasure code as well as unencoded copies of the other data that was also pressed into that erasure code. Multiple failures can be survived through recursive application of such a decoding of encoded data.
    Type: Application
    Filed: June 25, 2013
    Publication date: December 25, 2014
    Inventors: John G. Bennett, Bob Jenkins
  • Patent number: 8918674
    Abstract: A method begins by a processing module receiving a data storage request, wherein the data storage request includes data and a data identifier (ID). The method continues with the processing module dispersed storage error encoding the data to produce a set of encoded data slices and determining a data dispersed storage network (DSN) address. The method continues with the processing module sending the set of encoded data slices to a DSN memory for storage at the data DSN address and updating a directory file with path information corresponding to the data ID and the data DSN address to produce an updated directory file. The method continues with the processing module dispersed storage error encoding the updated directory file to produce a set of encoded updated directory slices and sending the set of encoded updated directory slices to the DSN memory for storage at a directory DSN address.
    Type: Grant
    Filed: November 9, 2010
    Date of Patent: December 23, 2014
    Assignee: Cleversafe, Inc.
    Inventors: Jason K. Resch, Andrew Baptist, Srinivas Palthepu, Greg Dhuse, Ilya Volvovski, Wesley Leggette, Manish Motwani
  • Patent number: 8914667
    Abstract: A method begins by a dispersed storage (DS) processing module identifying a set of collections of records corresponding to a data segment that is stored in a dispersed storage network (DSN) as a set of encoded data slices, wherein a collection of records includes an event record including information regarding an event, a first record including information regarding a dispersed storage (DS) processing module processing an event request to produce a plurality of sub-event requests, and a plurality of records including information regarding a set of DS units processing the plurality of sub-event requests. The method continues with the DS processing module determining whether an error exists for one of the set of encoded data slices based on at least some of the set of collections of records and when the error exists, flagging the one of the set of encoded data slices for potential rebuilding.
    Type: Grant
    Filed: July 12, 2012
    Date of Patent: December 16, 2014
    Assignee: Cleversafe, Inc.
    Inventors: Greg Dhuse, Yogesh Ramesh Vedpathak
  • Patent number: 8914670
    Abstract: A method includes, in a non-volatile memory that includes multiple memory blocks, defining a redundancy zone that includes at least an old parity block, a new parity block and multiple active blocks of which one block is defined as an open block. Data is stored in the redundancy zone and the stored data is protected, such that new input data is stored in the open block, redundancy information for the active blocks including the open block is stored in the new parity block, and the redundancy information for the active blocks excluding the open block is stored in the old parity block. Upon filling the open block and the new parity block, an alternative block is assigned to serve as the open block and the new parity block is assigned to serve as the old parity block.
    Type: Grant
    Filed: November 7, 2012
    Date of Patent: December 16, 2014
    Assignee: Apple Inc.
    Inventors: Etai Zaltsman, Julian Vlaiko, Ori Moshe Stern, Avraham Poza Meir
  • Patent number: 8914669
    Abstract: A method begins by a processing module identifying an encoded data slice to be rebuilt, selecting a decode threshold number of dispersed storage (DS) units of a storage set of DS units, generating a decode threshold number of key pairs, wherein a key pair of the decode threshold number of key pairs corresponds to a DS unit of the decode threshold number of DS units, and sending partial rebuilding requests to the decode threshold number of DS units, wherein a partial rebuilding request of the partial rebuilding requests includes the key pair. The method continues with the processing module receiving encrypted partial encoded data slices, wherein an encrypted partial encoded data slice received from the corresponding DS unit includes a multiple encryption, using the key pair, of a partial encoded data slice and decoding the encrypted partial encoded data slices to rebuild the encoded data slice.
    Type: Grant
    Filed: November 7, 2011
    Date of Patent: December 16, 2014
    Assignee: Cleversafe, Inc.
    Inventors: Greg Dhuse, Wesley Leggette, Andrew Baptist, Jason K. Resch
  • Patent number: 8909884
    Abstract: The invention relates to apparatus for managing data swap in a migration of virtual memory data of a virtual machine. In one embodiment, an apparatus comprises a receiving unit configured to receive a migration instruction and the second site information; a copying unit configured to copy memory data to a sub-logical unit in the first storage device; and a notifying unit configured to send a notification to instruct the second host to read the memory data from a mirror logical unit of a sub-logical unit in the second storage device. The apparatus modifies a mirror direction between the first and second storage devices and modifies a path table related to the first and second storage devices. Data of the virtual machine can be migrated and swapped in a metro mirror manner, thereby the virtual machine data can be migrated across sites without affecting system operation.
    Type: Grant
    Filed: April 26, 2012
    Date of Patent: December 9, 2014
    Assignee: International Business Machines Corporation
    Inventors: Mark S. Fleming, Jiang Peng, Zhang Xin, Rong Zhang
  • Patent number: 8909984
    Abstract: A storage management apparatus manages a plurality of storage apparatuses in a storage system that disperses and stores data that is made redundant so as to have a predetermined redundancy level. The storage management apparatus includes: a patrol process unit that performs, at a patrol speed, a patrol process of confirming that the plurality of storage apparatuses are being operated normally; a relocating process unit that performs, at a relocating process speed, a relocating process of moving the data between the plurality of storage apparatuses; a recovery process unit that performs, at a recovery process speed, a recovery process of recovering the redundancy level of the data when a fault occurs in the plurality of storage apparatuses; and a processing speed control unit that controls the recovery process speed or a sum of the patrol process speed and the relocating process speed to have a predetermined value.
    Type: Grant
    Filed: March 13, 2013
    Date of Patent: December 9, 2014
    Assignee: Fujitsu Limited
    Inventors: Tatsuo Kumano, Yasuo Noguchi, Munenori Maeda, Masahisa Tamura, Ken Iizawa, Toshihiro Ozawa, Jun Kato, Kazuichi Oe, Kazutaka Ogihara
  • Patent number: 8904229
    Abstract: A storage processor includes storage for redundantly storing a log file of a journaling file system on a separate logical device from a primary copy of the log file and further provides for recovery of the file system upon failure of both the primary storage and the redundant storage storing the log file of the journaling file system by storing dirtied metadata objects in the cache of the storage processor to a vault area and then applying the stored dirtied metadata objects against the underlying persistent storage.
    Type: Grant
    Filed: June 29, 2012
    Date of Patent: December 2, 2014
    Assignee: EMC Corporation
    Inventors: Sairam Veeraswamy, Rolland Santimano
  • Patent number: 8904139
    Abstract: In one embodiment, a method for managing data swapping in a migration of virtual memory data in a virtual machine, wherein the data swapping is from a first storage device at a first site to a second storage device at a second site, and the first and second storage devices have a metro mirror relationship includes sending a fail report in response to a failure to access the first storage device according to a path table, in response to the fail report, modifying a mirror direction between the first and second storage devices, sending a path modifying notification for modifying settings of a first path to the second storage device, and activating the path to the second storage device by modifying the path table according to the path modifying notification, so as to make the second storage device accessible.
    Type: Grant
    Filed: March 6, 2013
    Date of Patent: December 2, 2014
    Assignee: International Business Machines Corporation
    Inventors: Mark S. Fleming, Jiang Peng, Zhang Xin, Rong Zhang
  • Publication number: 20140351625
    Abstract: A method begins with a processing module of a computing device of a dispersed storage network (DSN) executing a rebuild function to produce a rebuilt encoded data slice for storage in a targeted storage unit of the DSN. When the targeted storage unit is currently unavailable, the method continues with the processing module storing the rebuilt encoded data slice in local memory of the computing device, recording storage of the rebuilt encoded data slice in the local memory, and recording that the targeted storage unit is currently unavailable. When the targeted storage unit is currently available, the method continues with the processing module sending the rebuilt encoded data slice to the targeted storage unit and recording storage of the rebuilt encoded data slice by the targeted storage unit.
    Type: Application
    Filed: August 6, 2014
    Publication date: November 27, 2014
    Applicant: CLEVERSAFE, INC.
    Inventor: Jason K. Resch
  • Publication number: 20140351624
    Abstract: A method for modifying data stored in a dispersed storage network (DSN). In various embodiments, a data object is received for storage in DSN memory. A dispersed storage processing unit determines a number of data segments for the data object and divides the data object into a plurality of data blocks. The data blocks are allocated to the data segments in a column-row orientation (for example, columns may be populated with successive data blocks of the data object). The data segments are encoded to produce a plurality of sets of encoded data slices. Additional data received for the data object is divided into additional data blocks that are allocated to data segments to create one or more new columns, which are encoded to produce a plurality of encoded data slice addendums. The encoded data slice addendums are then appended to existing encoded data slices corresponding to the data object.
    Type: Application
    Filed: August 6, 2014
    Publication date: November 27, 2014
    Applicant: CLEVERSAFE, INC.
    Inventor: Jason K. Resch
  • Patent number: 8898513
    Abstract: A method begins by a processing module identifying a plurality of dispersed storage networks (DSNs) for storing copies of dispersed storage encoded data based on global data retrieval accesses of the copies of the dispersed storage encoded data. The method continues with the processing module determining a set of error coding dispersal storage parameters for at least one of the plurality of DSNs based on local data retrieval accesses allocated to the at least one of the plurality of DSNs. The method continues with the processing module encoding data in accordance with the set of error coding dispersal storage parameters to produce a copy of the copies of the dispersed storage encoded data and outputting the copy of the copies of the dispersed storage encoded data to the at least one of the plurality of DSNs.
    Type: Grant
    Filed: May 11, 2011
    Date of Patent: November 25, 2014
    Assignee: Cleversafe, Inc.
    Inventors: Gary W. Grube, Timothy W. Markison
  • Patent number: 8898514
    Abstract: A SAS storage enclosure to provide storage drive information that includes an expander and a storage manager. The expander supports communication between initiators and associated zoned storage drives of the storage enclosure, and the storage drive information table is to store extended storage drive status information of storage drives of the storage enclosure. The storage manager is to store to the storage drive information table extended storage drive status information of storage drives of the storage enclosure in response to receipt from an initiator a SAS command to store the information, in the event that the storage manager receives from an initiator a command to exchange data with a zoned storage drive and then a storage drive failure occurs with the zoned storage drive. The storage manager sends to the initiator the information in response to receipt from an initiator a SAS command to retrieve the information.
    Type: Grant
    Filed: June 25, 2012
    Date of Patent: November 25, 2014
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Michael G Myrah, Balaji Natrajan, Brian M Spencer
  • Patent number: 8892964
    Abstract: A system and method for arbitrating exchange identifier assignments for I/O operations are disclosed. In an exemplary embodiment, the method comprises receiving, by a storage system, a data command from a host system. The data command is directed to a virtual device of the storage system, the virtual device comprising a plurality of physical devices of the storage system. A range of exchange identifier values are allocated to the data command. The range may include a predefined number of exchange identifiers, the predefined number determined prior to the receiving of the data command. A plurality of I/O operations corresponding to the data command are issued, where each of the plurality of I/O operations is directed to a physical device of the plurality of physical devices of the storage system. An exchange identifier within the range of exchange identifier values is associated with each of the plurality of I/O operations.
    Type: Grant
    Filed: June 28, 2013
    Date of Patent: November 18, 2014
    Assignee: NetApp, Inc.
    Inventors: Howard Young, Srinivasa Nagaraja Rao
  • Patent number: 8886910
    Abstract: The representation of storage devices on computers (e.g., as logical volumes) may be complicated by the pooling of multiple storage devices in order to apply redundancy plans such as mirroring and checksumming. Presented herein is a storage device driver configured to operate as a storage device interface generating representations of the storage regions of the storage devices; to claim those regions as a storage controller; and to expose pooled storage regions as logical disks. Additionally, the storage device driver may support the inclusion of storage devices in a cluster, comprising nodes that may be appointed as managers of the storage pool configuration; as managers of the storage devices; as owners having exclusive read/write access to the storage pool or cluster resources; and as cluster resource writers having exclusive write access to a cluster resource. The nodes of the cluster may interoperate to share the storage devices while avoiding write conflicts.
    Type: Grant
    Filed: September 12, 2011
    Date of Patent: November 11, 2014
    Assignee: Microsoft Corporation
    Inventors: Karan Mehra, Rajeev Nagar, Shiv Rajpal, Darren Moss, Andrea D'Amato, Alan Warwick, Vyacheslav Kuznetsov
  • Patent number: 8886990
    Abstract: A method for data storage includes storing data in a memory including multiple analog memory cells arranged in blocks. A first subset of the blocks is defined for storing first data with a first storage density, and a second subset of the blocks is defined for storing second data with a second storage density, larger than the first storage density. In each of the first and second subsets, one or more blocks are allocated to serve as spare blocks and blocks that become faulty are replaced with the spare blocks. Upon detecting that a number of the spare blocks in the second subset has decreased below a predefined threshold, the data is copied from at least one block in the second subset to the first subset, and the at least one block is added to the spare blocks of the second subset.
    Type: Grant
    Filed: January 22, 2012
    Date of Patent: November 11, 2014
    Assignee: Apple Inc.
    Inventors: Avraham Meir, Alexander Paley, Asif Sade
  • Patent number: 8886992
    Abstract: A method begins by a processing module determining that a data storage request is a cloud data storage request. The method continues with the processing module determining at least one of a cloud storage access reliability indication and a cloud storage data reliability indication for the data storage request. The method continues with the processing module sending the data storage request and the at least one of cloud storage access reliability indication and cloud storage data reliability indication to a cloud storage system.
    Type: Grant
    Filed: October 8, 2013
    Date of Patent: November 11, 2014
    Assignee: Cleversafe, Inc.
    Inventors: Wesley Leggette, Jason K. Resch
  • Patent number: 8880981
    Abstract: A data access request is received specifying a data block stored in a stripe of a parity group that includes a plurality of data storage devices to store data blocks and a parity storage device to store parity information for the data. The stripe includes a data block from each of the plurality of data storage devices and the stripe includes a parity block from the parity storage device. An error is detected in the data block specified by the data access request. The error is identified as a lost write error for the data block or a lost write error for the parity block. Identifying the error includes comparing a first storage device signature stored in a metadata field associated with the data block to a second storage device signature stored in a label block identifying a data storage device where the data block is stored.
    Type: Grant
    Filed: November 22, 2013
    Date of Patent: November 4, 2014
    Assignee: NetApp, Inc.
    Inventors: Tomislav Grcanac, Atul Goel, Jagadish Vasudeva, Gururaj Mj
  • Publication number: 20140325259
    Abstract: A method begins by a processing module obtaining common storage name information regarding data that is stored in storage units of a distributed storage network (DSN) as a set of data slices. Each data slice of the set of data slices has a unique storage name, where each of the unique storage names for the set of data slices has common naming information regarding the data. The method continues where the processing module interprets the common storage name information to determine whether a difference exists between the common naming information of a data slice of the set of data slices and the common naming information of other data slices of the set of data slices. When the difference exists, the method continues where the processing module indicates a potential storage error of the data slice and implements a storage error process regarding the potential storage error of the data slice.
    Type: Application
    Filed: June 30, 2014
    Publication date: October 30, 2014
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, John Quigley, Wesley Leggette, Andrew Baptist
  • Patent number: 8874494
    Abstract: An improved technique for replacing storage elements in a redundant group of storage elements of a storage array dynamically selects a storage element type from among multiple candidates based on which storage element type produces the greatest service level of the redundant group. The technique includes selecting one of multiple storage element types using a random selection process that can be biased to favor the selection of certain storage element types over others. A storage element of the selected type is added to the redundant group. The selected storage element type is then rewarded based on the service level that results from adding the storage element of the selected type. The selection process is repeated, and a newly selected storage element type is put into use. Operation tends to converge on an optimal storage element type that maximizes the service level of the redundant group.
    Type: Grant
    Filed: September 28, 2012
    Date of Patent: October 28, 2014
    Assignee: EMC Corporation
    Inventor: T. David Evans