Tuning Disk Architectures for Databases
by Michael R. Ault
Introduction
When I began work in the computer industry, RAID (Redundant Array of Inexpensive Disks) technology was still in its infancy and Winchester hard drive technology wasn’t available except in huge frame mounted drives of around 90 megabytes in size that weighed in at a svelte 200 to 300 pounds. Disk technology has progressed far in terms of capacity since those days, and the many controllers and optimizers bobble the imagination. Gone are the days when tuning a disk meant a simple defragmentation and placing frequently accessed files near the outer rim of the disk.
Disk Capacity
While disk volume capacity has been growing logarithmically, disk I/O capacity has been growing as a direct factor with disk rotational speed. So while volume capacity has jumped from 100 megabytes or less and 3600 rpm to 200 gigabytes at 10k or 15K rpm, the corresponding I/O rates have only increased from 30 IOPS to a around 150 IOPS (for sequential I/O only). This indicates that capacity has increased over two million times, while I/O rates increased by only a factor of five. What this means to you as a system tuner is that unless you build out (increase the number of drives) beyond what is needed strictly for volume of data, your ability to service I/O requests will actually decrease. This need to increase I/O rate to attempt to keep up with the ever increasing capacity numbers is what drove the move to RAID technologies.
Disk Types
Adding to the confusion over disk tuning is the many disk types that are available: ATA, SCSI, USB, IEE1394 (FireWire) — all of these are examples of disk technologies in use today. Each of the disk technologies has different tuning requirements, and when you add RAID to the mix, it further muddies the tuning waters. RAID can be based in software, hardware, or a mix of both. The highest performance is usually derived from hardware-based RAID solutions.
Each of the disk types is characterized by its interface type. The interface types each have their own maximum bandwidth capacities and you must take these into account when specifying your disk requirements. The following table shows an example comparison for these interfaces. Note that there are also limits on the number of devices that can be attached to each type of interface ranging, for example, from two on most ATA buses to 256 on IEEE.1394.
Each of these, as indicated, may have multiple implementations with new and improved features. Here is a a speed comparison of the various types of disk interface.
Interface
Speed
Serial
115 kb/s
Parallel(standard)
115 kb/s
Parallel(ECP/EPP)
3.0 Mb/s
SCSI
5-320 Mb/sec
ATA
3.3 - 133Mb/sec
USB1.1
1.5 Mb/s
USB2.x
60 Mb/s
IEEE1394(b)
50-400 Mb/s
Original IDE
3.3-33 Mb/sec
SATA
150 Mb/s
Fibre Channel
2 Gb/sec
Memory Caches
In an effort to improve the I/O characteristics of their disks, manufacturers added memory caches to allow read and write caching. Unfortunately, these caches are usually too small to be of much help with database-level performance as they are usually a very small fraction of a percent of the total disk capacity. Of what real use is a disk cache of a couple of megabytes on a 200 gigabyte disk holding a database table that is 60 gigabytes in size?
The cache soon becomes saturated, and any I/O benefit is eliminated. Disk array manufacturers such as EMC and Hitachi have also provided larger amounts of cache, in the tens of gigabyte range, which in some situations does help improve I/O rates, depending on how efficiently the application uses the data stored in the database.
For example, if the application is poorly written and does multiple full scans of multi-gigabyte tables, then again the cache becomes saturated, and you fall back to disk I/O speeds. For that matter, in some environments such as data warehouses and decision support systems, the scanning of large tables, sometimes hundreds of gigabytes in size, is commonplace. This can quickly tax even the largest cache systems.
I/O Profiles
All of this points to the fact that to get the maximum performance from your disk system, you must understand the I/O characteristics (the profile) of your database system, be it Oracle, SQL Server, Informix, UDB, or MySQL. You must tune your disk architecture to support the expected I/O profile and you must tune the database system to take advantage of the disk architecture. For example, an Oracle database has different I/O characteristics depending on whether it is reading or writing data and what type of read or write it is doing. Other databases have fixed read/write sizes.
You must determine the I/O profile for your database and then use the I/O profile of the database to determine the maximum and minimum I/O size. The I/O profile will tell you what percentage of I/O is large I/O and what percentage is small I/O. It will also give you the expected I/O rate in I/O per second.
Once you have the I/O per second, you can determine the I/O capacity (number of drives) needed to support your database.
The first rule of tuning your disk system is:
"Size first for I/O capacity, then for volume."
Some back-of-the-envelope calculations for the number of spindles needed to support I/O rate (IOR) are:
RAID10 with active read/write to all mirrors:
MAX(CEILING(IOR/(NSIOR*M),M),2*M)
Where:
IOR is expected maximum I/O rate in I/O per second
NSIOR is the average non-sequential I/O rate of the disks in I/O per second (range of 90 — 100 for RAID10)
M is the number of mirrors - (The maximum of the I/O rate divided by the average non-sequential I/O rate per disk times the number of mirrors to the nearest power of M or 2*M)
RAID5 assuming one parity disk:
MAX((IOR/CNSIOR)+1,3)
Where:
IOR is expected maximum I/O rate in I/O per second
CNSIOR is the corrected average non-sequential I/O rate of the disks in I/O per second (range of 60 — 90 for RAID5) (The maximum of the I/O rate divided by the average non-sequential I/O rate per disk corrected for RAID5 penalties plus one disk for the parity disk)
The correction for the non-sequential I/O rate for RAID is due to the up to 400 percent penalty on writes (writes take four times longer than reads on the same drive). In some cases on RAID5, I have seen this go as high as 6400 percent (writes take 64 times as long as reads for the same file) when combined with other problems such as fragmentation.
A case in point: Early RAID architectures utilized the “stripe shallow and wide” mind set in which files were broken into small pieces and spread over a large number of disks. For example, stripe unites per disk of as small as 8K were common. Many systems read in I/O sizes of 64K or larger. This means that to satisfy a single I/O request, eight disks of the RAID set were required.
If there were fewer than eight disks in the set, disks would have to undergo two or more I/Os to satisfy the request. This sounds fine if you are talking about a single user wanting to read a large file from a large group of disks very quickly; however, what happens when you have 10, or 100, or 1000 concurrent users all wanting to do the same thing?
Tune for Concurrency
This problem with concurrent access and RAID arrays is one of the most prevailing in the industry. The ubiquitous I/O wait is usually the predominant wait event in any database system simply due to the fact that I/O to memory is in the nanosecond range, while I/O to disk is in the millisecond range. When you add in blocked access due to multi-disk I/O requests, you get a snowball effect that can cripple your I/O subsystem.
Array manufacturers have begun to recognize this concurrent access problem and have increased the base stripe unit per disk to 64K, matching the I/O unit for many systems. Of course now systems such as Sun and Windows utilize maximum I/O sizes of one megabyte or larger, so again the array manufacturers are playing catch up to the server manufacturers.
So what is our second rule for tuning disks? Based on the previous information, the rule is:
"Always ensure that the primary I/O size for your database system is matched to the I/O size of the disk array system."
Of course the inverse also holds true:
"Always match the stripe unit per disk to the expected majority I/O request from your (database) application."
In the 1990s, Paul Chen of the University Of California at Berkeley computer center published a series of papers on tuning disk array stripe units size based on expected concurrency. In these papers, Mr. Chen and his associates determined that the I/O speed (as measured by average seek time) and I/O rate (as measured in megabytes per second) for a disk determined the stripe size for performance in an array even when the number of concurrent accesses is not known. There were three formulae derived from these papers:
For non-RAID5 arrays when concurrency is known:
SU = (S*APT*DTR*(CON-1)*1.024)+.5K
Where:
SU — Striping unit per disk
S — Concurrency slope coefficient (~.25)
APT — Average positioning time (milliseconds)
DTR — Data transfer rate (Megabyte/sec)
CON — number of concurrent users.
1.024 = 1s/1000ms*1024K/1M (conversion factors for units)
So for a drive that has an average seek time of 5.6 ms and a transfer rate of 20 megabytes/second, the calculated stripe unit for a 20 concurrent user base would be:
(.25*5.6*20*(19)*1.024)+.5 = 545K (or ~512K)
For a system for which you didn’t know the concurrency, the calculation becomes:
SU =(2/3*APT*DTR)
So for the same drive:
2/3*5.6*20*1.024 = 76.46K so rounding up ~128K or rounding down 64K
And from Chen’s final paper, a formula for RAID5 arrays is:
0.5*5.6*20*1.024 = 57.34 (rounding up 64K)
The values for average access time and transfer rate used in these examples is actually fairly low when compared to more advanced drives, so the stripe sizes shown previously are probably low by at least a factor of two or more. Th
สถาปัตยกรรมดิสก์ปรับสำหรับฐานข้อมูลโดยไมเคิลอาร์เอิร์ทบทนำเมื่อผมเริ่มทำงานในอุตสาหกรรมคอมพิวเตอร์, RAID (Redundant Array ของของราคาถูกดิสก์) เทคโนโลยีที่ยังคงอยู่ในวัยทารกและเทคโนโลยีไดรฟ์วินเชสเตอร์ยากที่ไม่สามารถใช้ได้ยกเว้นในกรอบขนาดใหญ่ติดตั้งไดรฟ์ของ ประมาณ 90 เมกะไบต์ในขนาดที่ชั่งน้ำหนักในที่ svelte 200-300 pounds เทคโนโลยีดิสก์มีความก้าวหน้าให้ห่างไกลในแง่ของความจุตั้งแต่วันเหล่านั้นและควบคุมจำนวนมากและเพิ่มประสิทธิภาพ bobble จินตนาการ ไปเป็นวันที่เมื่อปรับดิสก์หมายถึงการจัดระเบียบที่เรียบง่ายและวางไฟล์การเข้าถึงบ่อยใกล้ขอบด้านนอกของดิสก์. ความจุดิสก์ในขณะที่กำลังการผลิตดิสก์ไดรฟ์ได้รับการเติบโตลอการิทึมดิสก์ I / O ความสามารถได้รับการเติบโตเป็นปัจจัยโดยตรงกับดิสก์ ความเร็วในการหมุน ดังนั้นในขณะที่กำลังการผลิตได้ปริมาณเพิ่มขึ้นจาก 100 เมกะไบต์หรือน้อยกว่า 3600 รอบต่อนาทีและ 200 กิกะไบต์ที่ 10k หรือ 15K รอบต่อนาทีที่สอดคล้อง I / O ราคาได้เพิ่มขึ้นจาก 30 IOPS ไปประมาณ 150 IOPS (ลำดับสำหรับ I / O เท่านั้น) นี้แสดงให้เห็นว่ากำลังการผลิตได้เพิ่มขึ้นกว่าสองล้านครั้งในขณะที่ I / O อัตราเพิ่มขึ้นเพียงปัจจัยที่ห้า สิ่งนี้หมายความว่าให้คุณเป็นจูนเนอร์ระบบคือว่าถ้าคุณสร้างออก (เพิ่มจำนวนของไดรฟ์) เกินกว่าสิ่งที่เป็นสิ่งจำเป็นอย่างเคร่งครัดสำหรับปริมาณของข้อมูล, ความสามารถในการให้บริการการร้องขอ I / O จริงจะลดลง จำเป็นที่จะต้องเพิ่มฉันนี้ / อัตรา O จะพยายามที่จะให้ทันกับตัวเลขกำลังการผลิตที่เพิ่มขึ้นคือสิ่งที่ขับรถย้ายไปเทคโนโลยี RAID. ประเภทดิสก์เพิ่มความสับสนในการปรับจูนดิสก์ประเภทดิสก์จำนวนมากที่มีอยู่: ATA, SCSI, USB, IEE1394 (FireWire) - สิ่งเหล่านี้เป็นตัวอย่างของเทคโนโลยีดิสก์ที่ใช้ในปัจจุบัน แต่ละเทคโนโลยีดิสก์มีความต้องการการปรับแต่งที่แตกต่างกันและเมื่อคุณเพิ่ม RAID การผสมมันต่อไป muddies น้ำจูน RAID สามารถอยู่ในซอฟแวร์ฮาร์ดแวร์หรือการผสมผสานของทั้งสอง ประสิทธิภาพสูงสุดมักจะมาจากฮาร์ดแวร์ที่ใช้โซลูชั่น RAID. แต่ละประเภทดิสก์ที่โดดเด่นด้วยอินเตอร์เฟซที่ประเภท อินเตอร์เฟซที่แต่ละประเภทมีความจุสูงสุดแบนด์วิดธ์ของตัวเองและคุณจะต้องใช้เวลาเหล่านี้เข้าบัญชีเมื่อการระบุความต้องการฮาร์ดดิสก์ของคุณ ตารางต่อไปนี้แสดงตัวอย่างการเปรียบเทียบสำหรับการเชื่อมต่อเหล่านี้ โปรดทราบว่านอกจากนี้ยังมีข้อ จำกัด เกี่ยวกับจำนวนของอุปกรณ์ที่สามารถยึดติดอยู่กับประเภทของอินเตอร์เฟซที่หลากหลายในแต่ละตัวอย่างเช่นจากสองบนรถเมล์ ATA มากที่สุดถึง 256 ใน IEEE.1394. แต่ละเหล่านี้ตามที่ระบุอาจมีการใช้งานหลาย คุณสมบัติใหม่และปรับปรุง นี่คือการเปรียบเทียบความเร็วของ AA ประเภทต่างๆของอินเตอร์เฟซดิสก์. การเชื่อมต่อความเร็วอนุกรม115 กิโลไบต์ / วินาทีขนาน (มาตรฐาน) 115 กิโลไบต์ / วินาทีขนาน (ECP / EPP) 3.0 Mb / s SCSI 5-320 Mb / วินาทีATA 3.3 - 133MB / วินาทีUSB1.1 1.5 Mb / s USB2.x 60 Mb / s IEEE1394 (ข) 50-400 Mb / s ต้นฉบับ IDE 3.3-33 Mb / วินาทีSATA 150 Mb / s Fibre Channel 2 Gb / วินาทีหน่วยความจำแคชในความพยายามที่จะ ปรับปรุง I / O ลักษณะของดิสก์ของพวกเขา, ผู้ผลิตหน่วยความจำแคชเพิ่มเพื่อให้การอ่านและเขียนแคช แต่น่าเสียดายที่แคชเหล่านี้มักจะมีขนาดเล็กเกินไปที่จะได้รับการช่วยเหลือมากกับประสิทธิภาพของฐานข้อมูลในระดับที่พวกเขามักจะเป็นส่วนเล็ก ๆ ของเปอร์เซ็นต์ของความจุฮาร์ดดิสก์ทั้งหมด ของสิ่งที่ใช้งานจริงเป็นดิสก์แคชของคู่ของเมกะไบต์บนดิสก์ 200 กิกะไบต์ถือตารางฐานข้อมูลที่เป็น 60 กิกะไบต์ในขนาด? แคชเร็ว ๆ นี้จะอิ่มตัวและใด ๆ I / O ได้รับประโยชน์จะถูกกำจัดออก ผู้ผลิตดิสก์อาร์เรย์เช่นอีเอ็มซีและ บริษัท ฮิตาชิได้นอกจากนี้ยังมีเงินขนาดใหญ่ของแคชในช่วงหลายสิบกิกะไบต์ซึ่งในบางสถานการณ์ไม่ช่วยปรับปรุง I / O อัตราขึ้นอยู่กับวิธีการที่มีประสิทธิภาพการประยุกต์ใช้ข้อมูลที่เก็บไว้ในฐานข้อมูล. สำหรับ ตัวอย่างเช่นถ้าโปรแกรมประยุกต์ที่เขียนไม่ดีและไม่สแกนเต็มรูปแบบของตารางหลายหลายกิกะไบต์นั้นอีกครั้งแคชจะอิ่มตัวและคุณถอยกลับไปยังดิสก์ I / O ความเร็ว สำหรับเรื่องที่อยู่ในสภาพแวดล้อมบางอย่างเช่นคลังข้อมูลและระบบสนับสนุนการตัดสินใจการสแกนของตารางที่มีขนาดใหญ่บางครั้งหลายร้อยกิกะไบต์ในขนาดที่เป็นธรรมดา นี้ได้อย่างรวดเร็วสามารถแม้กระทั่งภาษีที่ใหญ่ที่สุดในระบบแคช. I / O โปรไฟล์ทั้งหมดของจุดนี้ความจริงที่ว่าจะได้รับประสิทธิภาพสูงสุดจากระบบดิสก์ของคุณคุณจะต้องเข้าใจ I / O ลักษณะ (โปรไฟล์) ของระบบฐานข้อมูลของคุณ, มัน Oracle, SQL Server, Informix, UDB หรือ MySQL คุณต้องปรับสถาปัตยกรรมดิสก์ของคุณให้การสนับสนุนที่คาดว่า I / O และรายละเอียดคุณต้องปรับระบบฐานข้อมูลเพื่อใช้ประโยชน์จากสถาปัตยกรรมดิสก์ ตัวอย่างเช่นฐานข้อมูล Oracle มีที่แตกต่างกันของ I / O ลักษณะขึ้นอยู่กับว่ามันจะอ่านหรือเขียนข้อมูลและสิ่งที่ประเภทของการอ่านหรือเขียนจะทำ ฐานข้อมูลอื่น ๆ มีการแก้ไขการอ่าน / เขียนขนาด. คุณต้องตรวจสอบ I / O รายละเอียดสำหรับฐานข้อมูลของคุณและจากนั้นใช้ I / O รายละเอียดของฐานข้อมูลเพื่อตรวจสอบสูงสุดและต่ำสุดของ I / O ขนาด I / O รายละเอียดจะบอกคุณว่าร้อยละของ I / O ที่มีขนาดใหญ่ I / O และสิ่งที่ร้อยละขนาดเล็กของ I / O นอกจากนี้ยังจะทำให้คุณคาดว่า I / O ในอัตรา I / O ต่อวินาที. เมื่อคุณมี I / O ต่อวินาทีคุณสามารถกำหนด I / O ความสามารถ (จำนวนไดรฟ์) ที่จำเป็นเพื่อสนับสนุนฐานข้อมูลของคุณ. กฎข้อแรก ของการปรับแต่งระบบดิสก์ของคุณ: ". ขนาดเป็นครั้งแรกสำหรับ I / O ความสามารถแล้วสำหรับปริมาณ" การคำนวณบางหลังของซองจดหมายสำหรับจำนวนของแกนที่จำเป็นในการสนับสนุนของ I / O อัตรา (IOR) คือ: RAID10 กับการใช้งาน การอ่าน / เขียนกระจกทั้งหมด: MAX (เพดาน (IOR / (NSIOR * M), M) 2 * M) ที่ไหน: IOR คาดว่าสูงสุดของ I / O ในอัตรา I / O ต่อวินาทีNSIOR เป็นค่าเฉลี่ยที่ไม่ต่อเนื่องผม / O อัตราของดิสก์ใน I / O ต่อวินาที (ช่วงของ 90-100 สำหรับ RAID10) M คือจำนวนของกระจก - (สูงสุดของ I / O อัตราโดยแบ่งเฉลี่ยที่ไม่ใช่ลำดับ I / O อัตราต่อดิสก์ จำนวนครั้งของกระจกขึ้นสู่อำนาจที่ใกล้ที่สุดของ M หรือ 2 * M) RAID5 สมมติ parity ดิสก์หนึ่ง: MAX ((IOR / CNSIOR) +1,3) ที่ไหน: IOR คาดว่าสูงสุดของ I / O ในอัตรา I / O ต่อวินาทีCNSIOR จะแก้ไขเฉลี่ยที่ไม่ใช่ลำดับ I / O อัตราของดิสก์ใน I / O ต่อวินาที (ช่วง 60-90 สำหรับ RAID5) (สูงสุดของ I / O อัตราโดยแบ่งเฉลี่ยที่ไม่ใช่ลำดับ I / O อัตรา ต่อดิสก์สำหรับการแก้ไขบทลงโทษ RAID5 บวกหนึ่งดิสก์สำหรับดิสก์ความเท่าเทียมกัน) สำหรับการแก้ไขที่ไม่ต่อเนื่องของ I / O สำหรับอัตรา RAID เกิดจากการได้ถึงโทษ 400 เปอร์เซ็นต์ในการเขียน (เขียนใช้เวลาสี่ครั้งนานกว่าอ่านบนไดรฟ์เดียวกัน ) ในบางกรณีใน RAID5 ผมได้เห็นนี้ไปสูงถึงร้อยละ 6400 (เขียนใช้เวลา 64 ตราบใดที่อ่านไฟล์เดียวกัน) เมื่อรวมกับปัญหาอื่น ๆ เช่นการกระจายตัว. กรณีที่จุด: สถาปัตยกรรม RAID ต้นใช้ " แถบตื้นและกว้าง "ใจตั้งอยู่ในไฟล์ที่ถูกหักเป็นชิ้นเล็ก ๆ และแผ่กระจายไปทั่วเป็นจำนวนมากของดิสก์ ตัวอย่างเช่นแถบ unites ต่อดิสก์ขนาดเล็กเป็น 8K ทั่วไป ระบบจำนวนมากอ่านใน I / O ขนาด 64K หรือมีขนาดใหญ่ ซึ่งหมายความว่าเพื่อตอบสนองฉันเดียว / คำขอ O แปดของดิสก์ RAID ตั้งที่ถูกต้อง. ถ้ามีน้อยกว่าแปดดิสก์ในชุดดิสก์จะต้องได้รับสองคนหรือมากกว่า I / O ที่จะตอบสนองการร้องขอ นี้เสียงดีถ้าคุณกำลังพูดถึงผู้ใช้คนเดียวที่ต้องการที่จะอ่านไฟล์ขนาดใหญ่จากกลุ่มใหญ่ของดิสก์ได้อย่างรวดเร็ว; แต่สิ่งที่เกิดขึ้นเมื่อคุณมี 10 หรือ 100 หรือ 1,000 คนพร้อมกันทั้งหมดต้องการที่จะทำในสิ่งเดียวกันได้หรือไม่ปรับแต่งสำหรับ Concurrency ปัญหานี้ด้วยการเข้าถึงพร้อมกันและอาร์เรย์ RAID เป็นหนึ่งในแพร่หลายมากที่สุดในอุตสาหกรรม แพร่หลาย I / O รอมักจะเป็นเหตุการณ์ที่รอเด่นในระบบฐานข้อมูลใด ๆ เพียงเพราะความจริงที่ว่า I / O หน่วยความจำอยู่ในช่วงเสี้ยววินาทีในขณะที่ I / O ไปยังดิสก์อยู่ในช่วงเสี้ยววินาที เมื่อคุณเพิ่มการเข้าถึงบล็อกเนื่องจากดิสก์หลาย I / O ที่คุณจะได้รับผลมนุษย์หิมะที่สามารถทำลายระบบย่อย I / O ของคุณ. ผู้ผลิตอาร์เรย์ได้เริ่มที่จะตระหนักถึงปัญหาการเข้าถึงพร้อมกันนี้และมีการเพิ่มหน่วยแถบฐานต่อดิสก์ 64K ที่ตรงกับ I / O สำหรับหน่วยหลายระบบ ระบบการเรียนการสอนในขณะนี้เช่นดวงอาทิตย์และ Windows ใช้ประโยชน์สูงสุดของ I / O ขนาดหนึ่งเมกะไบต์หรือใหญ่กว่านั้นอีกครั้งในผู้ผลิตอาร์เรย์จะเล่นจับขึ้นให้กับผู้ผลิตเซิร์ฟเวอร์. ดังนั้นสิ่งที่เป็นกฎข้อที่สองของเราสำหรับดิสก์จูน? จากข้อมูลก่อนหน้านี้กฎคือ"เสมอให้แน่ใจว่าหลักของ I / O ขนาดของระบบฐานข้อมูลของคุณจะถูกจับคู่กับ I / O ขนาดของระบบดิสก์อาร์เรย์." แน่นอนผกผันยังถือจริง: "เสมอตรง หน่วยแถบต่อดิสก์ส่วนใหญ่คาดว่า I / O จากคำขอ (ฐานข้อมูล) การประยุกต์ใช้ของคุณ. " ในปี 1990 พอลเฉินจากมหาวิทยาลัยแคลิฟอร์เนียที่เบิร์กลีย์ศูนย์คอมพิวเตอร์เผยแพร่ชุดเอกสารบนดิสก์อาร์เรย์การปรับแต่งแถบขนาดหน่วยขึ้นอยู่กับ พร้อมกันคาดว่า ในเอกสารเหล่านี้นายเฉินและเพื่อนร่วมงานของเขาระบุว่า I / O ความเร็วสูง (วัดโดยเฉลี่ยขอเวลา) และ I / O อัตรา (วัดเมกะไบต์ต่อวินาที) สำหรับดิสก์กำหนดขนาดของแถบสำหรับการทำงานในอาร์เรย์ แม้ในขณะที่จำนวนการเข้าถึงพร้อมกันไม่เป็นที่รู้จัก มีอยู่สามสูตรที่ได้มาจากเอกสารเหล่านี้: สำหรับอาร์เรย์ที่ไม่เห็นพ้องด้วย RAID5 เมื่อเป็นที่รู้จักกัน: SU = (S * * * * * * * * APT DTR * (CON-1) * 1.024) + 5K. ที่ไหน: SU - หน่วย Striping ต่อดิสก์S - เห็นพ้องด้วย ค่าสัมประสิทธิ์ความลาดชัน (~ 0.25) APT - เวลาตำแหน่งเฉลี่ย (มิลลิวินาที) DTR - อัตราการถ่ายโอนข้อมูล (เมกะไบต์ / วินาที) CON -. จำนวนผู้ใช้พร้อมกัน= 1.024 1s / 1000ms * 1024K / 1M (ปัจจัยการแปลงสำหรับหน่วย) ดังนั้นสำหรับ ไดรฟ์ที่มีค่าเฉลี่ยขอเวลา 5.6 ms และอัตราการถ่ายโอน 20 เมกะไบต์ / วินาทีหน่วยแถบคำนวณสำหรับฐานผู้ใช้พร้อมกัน 20 จะเป็น: (0.25 * 5.6 * 20 * (19) * 1.024) + 5. = 545K (หรือ ~ 512K) สำหรับระบบที่คุณไม่ทราบว่าเห็นพ้องด้วยการคำนวณกลายเป็น: SU = (3/2 * * * * * * * * APT DTR) ดังนั้นสำหรับไดรฟ์เดียวกัน: 03/02 * 5.6 * 20 * 1.024 = 76.46K เพื่อให้ปัดเศษขึ้น ~ 128K หรือปัดเศษลง 64K และจากกระดาษสุดท้ายเฉิน, สูตรอาร์เรย์ RAID5 คือ: 0.5 * 5.6 * 20 * 1.024 = 57.34 (ปัดเศษขึ้น 64K) ค่าสำหรับเวลาในการเข้าถึงเฉลี่ยและอัตราการถ่ายโอนที่ใช้ในการ ตัวอย่างเหล่านี้เป็นจริงค่อนข้างต่ำเมื่อเทียบกับไดรฟ์ขั้นสูงมากขึ้นดังนั้นขนาดแถบแสดงก่อนหน้านี้อาจจะต่ำอย่างน้อยปัจจัยสองคนหรือมากกว่า Th
การแปล กรุณารอสักครู่..
