Solved

Hardware, battery backed cache RAID

Posted on 2012-04-11
3
540 Views
Last Modified: 2012-04-13
For a RAID with a battery backed cache:

From previous threads it was stated that its use was for protection from power failure (in addition to a UPS).

Is an additional use the ability to increase the cache to perform fater throughput

How large is the cache and how much faster can a RAID perform with battery backed cache
0
Comment
Question by:Los Angeles1
  • 2
3 Comments
 
LVL 47

Accepted Solution

by:
dlethe earned 333 total points
ID: 37833743
Everything is relative. No matter how much cache you have there will always be a point of diminishing returns.  Optimal size is a function of RAID level, disk technology, I/O size, stripe size, algorithms, and controller architecture.  Suffice to say the optimal size is most likely the size the manufacturer offers as the maximum config for any given product.

Also the protection is only required for write cache, it doesn't buy you squat (well, statistically insignificant) for reads.

No matter how much cache you have, at some point you will fill it up if you are write intensive, large block I/O.  Depending on the bandwidth on the back end, you could saturate it in a matter of seconds.  If you are looking for sustained write throughput, then forget about having any significant impact.  You need to buy enough disks with enough throughput to write data to disk and flush it as quickly as it comes in.
0
 
LVL 30

Assisted Solution

by:pgm554
pgm554 earned 167 total points
ID: 37834733
Battery backup has nothing to do with the speed of the controller.

It is simply a fail safe mechanism to prevent data corruption
.
It does however allow for you to use a write back caching,which is faster in accessing last used data from cached RAM,instead of going back to disk.

If you are using write through caching,it has no effect on speed what so ever,as data is written to the disk in real time.

Very soon I see SSD caching replacing the battery backed cache as it is cheaper per gig and is non volatile .

DRAM cache will be still be used in very high end systems,but SSD is about to break the bank.
0
 
LVL 47

Assisted Solution

by:dlethe
dlethe earned 333 total points
ID: 37834827
Battery backup does impact the speed of many controllers, but this is all controlled by firmware and in some cases may be overridden. In general, w/o battery backup then write cache may not be enabled.  Or even if write cache is forced on without battery backup, many controllers will ignore the write cache when the RAID configuration is degraded. Sometimes this happens due to architectural limitations and their patent portfolio.

Patents?  You betcha.  How a controller handles I/O in degraded mode and how it handles the RAID5 write hole is more of a licensing issue then a technical one.  It sucks to tell an engineer he/she can't address a problem a certain way because of intellectual property infringement or licensing constraints, but that is a huge part of how and why things are done certain ways.  

So the extended answer is that write cache will improve write performance up till the point where the cache is saturated.  The firmware, configurable settings and availability and health of a BBU define what conditions you will be allowed to use the write cache.   These rules are vendor/product/firmware specific.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Join & Write a Comment

FreeBSD on EC2 FreeBSD (https://www.freebsd.org) is a robust Unix-like operating system that has been around for many years. FreeBSD is available on Amazon EC2 through Amazon Machine Images (AMIs) provided by FreeBSD developer and security office…
Every server (virtual or physical) needs a console: and the console can be provided through hardware directly connected, software for remote connections, local connections, through a KVM, etc. This document explains the different types of consol…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
In a previous video, we went over how to export a DynamoDB table into Amazon S3.  In this video, we show how to load the export from S3 into a DynamoDB table.

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now