EAB, the full name is EmbeddedArrayBlock, that is, embedded array block. RAID can be divided into level 0 to level 6, usually called: RAID0, RAID1, RAID2, RAID3, raid4, RAID5, RAID6.
Embedded system, linux, storage.
1 pair of high-speed disk access (speed-up): RAID combines ordinary hard disks into a disk array, writes data to the host, the RAID controller decomposes the data to be written by the host into multiple data blocks, and then writes to the disk array in parallel; When reading data, the RAID controller reads the data scattered on each hard disk in the disk array in parallel, recombines them and provides them to the host. Because of the parallel read and write operations, the access speed of the storage system's access system is increased.
3 data redundancy
RAID can be divided into level 0 to level 6, usually called: RAID0, RAID1, RAID2, RAID3, raid4, RAID5, RAID6.
RAID0: RAID0 is not a true RAID structure, there is no data redundancy, RAID0 continuously divides data and reads/writes on multiple disks in parallel. Therefore, it has a very high data transfer rate, but RAID0 does not provide data reliability while improving performance. If one disk fails, it will affect the entire data. Therefore, RAID0 cannot be used in critical applications that require high data availability.
RAID1: RAID1 implements data redundancy through data mirroring, generating mutually backup data on two separate pairs of disks. RAID1 can improve the performance of reading. When the original data is busy, the data can be read directly from the mirror. RAID1 is the most expensive in the disk array, but provides the highest data availability. When a disk fails, the system can automatically switch to the mirrored disk without reorganizing the failed data.
RAID2: Conceptually, RAID2 is similar to RAID3, both of which distribute data into different hard disks in blocks, and the unit of the blocks is bits or bytes. However, RAID2 uses an encoding technique called "emphasized average error correction code" to provide error checking and recovery. This encoding technology requires multiple disks to store inspection and recovery information, making RAID 2 technology more complicated to implement. Therefore, it is rarely used in commercial environments.
RAID3: Unlike RAID2, RAID3 uses a single disk to store parity information. If a disk fails, the parity disk and other data disks can regenerate data. If the parity disk fails, it does not affect data usage. RAID3 can provide a good transfer rate for a large amount of continuous data, but for random data, the parity disk will become the bottleneck of the write operation.
RAID4: Same as RAID2 and RAID3, RAID4 and RAID5 also stripe and distribute data on different disks, but the unit of the stripe is block or record. RAID4 uses a disk as a parity disk. Each write operation requires access to the parity disk, which becomes the bottleneck of the write operation. It is rarely used in commercial applications.
RAID5: RAID5 does not have individually specified parity disks, but cross-access data and parity information on all disks. On RAID5, the read/write pointer can operate on the array device at the same time, providing higher data traffic. RAID5 is more suitable for small data blocks, random read and write data. Compared with RAID5, the important difference between RAID3 and RAID5 is that each data transfer of RAID3 needs to involve all the array disks. For RAID5, most data transfers only operate on one disk and can be operated in parallel. There is a "write loss" in RAID5, that is, each write operation will generate four actual read/write operations, in which the old data and parity information are read twice and the new data and parity information are written twice.
RAID6: Compared with RAID5, RAID6 adds a second independent parity information block. Two independent parity systems use different algorithms, and the reliability of the data is very high. Even if two disks fail at the same time, it will not affect the use of data. But more disk space needs to be allocated for parity information, and there is a greater "write loss" compared to RAID5. RAID6 has very poor write performance. Poor performance and complex implementation make RAID6 rarely used.
RAID0 has the purpose of speeding up and capacity expansion
In RAID0 mode, the data is divided into a certain number of data blocks (Chunk) and written across multiple hard drives. Generally speaking, the number of data divided in the RAID0 system is related to the number of hard drives used in the RAID array. For example, if three hard disks are used in RAID0, the data will be divided into three and written to three hard disks in turn. In layman's terms, this model actually uses RAID technology to make the system think that three hard disks form a larger capacity Hard disk, because there is no data verification in this process, this RAID mode is the fastest one to read and write.
RAID0 is not considered from a security perspective. In fact, if a hard disk in RAID0 is broken, all data will be damaged and there is no way to recover it. This makes the security performance of RAID0 very poor, so many users do not use RAID0 mode for security reasons. Nonetheless, RAID0 is the fastest mode among all RAID methods after all. If there are two hard drives in RAID0 mode, the speed of storing and reading data in RAID0 will be double that of a single hard drive. If 6 hard drives are used, the theoretical rate is 6 times that of a single hard drive. If you use different hard drives in RAID0 mode, it will cause two problems. First, the effective hard drive capacity of RAID0 will be the capacity of the smallest hard drive times the number of hard drives. This is because if the smallest hard drive is full , RAID0 will still distribute the files evenly among the hard disks, and the storage task cannot be completed at this time; secondly, if the hard disk speeds in RAID0 are different, then the overall speed will be the speed of the slowest hard disk times the number of hard disks This is because the RAID0 mode requires the completion of the previous storage task before proceeding to the next process. In this way, other fast hard disks will stop and wait for the slower hard disk to complete the storage or read task, making the overall Performance has declined. Therefore, it is recommended that users who use RAID0 mode choose the hard disk with the same capacity and speed, preferably the same product of the same brand.
Therefore, RAID0 is not "redundant independent disk array" in the strict sense. The RAID0 mode is generally used when data needs to be processed quickly, but the data security requirements are not high. The characteristics of this RAID mode is simple, and does not require complex and expensive controllers. Using RAID0 mode requires at least 2 hard drives, and the resulting storage capacity is also the sum of these two hard drives.
Random read performance of RAID0: very good
Random write performance of RAID0: very good
RAID0 continuous read performance: very good
RAID0 continuous write performance: very good
The advantages of RAID0: the fastest read and write performance, if each hard disk has an independent controller performance will be better.
Disadvantages of RAID0: all data will be lost if any one hard drive fails. Most controllers are implemented through software, so the performance is not good.
RAID1 mode is to make the hard drives that form RAID1 mode mirror each other. When you write data to the hard drives, the two hard drives store the same data at the same time, so that even if one of the hard drives fails, the system can work normally with the other hard drive. run. Compared with a single hard disk, RAID1 has better data reading performance, because when one hard disk is busy, the RAID controller can read the same data in another hard disk, but the performance of writing data is not only There is no growth and there may be a slight decline. When one of the hard drives fails, new data can be written to the hard drive that is still working. When the original hard drive is replaced with a new hard drive, the RAID controller automatically copies the data to the new hard drive. The biggest feature of RAID1 mode is its high redundancy, but since most functions are implemented using software, it will increase the burden on the processor. This RAID mode is very suitable for people who have extremely high requirements for data security.
In RAID1 mode, the hard drives used are preferably the same, otherwise there will be a waste of hard drive space. Since RAID1 mode writes the same information to different hard disks, the effective hard disk capacity of RAID1 mode is the capacity of the hard disk with the smallest capacity in the array. For example, if there is a hard disk with a capacity of 20GB and a hard disk with a capacity of 30GB in RAID1 mode, then the overall effective capacity of RAID1 is 20GB, and the remaining 10GB capacity on that 30GB hard disk will be wasted. At the same time, if the speeds of the two hard drives are different, the faster hard drive will still stop and wait for the slower hard drive to complete the task before taking the next step.
Random read performance of RAID1: good
Random write performance of RAID1: good
RAID1 continuous read performance: general
RAID1 continuous write performance: good
The advantages of RAID1: high data reliability, easy implementation, and simple design.
Disadvantages of RAID1: Compared with RAID0, the speed is slower, especially the writing speed, and the other is that we can only use half of the hard disk capacity.
This RAID mode is actually a combination of RAID0 and RAID1 modes, requiring at least 4 hard drives. Any two of them form a RAID0 disk array, and then the two RAID0 disk arrays can be regarded as two hard drives with larger capacity and faster speed, and they form a RAID1 disk array. Such a system guarantees higher disk performance and higher data security. Of course, the shortcomings are also obvious that the cost is higher and the structure is more complicated. RAID0+1 is second only to RAID5 in terms of fault tolerance, and is generally used in file servers.
Random read performance of RAID0+1: very good
Random write performance of RAID0+1: good
RAID0+1 continuous read performance: very good
RAID0+1 continuous write performance: good
The advantages of RAID0+1: Compared with a single hard disk, it has higher read and write performance, and greatly improves the security of data.
Disadvantages of RAID0+1: the cost is higher, at least 4 hard drives are required.
The RAID2 mode is also quite complicated. The hard drives used to store data are combined in RAID0 mode, plus the hard drives that specifically store Hamming ECC check codes. Of course, in order to improve the security of check code data, the check code hard drives are at least two A RAID1 mode. In this way, even if one of the hard disks storing data is damaged, the RAID controller can restore the data to the new hard disk through Hamming code. RAID2 is generally aimed at large data operations and supercomputer applications, but it is not suitable for ordinary users. Because the check code is generated during data storage, the performance of this disk array is not high. For various reasons, this disk array model has not been put into actual commercial applications. Because of the high price, of course, it will not be accepted by ordinary users.
Random read performance of RAID2: General
Random write performance of RAID2: poor, mainly because all operations have to go through ECC operations
RAID2 continuous read performance: very good
RAID2 continuous write performance: general
The advantages of RAID2: high data security, as long as the hard disk storing the verification code is not faulty, data can be recovered.
Disadvantages of RAID2: expensive, need special hard disk to store check code, inefficient, and not supported by commercial applications.
Like RAID2 mode, RAID3 data is also divided into data blocks and stored on multiple hard drives in sequence. Only RAID3 divides the data into units of bits and stores it on each hard disk. Its advantage is that it has high-speed read and write capabilities. Of course, the write performance needs to be generated during the writing process, so the speed will be affected to a certain extent-it also requires a dedicated hard disk to store the parity code. After one of the hard disks storing data fails, the system can still operate normally, but performance will be affected. If another hard disk fails before replacing the damaged hard disk, the data in this disk array will be lost and cannot be recovered. In this disk array mode, it is required that the speeds of all hard disks are synchronized. This requirement is not difficult in practical applications. RAID3 requires at least 3 hard disks, one of which is used to store parity code-the parity code is obtained by XOR operation.
If this RAID mode is implemented using a software controller, it will obviously affect the performance, because this combination is more complicated, but compared with the RAID0+1 mode, it can be realized by at least 3 hard drives-so the cost has been reduced, In general, this kind of disk array is more suitable for applications such as video processing and editing.
Random read performance of RAID3: good
RAID3 random write performance: very poor
RAID3 continuous read performance: very good
RAID3 continuous write performance: general
The advantages of RAID3: it is more suitable for video editing and other occasions that require large amounts of data.
Disadvantages of RAID3: It is very difficult to synchronize the speed of each drive (most of the current hard drives do not support this function), and require a complex controller.
The RAID4 mode is almost the same as RAID3. The data is divided into small data blocks and stored on multiple hard drives in sequence, and the parity code is stored on an independent parity disk. The only difference is that in data partitioning, RAID3 is based on bits and RAID4 is based on bytes. This can make RAID4 and RAID3 have the same reading speed, of course, the write performance is affected because the verification code needs to be generated during the writing process and stored on the verification disk.
The biggest advantage of this mode is that there is no need to keep the speed of each hard disk synchronized, which makes the controller less complicated. Its write performance is the worst among all RAID modes. As in RAID3 mode, when one of the hard drives is damaged, data will not be lost. If the second hard drive fails before the failed drive is replaced, all data will be lost. Compared with other RAID modes, the efficiency of recovering data from a failed hard drive is quite low.
This disk array mode also requires at least 3 hard drives to build. The parity code is obtained by XOR operation. It is suitable for general applications, including applications such as video processing. Its cost is not too high, because only one hard disk can be used as a check code disk.
Random read performance of RAID4: very good
Random write performance of RAID4: Generally, mainly because the parity code is written to the parity disk
RAID4 continuous read performance: good
RAID4 continuous write performance: general
The advantages of RAID4: In addition to the advantages of RAID3, it does not need to synchronize the drive speed.
Disadvantages of RAID4: write performance is very poor, the requirements of the controller are higher.
RAID5 uses at least three hard drives to implement the array. It can implement both RAID0 acceleration and RAID1 backup data functions. When there are three hard drives in the array, it will store the required data according to user-defined The split size is divided into file fragments and stored in two hard disks. At this time, the third hard disk in the array does not receive file fragments. It receives part of the data used to verify the data stored in the other two hard disks. Part of the verification data is generated by a certain algorithm, you can use this part of the data to restore the data stored on the other two hard drives. In addition, the tasks of these three hard disks are not static, that is to say, in this storage, it may be hard disk No. 1 and No. 2 used to store the fragmented files, then the next storage may be hard disk No. 2. And No. 3 hard drive to complete this task. It can be said that in each storage operation, the task of each hard disk is randomly assigned, but it must be that two hard disks are used to store the divided file fragments and the other hard disk is used to store the verification information.
This verification information is generally calculated by the RAID controller. Generally, this information requires a separate chip on the RAID controller to calculate and determine which hard disk to send this information to. RAID5 will also realize the high-speed storage reading of RAID0 and the data recovery function of RAID1, that is to say, in the above-mentioned situation, RAID5 can use three hard drives to achieve the speed of RAID0 double the function at the same time will also achieve RAID1 data Backup function, and when a hard disk in RAID5 is damaged, adding a new hard disk can also restore data.
RAID5 is the most complicated controller design among the several RAID modes we have introduced so far. RAID5 can be applied in most fields, such as multi-user and multi-task environments. Many current Web servers and other Internet servers use this form of disk array. For example, the recently introduced QuantumSnap server uses an external RAID5 disk array design. Parity generally occupies about 33% of the disk space capacity, so for a RAID5 disk array with a total capacity of 120GB, the available space will be around 80GB. However, this disk array mode does not provide support for RAID controllers in general motherboard processes. For example, the AbitKR7A-RAID motherboard only supports RAID0, RAID1, and RAID0+1. Of course, as long as the check code is used, it will affect the write performance to a certain extent. Therefore, many disk array manufacturers have added write cache to the disk array to improve the write performance.
RAID5 mode is not everything is good, if the information on a certain hard disk in the array has changed, then you need to recalculate the file fragmentation, and the verification information also needs to be recalculated. At this time, all three hard disks need to be recalculated. transfer. Similarly, if you want to make a RAID5 array, it is best to use hard disks with the same capacity and the same speed. The effective capacity of RAID5 mode is the capacity of the smallest hard disk in the array multiplied by the number of hard disks in the array minus one. The minus one is because there is a hard disk in it to store the verification information.
RAID5 random read performance: very good (when using large data blocks)
Random write performance of RAID5: Fair, but better than RAID3 or all RAID4
RAID5 continuous read performance: good (when using small data blocks)
RAID5 continuous write performance: general
The advantages of RAID5: no special check code disk is required, the reading speed is fast, and the problem of relatively slow writing speed is solved.
Disadvantages of RAID5: write performance is still not satisfactory.
RAID6 is a new technology in the RAID family, which is expanded on the basis of RAID5. So like RAID5, the data and checksum are divided into data blocks and then stored on each hard disk of the disk array. RAID6 adds an independent parity disk, which backs up the parity codes distributed on each disk, so that the RAID6 disk array allows multiple disks to fail at the same time. This is an application that requires high data security. very necessary. In this way, a RAID6 disk array requires at least 4 hard drives. However, RAID6 does not improve the poor write performance of RAID5. The application of write cache can only make up for this shortcoming to a certain extent, but it cannot fundamentally solve the problem. Because RAID5 and RAID6 can change the size of the data block according to the application, its actual performance will also be affected by this factor.
In practical applications, the application range of RAID6 is not as wide as other RAID modes. If this function is generally implemented, a more complicated and more expensive RAID controller needs to be designed, so it is generally not integrated on the motherboard.
Random read performance of RAID6: very good (when using large data blocks)
Random write performance of RAID6: Poor, because not only must write verification data on each hard disk but also write data on a dedicated verification hard disk
Continuous read performance of RAID6: good (when using small data blocks)
RAID6 continuous write performance: general
The advantages of RAID6: fast read performance, higher fault tolerance.
Disadvantages of RAID6: very slow write speeds, RAID controllers are more complex in design and cost more.
RAID systems generally have hot swap and hot redundancy capabilities. Hot swap allows the replacement of a failed hard drive without shutting down the system or power supply. Of course, the new hard drive can also be dynamically recognized by the system and correctly configured and added, all without restarting the computer. The benefits of this are undoubtedly very simple for maintenance personnel, and for many applications, such as Web servers, users do not want the server to stop, so the loss caused will be immeasurable. Many HP/DELL server products and RAID disk arrays have hot swap capabilities.
Thermal redundancy is generally used in applications that are not suitable for hot exchange. This design generally configures an additional hard disk in the computer before the failure occurs. When a hard disk fails, this redundant one can automatically replace the position of the failed hard disk. For such a system, before the system is shut down It is impossible to unplug the damaged hard disk. Although hot redundancy is not as convenient as hot swap, it is worse than nothing.
In fact, there are many types of disk arrays. We introduce some basic application modes today. In order to achieve sufficient performance and stability in practical applications, various RAID modes can be used together. Of course, the requirements for RAID controllers will be higher. The cost of the disk array system is higher.
The RAID used by the server is generally based on SCSI, so the cost of the RAID system will be even higher. In fact, this function has a certain distance for our personal applications. Even if you have a motherboard with an integrated RAID controller, you need at least 2 hard drives (generally, these two hard drives are required in terms of capacity, brand, and speed. It’s the same), it’s not a small expense for individual users. Of course, if you have special needs, such as the need to assume a workstation or Web server, but do not want to spend too much money, then IDERAID is still a good choice. What needs to be reminded here is that the general onboard IDERAID has a high processor occupancy rate, and IDERAID is not as good as a SCSI hard disk in some applications.
This lends power savings to High-end Communication equipment and speed to battery operated devices.
FPGA Virtex-II Family 1.5M Gates 17280 Cells 650MHz 0.15um Technology 1.5V 575-Pin BGA
FPGA Virtex-II Family 1.5M Gates 17280 Cells 650MHz 0.15um Technology 1.5V 896-Pin FCBGA
CPLD CoolRunner -II Family 1.5K Gates 64 Macro Cells 263MHz 0.18um Technology 1.8V 100-Pin VTQFP
CPLD CoolRunner -II Family 1.5K Gates 64 Macro Cells 159MHz 0.18um Technology 1.8V 56-Pin CSBGA