RAID 5 vs. single SCSI drive?

  • Thread starter Thread starter Carlos Moreno
  • Start date Start date
Tuning database performance can be expensive if you want the best possible
disk speed. I'm not familiar with PostgreSQL but typically you want to
isolate the various parts of the database on to separate disks something
like this:

- drive dedicated to OS
- drive dedicated to SQL binaries. You might share this on the OS drive
if it is not accessed often.
- drive dedicated to database itself
- drive dedicated to database logs
- drive dedicated to database online backups / snapshots

This configuration allows concurrent writes to logs and data and backups,
which can really improve the speed.

The BEST possible performance you can get is if these partitions are on a
SAN type device with a huge, smart, cache, like an EMC. This is also the
most expensive option.

A cheaper option is to get these partitions on a disk array with battery
backed up cache. This could be anything from SCSI, ATA, or 2GB switched
fabric to a fiber scsi disk array, just for a few examples.

For a cheaper solution I would do:
- caching scsi controller with battery backup
- 2 drives mirrored for OS and applications volumes
- 2 drives mirrored for logs volume
- 2 drives mirrored for backups volume
- 2 drives mirrored OR 3 or more drives Raid 5 for data volume
 
Marc de Vries said:
Hi,

I'm trying to decide between these two options, for a server
running Linux (RedHat 9, most likely), which will be used as a
database server, running PostgreSQL (version 7.4, most likely). [snip]

I've been always reluctant to use SCSI; but I keep reading
that for server use, it's almost like it's not even a question,
it must be SCSI, period, by definition.

IDE was not suited for servers in the past. This is the main reason
SCSI is the defacto standard in servers. The server market is very
conservative and people more easily spend the money of the company
then their own money, which is another reason SCSI has stayed the
standard.

Still there are good reasons to choose SCSI is you are willing to pay
premium prices.

- SCSI has much longer cables then IDE.

Which works for JBOD but not RAID.
SCSI is at it's limit at 4 drives per channel, bandwidth wise.

True. I was thinking about physical length. Not the number of devices
you can attach. But that is also a limit that many fans of SCSI
"forget" to mention. Although the situation has improved a lot with
320MB/s. You can easily put 8 drives on such a channel.
Agreed, but choosing a different case may be wiser.

Agree. But it can be quite difficult to find a suitable case.
I've helped people find a case for a cheap fileserver with IDE raid.
But because they wanted hotswap IDE they needed a case with lots of
5,25" bays, but also short cable length to the mobo.
The number of cases that were suitable was really small.
Why SATA-2 specifically?

Because SATA-2 is geared specifically towards server use. It's not
just a faster version of SATA-1 as you might assume from the name.
The SATA working group describes Serial ATA II as "an extension to
SATA 1.0"

For instance, the SATA II document has specifications for SATA
backplane connections, and extra things that have to be defined when
you want to design a multi-desk enclosure in which you have 18 sata
hotplug disks stacked next to each other.
Now, I won't claim that I know why all that is necessary, but the
document mentions signal strengths etc.

Command queueing which is quite limited in SATA 1 is extended a lot.

I got a document about all that with far more technical details, then
I ever want to know. But it will show you that it's really designed
for server use. The filename is S2P1_100Gold1.pdf and I downloaded it
from www.serialata.org
For JBOD.

Nope. For Raid5.
Now, I have to admit that the array controllers we have in our SQL and
Exchange servers are quite expensive :-)

The ones we use have 4 SCSI channels at 320MB/s each. So I can make a
single Raid5 volume with 28 disks, using 7 disks per channel. Gives
excellent performance :-)
(Actually they are Raid ADG volumes. Which is like Raid5, but with an
extra parity disk, so you can loose two disks in your array without
loosing data)
What is so special about the Maxline II?

Aparantly they are created to be just as reliable as SCSI disks. These
should be designed for 24*7 use.

Which doesn't explain why they give 3 year warranty instead of 5 year
which is usual for SCSI disks.
And IO/sec.

Correct. But this is a direct consequence of the low access times and
the optimization for complete random disk access.
And smaller platters.

No. It's just the high rpm values.
Larger platters also come with heads which can read more data. So this
has very little influence.

The reason scsi disks (and that 10.000 rpm Raptor IDE) has small
platters is purely a technological limit.
It's far more difficult to reliably read data at high rpm values from
a large platter.
That is why new larger platters often appear in 5400 rpm IDE disks
first, before being used in 7200 rpm IDE disks. (before finally being
used in 10.000 and 15.000 rpm disks)
Oh? Why not?

Because you often read more then one file or large files. Which means
that the harddisk head will often read data from areas on the disks
which are pretty close together.

SCSI excells in situations where those area's are scattered completely
random on the disk. This happens more often when you do queries on
really larges databases.
In thise case the cache also doesn't help. (which is usually does for
fileservers)

No, it doesn't seem that way. If it were drivers we should be able to
see difference between the controllers. Instead we see difference
between scsi drives and we see difference between ide drives.

But it doesn't really matter where this difference comes from. The
fact is, that it is there and we take it into account.

In case of a array controller with a lot of cache, this will also have
a big influence.
Unless you are using a doing a query on a 50GB database file, in which
case the cache doesn't really help you a lot.

Marc
 
Marc de Vries said:
Marc de Vries said:
Hi,

I'm trying to decide between these two options, for a server
running Linux (RedHat 9, most likely), which will be used as a
database server, running PostgreSQL (version 7.4, most likely).
[snip]

I've been always reluctant to use SCSI; but I keep reading
that for server use, it's almost like it's not even a question,
it must be SCSI, period, by definition.

IDE was not suited for servers in the past. This is the main reason
SCSI is the defacto standard in servers. The server market is very
conservative and people more easily spend the money of the company
then their own money, which is another reason SCSI has stayed the
standard.

Still there are good reasons to choose SCSI is you are willing to pay
premium prices.

- SCSI has much longer cables then IDE.

Which works for JBOD but not RAID.
SCSI is at it's limit at 4 drives per channel, bandwidth wise.

Actually it is between 7 and 4 as it depends on the individual drives
STR whether the combined STR will exceed the channel bandwidth.
Four is the limit for the fastest drives in its range.
True. I was thinking about physical length. Not the number of devices
you can attach. But that is also a limit that many fans of SCSI
"forget" to mention.
Although the situation has improved a lot with 320MB/s.

Not really, not specifically.
It happens every time a new interface speed is introduced. Unfortu-
nately, SCSI appears to always trail behind, whitnessed currently
with drives already nibbling at Ultra640 with STRs nearing 80MB/s.
You can easily put 8 drives on such a channel.

Not likely. An Ultra320 drive will also be spec'ed up from 1/7th
to 1/4th the bus bandwidth, just as with any other SCSI busspeed.
Agree. But it can be quite difficult to find a suitable case.
I've helped people find a case for a cheap fileserver with IDE raid.
But because they wanted hotswap IDE they needed a case with lots of
5,25" bays, but also short cable length to the mobo.
The number of cases that were suitable was really small.


Because SATA-2 is geared specifically towards server use. It's not
just a faster version of SATA-1 as you might assume from the name.

Which I did, or rather, I thought you were hinting at.
The SATA working group describes Serial ATA II as "an extension to
SATA 1.0"

Yes, a bit confusing that.
For instance, the SATA II document has specifications for SATA
backplane connections, and extra things that have to be defined when
you want to design a multi-desk enclosure in which you have 18 sata
hotplug disks stacked next to each other.
Now, I won't claim that I know why all that is necessary, but the
document mentions signal strengths etc.

Command queueing which is quite limited in SATA 1 is extended a lot.

I got a document about all that with far more technical details, then
I ever want to know.
But it will show you that it's really designed for server use.

Not really. Like most specs they just get better with every new revision.
The filename is S2P1_100Gold1.pdf and I downloaded it from
www.serialata.org

That is still the one I downloaded a while ago.
It didn't strike me as a new standard, just a newer revision.
Nope. For Raid5.

You don't want more than 4 drives on a channel for RAID5 unless
the combined STR is less than the channel bandwidth. So, when you are
going to exceed that you need to go for more channels with SCSI also.
Now, I have to admit that the array controllers we have in our SQL and
Exchange servers are quite expensive :-)

The ones we use have 4 SCSI channels at 320MB/s each.

Well, there you go, 4 channels.
So I can make a single Raid5 volume with 28 disks, using 7 disks per channel.
Gives excellent performance :-)

But could probably be even better when spread over more channels.
(Actually they are Raid ADG volumes. Which is like Raid5, but with an
extra parity disk, so you can loose two disks in your array without
loosing data)


Apparently they are created to be just as reliable as SCSI disks. These
should be designed for 24*7 use.

Which doesn't explain why they give 3 year warranty instead of 5 year
which is usual for SCSI disks.


Correct. But this is a direct consequence of the low access times and
the optimization for complete random disk access.

Such as command reordering.
No. It's just the high rpm values.

And smaller platters.
Smaller platters, smaller seek distances, faster seeks.
Larger platters also come with heads which can read more data.
So this has very little influence.

Not to seek distance.
The reason scsi disks (and that 10.000 rpm Raptor IDE) has small
platters is purely a technological limit.

No, it is not. The original Raptor doesn't have smaller platters and that
is noticed in its not so brilliant seektimes. The new Raptor has smaller
platters and it's seektimes are more in check with 10k rpm SCSI.
It's far more difficult to reliably read data at high rpm values from
a large platter.

That is just other words for difficulty to read higher densities.
That is why new larger platters often appear in 5400 rpm IDE disks
first, before being used in 7200 rpm IDE disks. (before finally being
used in 10.000 and 15.000 rpm disks)


Because you often read more than one file or large files.

Unfortunately a single command still can only transfer 256kB of contiguous
data, so on a multiuser system big files can still be accessed very randomly.
Which means that the harddisk head will often read data from areas on the disks
which are pretty close together.

Only when not very busy.
 
Marc de Vries said:
Hi,

I'm trying to decide between these two options, for a server
running Linux (RedHat 9, most likely), which will be used as a
database server, running PostgreSQL (version 7.4, most likely).

[snip]

I've been always reluctant to use SCSI; but I keep reading
that for server use, it's almost like it's not even a question,
it must be SCSI, period, by definition.

IDE was not suited for servers in the past. This is the main reason
SCSI is the defacto standard in servers. The server market is very
conservative and people more easily spend the money of the company
then their own money, which is another reason SCSI has stayed the
standard.

Still there are good reasons to choose SCSI is you are willing to pay
premium prices.

- SCSI has much longer cables then IDE.

Which works for JBOD but not RAID.
SCSI is at it's limit at 4 drives per channel, bandwidth wise.

Actually it is between 7 and 4 as it depends on the individual drives
STR whether the combined STR will exceed the channel bandwidth.
Four is the limit for the fastest drives in its range.

Combined STR isn't all that interesting as people think it is.
(BTW I assume you meant sustained transfer rate with STR?)

It's interesting when you are moving several GB of video files. But
that is the worst case scenario.

Usually the bandwith a harddisk uses is only a fraction of it's
theoretical limit. As soon as the harddisks has to seek different
files, the neede bandwith plummets.

Also one of the main reasons for the higher performance of Raid
volumes is not the high transfer rate, but the reduced access times.
While some harddisks are busy retrieving one file, others are
retrieving another. This does not need much bandwith on the SCSI bus,
but improves performance a lot!

If sustained transfer rate was really that important in every day use,
the performance gap between the fastest SCSI and IDE drives would be a
lot smaller, because that is one of the strong points of IDE drives
compared to SCSI. As stated before, the accesstime is the weak point.
Not really, not specifically.
It happens every time a new interface speed is introduced. Unfortu-
nately, SCSI appears to always trail behind, whitnessed currently
with drives already nibbling at Ultra640 with STRs nearing 80MB/s.


Not likely. An Ultra320 drive will also be spec'ed up from 1/7th
to 1/4th the bus bandwidth, just as with any other SCSI busspeed.

As stated above, there are a lot of limitations in everyday use. If
you calculate how much time is spend is spend searching for a file and
how much time transferring it, you will see that the needed bandwith
is very quickly to for instance 40MB/s instead of 80MB/s which prevent
disks from ever reaching that 80MB/s

You can also see it well on storagereview. For instance the WD disks
usually have a high transfer rate, but that advantage is completely
lost in high end diskbenchmark and server benchmarks.
A nice example is this review. First the WD scores best in the
transfer rates:
http://www.storagereview.com/articles/200309/20030904WD2500JD_2.html
And then scores pretty low in the server benchmarks:
http://www.storagereview.com/articles/200309/20030904WD2500JD_4.html

You don't want more than 4 drives on a channel for RAID5 unless
the combined STR is less than the channel bandwidth. So, when you are
going to exceed that you need to go for more channels with SCSI also.

Again. This is not needed. Only in very rare situations where you move
extremly large files around.
Well, there you go, 4 channels.

Never said they couldn't be usefull. Just that you can use more
devices on a channel than you suggested.
But could probably be even better when spread over more channels.

Nope. The bandwith used never even comes close to the available
bandwith.

The log drives (which can use relatively high str) are on a seperate
controller. So STR and high bandwith are never an issue.

And smaller platters.
Smaller platters, smaller seek distances, faster seeks.



Not to seek distance.

Are you talking here about platters with large MB capacity or the
diameter of the physical disk?

I didn't think there was much difference in the diamter. But that can
indeed influence it.
Higher MB capacity on a platter of the same diameter should not
influence it. I was thinking about the MB capacity.
No, it is not. The original Raptor doesn't have smaller platters and that
is noticed in its not so brilliant seektimes. The new Raptor has smaller
platters and it's seektimes are more in check with 10k rpm SCSI.

Sorry, but storagereview does not agree with you. The WD740 had a .3
ms improvement on the WD360 where WD claimed .7 ms improvement.
That is not an improvement to write home about.
http://www.storagereview.com/articles/200311/20031111WD740GD_2.html
That is just other words for difficulty to read higher densities.

Yes. And?
Unfortunately a single command still can only transfer 256kB of contiguous
data, so on a multiuser system big files can still be accessed very randomly.

Correct.
(Yes another reason why the maximum STR values a disk can generate are
never reached in normal use)

But even this seemingly little amount of contiguous data can make a
huge impact on the disks performance. Reading 100% random data, or 2
contiguous piece of data and then two pieces somewhere alse on the
disk already makes a huge impact.
Also keep in mind that the cache on a disk isn't all that big anyway.
So any improvement you want to make there would have to be done on
such small amount of data.

Looking at the benchmarks of SCSI and IDE disks in desktop benchmarks
it is quite amazing that they can do so much.
Only when not very busy.

That helps also.
But the tricks that are built into the disk or the protocol help a lot
too.

BTW Have you already seen WD740 reviews where tagged command queuing
was activated? The model storagereview reviewed didn't have that yet.
It would be interested to see if it can then catch up with the SCS
10.000 drives in the server benchmarks.

Marc
 
Marc de Vries said:
Marc de Vries said:
Hi,

I'm trying to decide between these two options, for a server
running Linux (RedHat 9, most likely), which will be used as a
database server, running PostgreSQL (version 7.4, most likely).

[snip]

I've been always reluctant to use SCSI; but I keep reading
that for server use, it's almost like it's not even a question,
it must be SCSI, period, by definition.

IDE was not suited for servers in the past. This is the main reason
SCSI is the defacto standard in servers. The server market is very
conservative and people more easily spend the money of the company
then their own money, which is another reason SCSI has stayed the
standard.

Still there are good reasons to choose SCSI is you are willing to pay
premium prices.

- SCSI has much longer cables then IDE.

Which works for JBOD but not RAID.
SCSI is at it's limit at 4 drives per channel, bandwidth wise.

Actually it is between 7 and 4 as it depends on the individual drives
STR whether the combined STR will exceed the channel bandwidth.
Four is the limit for the fastest drives in its range.

Combined STR isn't all that interesting as people think it is.

It is with RAID.
(BTW I assume you meant sustained transfer rate with STR?)

Of course.
It's interesting when you are moving several GB of video files.

That's where it gets noticed.
But that is the worst case scenario.

Not with RAID0 and RAID0 variants.
Usually the bandwith a harddisk uses is only a fraction of it's
theoretical limit.
As soon as the harddisks has to seek differentfiles, the needed
bandwith plummets.

On average.
Also one of the main reasons for the higher performance of Raid
volumes is not the high transfer rate, but the reduced access times.

Only RAID1 and RAID1 variants.
While some harddisks are busy retrieving one file, others are
retrieving another.

Not with RAID0.
This does not need much bandwidth on the SCSI bus,
but improves performance a lot!

Not with RAID0. And not a lot with RAID1 either.
If sustained transfer rate was really that important in every day use,
the performance gap between the fastest SCSI and IDE drives would be a
lot smaller, because that is one of the strong points of IDE drives
compared to SCSI. As stated before, the accesstime is the weak point.


As stated above, there are a lot of limitations in everyday use.

You don't get it.
The question is whether the bus will be the limiting factor in how long
a particular transfer will take.

EG, an Ultra160 drive may be able to transfer ~35MB/s sustained.
A transfer on 4 of those drives in RAID0 will take 140MB/s plus
command overhead out of the SCSI bus which it just barely takes.
When you add another drive the combined STR is still 140MB/s,
limited by the SCSI bus. The per drive STR is now 140/5 = 28MB/s.
Because the drive itself is faster than that, it may start to loose
revolutions and perform even worse than it need to.
If you calculate how much time is spend in searching for a file and
how much time transferring it, you will see that the needed bandwidth
is very quickly to for instance 40MB/s instead of 80MB/s which prevent
disks from ever reaching that 80MB/s.

Sorry, can't make any chocolate of that.
You can also see it well on storagereview. For instance the WD disks
usually have a high transfer rate, but that advantage is completely
lost in high end diskbenchmark and server benchmarks.
A nice example is this review. First the WD scores best in the transfer rates:
http://www.storagereview.com/articles/200309/20030904WD2500JD_2.html
And then scores pretty low in the server benchmarks:
http://www.storagereview.com/articles/200309/20030904WD2500JD_4.html

That is not what I'm talking about.
Again. This is not needed. Only in very rare situations where you move
extremly large files around.


Never said they couldn't be usefull. Just that you can use more
devices on a channel than you suggested.

Of course you can. 16 per channel (just some bunch of disks), if you want to.
Nope. The bandwith used never even comes close to the available bandwith.

Wait until you move those "extremly large files around".
The log drives (which can use relatively high str) are on a seperate
controller. So STR and high bandwith are never an issue.



Are you talking here about platters with large MB capacity or the
diameter of the physical disk?

That what I meant should be rather obvious by now.
I didn't think there was much difference in the diameter.

There is.
But that can indeed influence it.
Higher MB capacity on a platter of the same diameter should not
influence it.

Preferably, but tracking may well be negatively influenced by higher
densities and therefor also influence the settling time of seeks.
I was thinking about the MB capacity.


Sorry, but storagereview does not agree with you. The WD740 had a .3
ms improvement on the WD360 where WD claimed .7 ms improvement.
That is not an improvement to write home about.

Maybe not, but it is still a 50% improvement on the gap with SCSI previously.

Exactly my thought.
Correct.
(Yes another reason why the maximum STR values a disk can generate are
never reached in normal use)

Any sequential file will reach STR at some point. Single track data is even
faster than that but is obviously only sustained for as long as a single buffer
lasts.
But even this seemingly little amount of contiguous data can make a
huge impact on the disks performance. Reading 100% random data, or 2
contiguous piece of data and then two pieces somewhere else on the
disk already makes a huge impact.
Also keep in mind that the cache on a disk isn't all that big anyway.
So any improvement you want to make there would have to be done on
such small amount of data.

Looking at the benchmarks of SCSI and IDE disks in desktop benchmarks
it is quite amazing that they can do so much.


That helps also.
But the tricks that are built into the disk or the protocol help alot too.

Only when very busy.
Obviously you can't wait forever for a next command
to come in to decide which one you will serve first.
 
Marc de Vries said:
Hi,

I'm trying to decide between these two options, for a server
running Linux (RedHat 9, most likely), which will be used as a
database server, running PostgreSQL (version 7.4, most likely).

[snip]

I've been always reluctant to use SCSI; but I keep reading
that for server use, it's almost like it's not even a question,
it must be SCSI, period, by definition.

IDE was not suited for servers in the past. This is the main reason
SCSI is the defacto standard in servers. The server market is very
conservative and people more easily spend the money of the company
then their own money, which is another reason SCSI has stayed the
standard.

Still there are good reasons to choose SCSI is you are willing to pay
premium prices.

- SCSI has much longer cables then IDE.

Which works for JBOD but not RAID.
SCSI is at it's limit at 4 drives per channel, bandwidth wise.

Actually it is between 7 and 4 as it depends on the individual drives
STR whether the combined STR will exceed the channel bandwidth.
Four is the limit for the fastest drives in its range.

Combined STR isn't all that interesting as people think it is.

It is with RAID.

No.
But lots of peopel think that it is.
That's where it gets noticed.

That's where it is needed.
Not with RAID0 and RAID0 variants.


On average.


Only RAID1 and RAID1 variants.

No. Also on Raid0 and Raid5.

But just like there are cheap Raid1 cards that don't support this, I
don't want to exclude the possibility that this can also be the case
on cheap raid5 cards.
Not with RAID0.

Yes, also with Raid0.
That's why you need to make a large stripe size when you have lots of
small files.
Not with RAID0. And not a lot with RAID1 either.

It improves performance a lot with Raid1 one. So much in fact that you
will find that in lots of scenario's a Raid1 is just as fast as 2 disk
in Raid0 and Raid 0+1 is often just as fast as 4 disks in Raid0.
You don't get it.

No, You don't get it.
The question is whether the bus will be the limiting factor in how long
a particular transfer will take.

And the answer is that the bus is far less of a limiting factor when
you take real-life scenarios, instead of the theoretical maximum STR.
EG, an Ultra160 drive may be able to transfer ~35MB/s sustained.
A transfer on 4 of those drives in RAID0 will take 140MB/s plus
command overhead out of the SCSI bus which it just barely takes.
When you add another drive the combined STR is still 140MB/s,
limited by the SCSI bus. The per drive STR is now 140/5 = 28MB/s.
Because the drive itself is faster than that, it may start to loose
revolutions and perform even worse than it need to.

This is true for the hypothetical situation where the disk is
constantly using high STR.

The reality is that this is not what is happening in real-life. STR is
low, and the disks is mainly busy with seaking files that are
distributed all over the disk.

Again, this is why 15k SCSI disks are so much faster than IDE disks.
Sorry, can't make any chocolate of that.

I guess I should have expected that. If you could, you wouldn't make
the false assumption that STR is all important for disk performance.

Take a 200kB file.
A disk will take around 8 ms to seek and access the file. At 40MB/s
that disk will then transfer the data in 5ms.
So the disk has spent most of it's time, not transferring data, but
searching for it.
So the bandwidth used by this disk that is randomly reading 200kB
files is only 15MB/s

Now, as I said before it depends a lot on the situation.
If you transfer very large files that are not fragmented the access
time doesn't play a big role anymore, and you can reach very high STR.

But that situation happens mainly in videoediting.

As you said yourself when discussing SCSI disks, this does not happen
on busy fileservers or database servers.

A quote from a few posts ago in this same thread:
++++++++++++++++++++++++++
Unfortunately a single command still can only transfer 256kB of >contiguous
data, so on a multiuser system big files can still be accessed very randomly.
Only when not very busy."
++++++++++++++++++++++++++

Do you now see what happens to the STR on a busy fileserver or
database server?

Those nice high STR are destroyed on those servers.
That is not what I'm talking about.

With the explanation above about the STR, I assume you now understand
the relevance of this part.
Of course you can. 16 per channel (just some bunch of disks), if you want to.

That depends on the scenario, but it would be perfectly valid for some
systems.

With the 15MB/s of the example above we would need 16*15=240MB/s
Which is well below 320MB/s
Wait until you move those "extremly large files around".

That does not happen on my exchange servers.
I don't do videoediting on them :-)
That what I meant should be rather obvious by now.

Since diameter is rarely talked about, and people usually mean density
that was not obvious.

But since it is of vital importance for the rest of the discussion
it's best to check and make sure.
There is.


Preferably, but tracking may well be negatively influenced by higher
densities and therefor also influence the settling time of seeks.


Maybe not, but it is still a 50% improvement on the gap with SCSI previously.


Exactly my thought.

You didn't write anywhere that it is more difficult to read higher
densities.
So if you also though that you should have written that in the first
place, then I wouldn't have had to do that.

Why you feel the need to make such silly remarks in an otherwise
serious discussion I can only guess at.
Any sequential file will reach STR at some point. Single track data is even
faster than that but is obviously only sustained for as long as a single buffer
lasts.

I trust you will understand now why high STR is not as important is
you thought.
Only when very busy.
Obviously you can't wait forever for a next command
to come in to decide which one you will serve first.

When a harddisk has SO little to do that that does not help anymore
the performance is not important anway :-)


Marc
 
You didn't write anywhere that it is more difficult to read higher
densities.
So if you also though that you should have written that in the first
place, then I wouldn't have had to do that.

Why you feel the need to make such silly remarks in an otherwise
serious discussion I can only guess at.



When discussing anything serious about SCSI with this group, I have found
that the best approach is to just say, "Go SCSI young man, go SCSI any never
look back". That statement puts an end to all the mindless attempts by them
to say otherwise. It works every time.



Rita
 
On Wed, 17 Dec 2003 06:53:50 -0500, "Rita_A_Berkowitz"
When discussing anything serious about SCSI with this group, I have found
that the best approach is to just say, "Go SCSI young man, go SCSI any never
look back".

Yes, I quickly noticed that you always say "Go SCSI" without any
attempt to explain why. So I quickly ignored those remarks.

But in this case it didn't even had much to do with SCSI anymore.
That statement puts an end to all the mindless attempts by them
to say otherwise. It works every time.

I didn't realise you did that to stimulate the well reasoned attempts
like the ones I made.
I'll have to keep that in mind :-)

Marc
 
On Wed, 17 Dec 2003 06:53:50 -0500, "Rita_A_Berkowitz"


Yes, I quickly noticed that you always say "Go SCSI" without any
attempt to explain why. So I quickly ignored those remarks.



I got into the habit of not explaining anymore since it would be a futile
attempt to hold an actual conversation with the normal group of
multi-personality misfits and other socially and mentally challenged
resident idiots. You, on the other hand, had a good understanding of the
situation in hand and you know what will work and what will not.

But in this case it didn't even had much to do with SCSI anymore.



Agreed.



I didn't realise you did that to stimulate the well reasoned attempts
like the ones I made.
I'll have to keep that in mind :-)

Like you, I made reasoned attempts to provide facts to the
multi-personalities of Rod (Corncob) Speed and have met nothing but utter
nonsense. As time goes on and you read this group more, you will shortly
see the degradation of any logical or useful information emanating from
him/them. Anyways, good luck and enjoy the group.



Rita
 
Marc de Vries said:
Marc de Vries said:
Hi,

I'm trying to decide between these two options, for a server
running Linux (RedHat 9, most likely), which will be used as a
database server, running PostgreSQL (version 7.4, most likely).

[snip]

I've been always reluctant to use SCSI; but I keep reading
that for server use, it's almost like it's not even a question,
it must be SCSI, period, by definition.

IDE was not suited for servers in the past. This is the main reason
SCSI is the defacto standard in servers. The server market is very
conservative and people more easily spend the money of the company
then their own money, which is another reason SCSI has stayed the
standard.

Still there are good reasons to choose SCSI is you are willing to pay
premium prices.

- SCSI has much longer cables then IDE.

Which works for JBOD but not RAID.
SCSI is at it's limit at 4 drives per channel, bandwidth wise.

Actually it is between 7 and 4 as it depends on the individual drives
STR whether the combined STR will exceed the channel bandwidth.
Four is the limit for the fastest drives in its range.

Combined STR isn't all that interesting as people think it is.

It is with RAID.

No.
But lots of peopel think that it is.

Ever considered that they might be smarter than you are?
That's where it is needed.


No. Also on Raid0 and Raid5.

Nope. Resultant access time it the slowest time of the set.
But just like there are cheap Raid1 cards that don't support this, I
don't want to exclude the possibility that this can also be the case
on cheap raid5 cards.


Yes, also with Raid0.

Nope, access is to all drives at once for the same IO.
Otherwise, what's the point of RAID0.
That's why you need to make a large stripe size when you have lots of
small files.

Yeah, right.
It improves performance a lot with Raid1 one. So much in fact that you
will find that in lots of scenario's a Raid1 is just as fast as 2 disk
in Raid0 and Raid 0+1 is often just as fast as 4 disks in Raid0.

Too ridiculous to even comment on.
No, You don't get it.


And the answer is that the bus is far less of a limiting factor when

But it nevertheless is a limiting factor.
you take real-life scenarios, instead of the theoretical maximum STR.


This is true

Oh good.
for the hypothetical situation where the disk is constantly using
high STR.

Nope, what is true on the macro level is also true on the microlevel.
When you do enough random access transfers you will eventually
find it back in the numbers there too.
The reality is that this is not what is happening in real-life.

Often enough.
STR is low,

STR is STR, it is one number, it cannot be "low"(er) or "high"(er).
(There are different STRs per different zones though).
and the disks is mainly busy with seaking files that are distributed
all over the disk.

Again, this is why 15k SCSI disks are so much faster than IDE disks.


I guess I should have expected that.

If you had read it back, yes. But you are not that kind of guy, are you.
If you could, you wouldn't make the false assumption
that STR is all important for disk performance.

It's not, nor did I ever say that it was, so, speaking of false assumptions,
I really don't know where you got that from.
Take a 200kB file.
A disk will take around 8 ms to seek and access the file.
At 40MB/s

Assuming U160, presumably.
that disk will then transfer the data in 5ms.
So the disk has spent most of it's time, not transferring data, but
searching for it.
So the bandwidth used by this disk that is randomly reading 200kB
files is only 15MB/s

Right, and when you now have 5 of those drives in RAID0 it could
theoretically be able to transfer that same amount of data in 1 ms
in stead of 5, except that the SCSI U160 channel can't transfer
that data (200 MB/s) in 1 ms.

So although the 200kb could be transferred theoretically in 9 ms
from the start of the command, giving an average transfer rate of
22 MB/s, which is way below U160's bandwidth as you put it, it is
actually transferred in around 9.5 ms, averaging at 21 MB/s instead.

So, your reasoning about used and available bandwidth is flawed.
Like I said before, you don't get it.
Now, as I said before it depends a lot on the situation.
If you transfer very large files that are not fragmented the access
time doesn't play a big role anymore, and you can reach very high STR.

STR is measured by pure sequential access.
When access is not sequential, you obviously can't speak of STR.
But that situation happens mainly in videoediting.

And with lots of other applications on non-fragmented volumes.
As you said yourself when discussing SCSI disks, this does not happen
on busy fileservers or database servers.

A quote from a few posts ago in this same thread:
++++++++++++++++++++++++++

++++++++++++++++++++++++++

Do you now see what happens to the STR on a busy fileserver or
database server?

Yes, but have you? Apparently not when you don't even now what STR is.
Those nice high STR are destroyed on those servers.

You really didn't get it, now did you.
With the explanation above about the STR, I assume you now understand
the relevance of this part.

Nope, I have destroyed it with that 5 drive RAID0 example.
I told you before, I wasn't talking about that, but you don't listen.
That depends on the scenario, but it would be perfectly valid for some
systems.

With the 15MB/s of the example above we would need 16*15=240MB/s
Which is well below 320MB/s.

Except that an Ultra320 bus full of U160 drives is basically an U160 bus and
that 240 MB/s will be cut in half and so will be the 15MB/s of the single drive.
That does not happen on my exchange servers.
I don't do videoediting on them :-)


Since diameter is rarely talked about, and people usually mean density
that was not obvious.

"Smaller platters, smaller seek distances, faster seeks. Not to seek distance."
What exactly was there so hard to get?
But since it is of vital importance for the rest of the discussion
it's best to check and make sure.


You didn't write anywhere that it is more difficult to read higher densities.

Really? What exactly did you think that
"That is just other words for difficulty to read higher densities."
line was all about?
So if you also though that you should have written that in the first place,

Nope, I usually don't state the bloody obvious.
then I wouldn't have had to do that.

Do what? Stating the bloody obvious? People usually call it 'progress'.
Why you feel the need to make such silly remarks in an otherwise
serious discussion I can only guess at.

Your misinterpretation, your problem.

Trust all you want.
you will understand now why high STR is not as important is you thought.

Your misinterpretations are your own fault.
When a harddisk has SO little to do that that does not help anymore
the performance is not important anway :-)

That depends entirely on how that "little to do" is distributed over time
and in how many IO and how many users. If I am that single user that
wants to read this huge sequential file, I *do* care when it takes longer
than it needs to be due to a bottleneck somewhere along the line.
No 'tricks' or 'protocoll' can take that bottleneck away.
 
Marc de Vries said:
Hi,

I'm trying to decide between these two options, for a server
running Linux (RedHat 9, most likely), which will be used as a
database server, running PostgreSQL (version 7.4, most likely).

[snip]

I've been always reluctant to use SCSI; but I keep reading
that for server use, it's almost like it's not even a question,
it must be SCSI, period, by definition.

IDE was not suited for servers in the past. This is the main reason
SCSI is the defacto standard in servers. The server market is very
conservative and people more easily spend the money of the company
then their own money, which is another reason SCSI has stayed the
standard.

Still there are good reasons to choose SCSI is you are willing to pay
premium prices.

- SCSI has much longer cables then IDE.

Which works for JBOD but not RAID.
SCSI is at it's limit at 4 drives per channel, bandwidth wise.

Actually it is between 7 and 4 as it depends on the individual drives
STR whether the combined STR will exceed the channel bandwidth.
Four is the limit for the fastest drives in its range.

Combined STR isn't all that interesting as people think it is.

It is with RAID.

No.
But lots of peopel think that it is.

Ever considered that they might be smarter than you are?

Yeah. just like billions of flies can't be wrong. Eat shit!

Lots of people talk about this without understanding what is going on.
So many people in fact, that Storagereview puts specific warnings on
their website that STR is NOT interesting at all for harddisk
performance.

Unfortunately you belong to those people

Have you ever considered that someone who has hands on experience with
high end array controllers in demanding servers might know more about
this subject than you do?

There is lots of good info on the net that confirms what I told you.
Nope. Resultant access time it the slowest time of the set.

I am of course talking about effective access time when reading
multiple files. (which should have been clear from my earlier posts)

It is EXACTLY the same reason why RAID1 is faster.

When reading a single file, RAID1 is not faster either. In that case
the access time is also the slowest time of the set.
It's when you read multiple files that RAID1 becomes faster. Exactlty
the same as with Raid5 and Raid0.
Nope, access is to all drives at once for the same IO.
Otherwise, what's the point of RAID0.

The point of Raid0 is that it does BOTH.

When a file gets written to Raid0 it is spread over multiple disks.
But it is not necessarily spread over ALL the disks. That is dependent
on the stripe size you specify.
Take a large stripe size. This will mean that a very small file is not
spread over multiple disks at all, but written to only 1 disk!
A file that is a bit larger might be spread to just 2 disks.

That means that the other disks are idle, and a good array controller
can read/write to those disks as the same time.

You can see it graphically here:
http://www.pcguide.com/ref/hdd/perf/raid/concepts/perfStripe-c.html

Now, if your only aim is to improve transfer rates then you want small
stripe sizes.

In general, large stripe size gives you better performance. Even with
affordable IDE array controllers.

In theory there is an optimal stripe size and going higher will
decrease performance. But the maximum stripe size the array controller
offers you is usually well below the point where performance starts to
decrease again.

Unfortunately the stripe size is often not tested when sites test
array controllers. But as you can see from a thorough test by Anantech
the stripe size has a significant impact on performance.
http://www.anandtech.com/storage/showdoc.html?i=1491&p=18

Yeah, right.

I'm sorry that you didn't feel the need to think abou my advice before
you ignored it.

I hope you will now understand from my post (or from the numerous
articles about this that you can find if you google with the terms
raid and stripe size) that you were wrong.
Too ridiculous to even comment on.

I understand why it might seem ridiculous to someone who doesn't have
indepth knowledge of raid.

But you can see clear examples of it here:
http://www6.tomshardware.com/storage/20011023/raid-05.html

Would you care to comment on those results, with three different raid
controllers (cheap ones even), that you didn't think were possible?
But it nevertheless is a limiting factor.

No. It is something which CAN be a limiting factor depending on the
configuration you have.

It's something you should be aware of, but it's not as big a limiting
factor as you make it.
Oh good.


Nope, what is true on the macro level is also true on the microlevel.
When you do enough random access transfers you will eventually
find it back in the numbers there too.


Often enough.


STR is STR, it is one number, it cannot be "low"(er) or "high"(er).
(There are different STRs per different zones though).

STR is nothing else then sustained transfer rate. You refer to the
theoretical maximum STR.

But that's just nitpicking on names and doesn't add to the discussion.

What is important is the fact that the bandwith needed by the disks is
far below the maximum STR it can achieve.
If you had read it back, yes. But you are not that kind of guy, are you.

If I had read your replies more thoroughly, I should indeed have
realised that you don't have indepth knowledge of how raid works, and
that you wouldn't understand my first post aimed at someone with more
experience with raid.
It's not, nor did I ever say that it was, so, speaking of false assumptions,
I really don't know where you got that from.

You are contradicting yourself.
If STR is not all important for disk performance, it can't be all
important for arrays either.
Assuming U160, presumably.

Try to think before you type the next time.

We are talking here about the rate at which a harddisk can read bytes
from a platter. This has NOTHING to do with the interface.
Right, and when you now have 5 of those drives in RAID0 it could
theoretically be able to transfer that same amount of data in 1 ms
in stead of 5, except that the SCSI U160 channel can't transfer
that data (200 MB/s) in 1 ms.

Nice try to confuse the situation, but I won't fall into that trap.
As was perfectly clear I was talking about 1 drive and not an array.

If you use 5 drives that each transfer 40kB and the array does nothing
else at all, than just transferring that single file, then it will
indeed saturate the scsi bus for a short amount of time.

But now comes the part were you go wrong:
We are talking about arrays that do more then just transferring a
single file. We are talking about arrays in servers that are busy.
with all kinds of different tasks.

Again it is the same as the Raid1 scenario.

When you read a single file a Raid1 array is just as fast as a single
harddisk. But when you read lots of files, a Raid1 array can be nearly
twice as fast as a single disk.

This happens with Raid0 and Raid5 as well.
You have to look at more then just the STR. I point again to the
stripe size benchmarks.

As you can clearly see the larger stripe sizes are faster, even though
your example of the single file would predict that it would be slower.

Again this why I constantly tell you that you have to look at the
configuration in which you want to use raid.

Your examples work fine for videoediting were people are transferring
single large files. But they don't work for (database) servers where
you have lots of random read/write actions simultaneously.
So although the 200kb could be transferred theoretically in 9 ms
from the start of the command, giving an average transfer rate of
22 MB/s, which is way below U160's bandwidth as you put it, it is
actually transferred in around 9.5 ms, averaging at 21 MB/s instead.

So, your reasoning about used and available bandwidth is flawed.
Like I said before, you don't get it.

Again you don't get it, that there is a large difference between using
raid for videoediting, or for large servers.

I have never denied that large transferrates aren't important for
videoediting scenarios.

You are referring to situations that apply to the videoediting
scenario and have nothing in common with servers.
What you have done is proof that you don't want 8 disks on a single
scsi channel when you do videoediting. You are right there. But I have
NEVER suggested otherwise.
But since this sort of usage doesn't happen on servers, you have not
given proof that you don't want that on servers.
STR is measured by pure sequential access.
When access is not sequential, you obviously can't speak of STR.

Whatever you want to call it STR or maximum STR does not matter here.

You just use that as a tactic to avoid the real issue, that you didn't
answer.
And with lots of other applications on non-fragmented volumes.

You are forgetting that we are not talking about desktops here.
This discussion is about databases! It does not apply to databases!

Really? What exactly did you think that
"That is just other words for difficulty to read higher densities."
line was all about?

Oh god. You are really utterly stupid.

WHAT DID YOU THINK MY POST BEFORE THAT WAS ABOUT?

I started about difficulty to read high density as high rpm values.
Then you reply to that with: "that is just ...." which doesn't add
anything at all!
And then you start acting silly.

Is this really the level of discussion that you like to have? Then
you'd better find someone else, because I'm not planning on lowering
myself to your level.

Then another remark before I let you live on your fantasy world again:

You don't give any proof of your claims. I have given you several
references that confirm my claims and reasoning. Also I have hands on
experience with the kind of arrays we are discussing. You can tell me
a thousand times that my array can't perform well, but I can see every
day that it performs great.

If you want to be taken seriously by people I strongly suggest you
learn how to substantiate your claims.

BTW don't bother replying to this because I won't read it.
I've gotten tired of discussing with people that just make empty
claims. The only reason I have replied so far is so that the OP gets
the correct information, and has resources on internet where he can
verify it. I don't care anymore what you think about it.

Marc
 
On Wed, 17 Dec 2003 14:34:23 GMT, "Rita_A_ Berkowitz"

Like you, I made reasoned attempts to provide facts to the
multi-personalities of Rod (Corncob) Speed and have met nothing but utter
nonsense. As time goes on and you read this group more, you will shortly
see the degradation of any logical or useful information emanating from
him/them. Anyways, good luck and enjoy the group.

Time went on for one day, and now I understand perfectly what you
mean. I have just come to the same conclusion.

Marc
 
Everyone else just ignores that rabid bigot.

Its only those new to this group that bother it what bigot at all.

Those wake up quick enough if they have a clue at all.

Obvious lie. This rabid bigot has never ever done anything like that.

Thats what all rabid one eyed bigots always claim.
Time went on for one day, and now I understand perfectly
what you mean. I have just come to the same conclusion.

Pity its for the same reason, you got done like a dinner, just like that
pathetic rabid bigot did, and are desperately licking your wounds now.

Some pathetic creatures that have had their noses rubbed
in the worst of their terminal stupiditys, just like you did,
are still desperately licking their wounds for YEARS after.

Bet you will be too.

Quite a few like Mark do work out whats going on, even
if the likes of you and the rabid bigot never manage it.
 
On Wed, 17 Dec 2003 14:34:23 GMT, "Rita_A_ Berkowitz"



Time went on for one day, and now I understand perfectly what you
mean. I have just come to the same conclusion.

Marc



Marc, please don't give up on Rod (Corncob) Speed so quickly. Believe it or
not he has an extremely high entertainment value. Just grab a beer and do a
Google search for some his famous priceless one-liners. Don't get me wrong,
Rod is a poor pathetic soul that is lonely and crying out for attention.
This is his only source of human contact, unfortunately, even here; he
hasn't a clue how to interact with his fellow man. That said, please be
gentle with him. Rod being our resident idiot, I wouldn't want you to
bruise his ego.



Rita
 
On Thu, 18 Dec 2003 20:04:53 -0500, "Rita_A_Berkowitz"
Marc, please don't give up on Rod (Corncob) Speed so quickly. Believe it or
not he has an extremely high entertainment value.

Yup. But I'm not going to waste lots of time with well reasoned posts
with supporting evidence when he isn't going to listen anyway.

Now, I plan to look at the entertainment value without wasting my time

That's why I didn't throw him into my kill filter. I'm perfectly able
to ignore further reactions to my posts without a kill filter :-)
Just grab a beer and do a
Google search for some his famous priceless one-liners. Don't get me wrong,
Rod is a poor pathetic soul that is lonely and crying out for attention.
This is his only source of human contact, unfortunately, even here; he
hasn't a clue how to interact with his fellow man. That said, please be
gentle with him. Rod being our resident idiot,

Actually I wouldn't call him the resident idiot. (that would be
Folkert)

It's really a pity, that the knowledge that Rod definately does have
is mostly lost to this ng, because of his complete inability to
interact with others.
I wouldn't want you to
bruise his ego.

*gasp* Is that even possible, you think?

;-)

Marc
 
Some rabid bigot claiming to be
Rod and Folkert are one in the same idiot.

Pathetic, really. So stupid that it cant even manage
the simplest stuff with newsgroup post headers.
 
Back
Top