Shim, SangyupWang, YueweiHsieh, JenweiChang, TaishengDu, David H.C.2020-09-022020-09-021997https://hdl.handle.net/11299/215337Redundant Array of Inexpensive Disks (RAID) is often used to provide a fault tolerance capability for disk failures in database systems. An efficient implementation of small writes is the most important issue to achieve high throughput because most of writes in databases are small. The tradittional RAID implementation requires a RAID controller to construct parity blocks for writes (host based writes). An RAID implementation based on an exclusive-or (xor) engine in each disk may minimize link traffic and improve the response times for small writes. This is called disk based writes. However, many implementation issues have to resolved before the higher performance can be realized. We have observed that a straightforward implementation of disk based writes achieves only half of the potential throughput because of the interactions among commands. One of the implementation issues is to prevent a state of deadlock. A state of deadlock may occur when multiple disk based writes are executed simultaneously. The implementation issues addressed in this paper include how to prevent a state of deadlock, how to enhance cache replacement policy in disks, how to increase concurrency among disk basedd writes, and how to minimize the interactions of many commands. This paper investigates the effectiveness of disk based writes, and shows the performance comparison between a disk based write and a host based write in RAIDs. In a stress test, the aggregate throughput was increased, and the average command latency was reduced.en-USEfficient Implementation of RAID-5 Using Disk Based Read Modify WritesReport