How can I throttle IO?

Over the past year we have replaced the majority of our DAS with a SAN.  For the most part this has been very successful however I do have a couple of database applications that saturate SAN IO.  One of the applications is Microsoft SQL Server 2000 based, the other is IBM UniData based.  

I am looking for a way to throttle IO such that other applications don't suffer due to IO saturation from these databases.

I would prefer to throttle at the operating system level (Windows 2003) but will also take suggestions for throttling at the DBMS level.
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Jim P.Commented:
As far as SQL Server goes, there is no really good way. About the only thing I can think of is to separate the channels with a fibre-channel switch.

Experts Exchange Solution brought to you by ConnectWise

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
jttacj1Author Commented:
We are actually running in an iSCSI environment.

We do have four separate HBA's on the controller and I could control the HBA's each database is connected to.

However the IO bottleneck does not appear to be on the frontend but the actual write to disk.

I did speak with our vendor and they suggested moving the offending data volumes to RAID 10 on a higher performance tier or adding more disks to the array.  I will do some testing to see how well this works.
Jim P.Commented:
>> We are actually running in an iSCSI environment.

Is it a separate IP range/network from the LAN?

>> but the actual write to disk.

Sounds about normal. The other question is how your LUNs are configured vs your Data (mdf) and Log (ldf) files locations. If they are two different LUNs -- D: and L: but they are on the same stripe set then you have disk contention. Because it has to write the log on one are of the disks, then move the heads to write the data, then go back and checkpoint the log.
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

Scott PletcherSenior DBACommented:
>> However the IO bottleneck does not appear to be on the frontend but the actual write to disk. <<

Maybe talk to the vendor about changing the % of cache dedicated to write vs read.
jttacj1Author Commented:
In the end there really was not good way to throttle IO.  However I am learned just how much impact moving from RAID 5 7200 SATA array to a RAID 10 10K Fiber Channel array can have.

The servers creating the bottleneck were development servers so i didn't want the expense of running them on the more expensive disk but to avoid IO bottlenecks that impact other less intense applications on the slower array it became necessary.
Jim P.Commented:
>>  However I am learned just how much impact moving

That sounds about right. We recently moved from an older SAN unit, to a newer SAN unit and have seen a performance difference.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.