News Column

Researchers Submit Patent Application, "Directory-Level Raid", for Approval

June 3, 2014



By a News Reporter-Staff News Editor at Information Technology Newsweekly -- From Washington, D.C., VerticalNews journalists report that a patent application by the inventors Kuang, Hairong (San Jose, CA); Wang, Welyan (Mountain View, CA); Gu, Dikang (Sunnyvale, CA), filed on November 12, 2012, was made available online on May 22, 2014.

No assignee for this patent application has been made.

News editors obtained the following quote from the background information supplied by the inventors: "The explosion of social networking has led to extensive sharing of information including items such as videos, photos, blogs, links, etc. In order to support the demand on information sharing and data storage, more and more physical storage devices are incorporated into the existing data storage systems. Data stored on each physical storage device may represent significant memories or assets for many users. However, physical storage devices may fail randomly or after a certain amount of usage. Data losses can be costly in terms of wasted time and loss of good will from users.

"One solution is to implement a Redundant Array of Independent Disks (RAID). In a RAID system, data is replicated into two or more copies across independent disks, collectively referred to as an array. A RAID controller adds parity data to the original data before storing it across the array. The parity data is used to recover the original data in the event of disk failures."

As a supplement to the background information on this patent application, VerticalNews correspondents also obtained the inventors' summary information for this patent application: "Embodiments of the present disclosure provide a variety of methods, systems and paradigms for reducing replication factor in a file system. For example, instead of performing file level RAID, the present teach provides for directory-level RAID. In some embodiments, two or more requested files may be grouped together under a leaf directory for RAID process. All data under the directory are grouped into one or more data stripes, each of which comprises a plurality of data blocks. One or more parity data blocks may be generated for each data stripe according to a computing algorithm, such as an exclusive OR (XOR) code or a Reed-Solomon (RS) code. All parity blocks corresponding to the two or more requested files are concatenated into one parity file. Data blocks of files in the directory and corresponding parity blocks may be written to separate partitions and/or separate storage drives of the file system.

"When a specific parity block or a specific data block of a data strip in the leaf directory is missing or corrupted, the parity block or the specific data block can be reconstructed from the remaining parity block(s) and data blocks stored in the file system. If a specific data block of a data stripe is missing, the specific data block can be reconstructed from the remaining data blocks in the specific data stripe and parity blocks corresponding to the specific data stripe. If a specific parity block is missing, the specific parity block can be reconstructed from the specific data stripe corresponding to the specific parity block and remaining parity block(s) corresponding to the specific data stripe.

"In some embodiments, an original checksum may be computed when parity blocks are generated for files under a leaf directory. A second checksum is computed when a specific data block or a specific parity block is reconstructed based on the remaining data blocks in the data stripe and remaining parity blocks corresponding to the data stripe. The reconstructed data block or the reconstructed parity block may be rewritten to the file system only if the value of the second checksum matches the value of the original checksum.

"In some embodiments, the number of data blocks in each data stripe may be predetermined or defined by RAID algorithms. Data blocks of a specific data stripe may have the same or different sizes of data. In some embodiments, the size of parity blocks corresponding to the specific data stripe may be predetermined or set to the maximum size of data blocks in the specific data stripe.

"While multiple embodiments are disclosed, still other embodiments of the present disclosure will become apparent to those skilled in the art from the following detailed description, which shows and describes illustrative embodiments of the invention. As will be realized, the invention is capable of modifications in various aspects, all without departing from the scope of the present disclosure. Accordingly, the drawings and detailed description are to be regarded as illustrative in nature and not restrictive.

BRIEF DESCRIPTION OF THE DRAWINGS

"Embodiments of the present disclosure will be described and explained through the use of the accompanying drawings in which:

"FIG. 1 illustrates an example of a system environment 100 for a social networking system 101 in which some embodiments of the present disclosure may be utilized;

"FIG. 2 is a block diagram of a system architecture of the social networking system 101 in accordance with one or more embodiments of the present disclosure;

"FIGS. 3A-3C illustrate data storage examples of providing redundant information associated with each data block to improve fault tolerance;

"FIGS. 4A-4C illustrate data storage examples when the number of data blocks in each data stripe, as illustrated in FIGS. 3A-3C, decreases from 10 to 2;

"FIGS. 5A and 5B show examples of RAID with a file-level XOR and a directory-level XOR, respectively, in accordance with various embodiments of the present disclosure;

"FIG. 6 illustrates a flow chart showing a set of operations 600 that may be used for directory-level RAID in a social networking system with which some embodiments of the present disclosure may be utilized; and

"FIG. 7 illustrates an example of a computer system with which some embodiments of the present disclosure may be utilized.

"The drawings have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be expanded or reduced to help improve the understanding of the embodiments of the present disclosure. Similarly, some components and/or operations may be separated into different blocks or combined into a single block for the purposes of discussion of some of the embodiments of the present disclosure. Moreover, while the invention is amenable to various modifications and alternative forms, specific embodiments have been shown by way of example in the drawings and are described in detail below. The intention, however, is not to limit the invention to the particular embodiments described. On the contrary, the invention is intended to cover all modifications, equivalents, and alternatives falling within the scope of the invention as defined by the appended claims."

For additional information on this patent application, see: Kuang, Hairong; Wang, Welyan; Gu, Dikang. Directory-Level Raid. Filed November 12, 2012 and posted May 22, 2014. Patent URL: http://appft.uspto.gov/netacgi/nph-Parser?Sect1=PTO2&Sect2=HITOFF&u=%2Fnetahtml%2FPTO%2Fsearch-adv.html&r=415&p=9&f=G&l=50&d=PG01&S1=20140515.PD.&OS=PD/20140515&RS=PD/20140515

Keywords for this news article include: Patents, Information Technology, Information and Data Storage.

Our reports deliver fact-based news of research and discoveries from around the world. Copyright 2014, NewsRx LLC


For more stories covering the world of technology, please see HispanicBusiness' Tech Channel



Source: Information Technology Newsweekly


Story Tools






HispanicBusiness.com Facebook Linkedin Twitter RSS Feed Email Alerts & Newsletters