[AccessD] Needs analysis

Drew Wutka DWUTKA at Marlow.com
Mon Jun 21 17:05:37 CDT 2010


Hmmm, couple of questions.  But before I begin, please understand that I
work with SQL Server, but nowhere near as in depth as you apparently
are.  So PLEASE correct me if I am wrong, and I would appreciate any
links/info you have to share on it.  I do understand quite a bit about
hardware though, so that's why I am still tossing my two cents in here.

First, you said you split your RAID volume into 2 partitions due to a
Windows limitation... what limitation is that?  FAT 32 is limited to 2
terrabytes, but NTFS can have WAY more than that.  We have several
servers here running Windows 2003, (standard and enterprise mixed) which
have 5+ terrbytes.

Next, I am not saying 'get faster disks'.  LOL, I really am trying to
just be helpful here.  In fact, right now, I'm in process of getting two
new servers for our systems, so I know how expensive things can be! LOL.
I am specifically telling you to stay away from RAID 6 (and RAID 5).
Either go with RAID 0 (with no redundancy) or a RAID 10.  I certainly
understand the cost involved, and I'm not trying to say 'tough, do this
or die!' LOL.  I am simply pointing out that while you are looking at
memory and processor specs, factor in a drive set that will compliment
them.

Where I am confused about SQL Server, is that while I know it uses
whatever memory it can take, I didn't think it runs strictly off of
memory, whether you are simply reading or not.  IE, if you access xx
number of records, sure, it would cache what it pulls, but I don't think
it pulls the entire DB into memory from the get go.  That sounds more
like the 'new' dbs that have been talked about, which do run completely
in memory.  

I would assume (and you know what happens when we assume things! LOL),
that if you are truly treating a db as read only, then the disks are
only going to be accessed for new information.  But ANY write backs,
would cause multiple memory <--> disk operations.  Memory is always
going to be faster than disk, so the quicker the disk operations are,
the less bottlenecking you'll face.

So here's a question for you, have you ever thought about splitting the
load between different machines on a gigabit network?

Again, sorry if I seem clunky in my thoughts here, I've perused your
threads about this stuff, but have too much going on, on my own, to keep
too much detail of it in my head.

I have noted many of the performance issues you've mentioned in the
past, and many of them are functionally identical to when a RAID goes
beserk, or can't handle the load.

Drew

-----Original Message-----
From: accessd-bounces at databaseadvisors.com
[mailto:accessd-bounces at databaseadvisors.com] On Behalf Of jwcolby
Sent: Monday, June 21, 2010 1:28 PM
To: Access Developers discussion and problem solving
Subject: Re: [AccessD] Needs analysis

LOL, yep one terabyte, not one gigabyte.

As for 10, I got it.  Span to do the RAID 0, then mirror to do the RAID
1.  So that is 2X.

I went back in and looked at what I actually have.  I have eight 1
terabyte drives.  I use two of 
them Raid 1.  That leaves six which I use to create a single RAID 6
array.  That leaves four 
terabytes of data storage.  Due to the limitations of Windows, I break
that into two 2 terabyte 
volumes.

 > You said you had a budget for upgrading your machine.  John, I'm
serious, when reading and 
writing from a database, your absolute most limiting factor is going to
be drive speed!

Of course this is true.  However there is more to the story.  For
example


Imagine I have a database.  The whole thing is only 500 megs of data
indexes and all.  I have 16 
gigs of ram.  Yes, the slowest thing is the disk but... SQL Server loads
the whole damn thing into 
ram and then executes ten thousand queries pulling this that and the
other, all "instantly".

Next scenario, imagine same server, but the database is 40 gigs.  Now
only a piece can be loaded at 
a time.

You get the point.  At what point does it pay to go to more memory vs
the disk thing?  If I invest 
heavily in memory, now I have the whole thing loaded in memory but I
have 47 potential threads but 
only 3 available cores.  At what point does it pay to invest in a ton of
cores?

Drew, I understand the disk thing, and I know that I absolutely am
hitting an I/O bottleneck. 
However it seems not useful to just say "get faster disks".  I know that
needs to happen but there 
is much much more to this than "more disks".  Understand that these
databases are freakin huge. 
Just reading the data off a raid 0 or 10 will still take a ton of time
if the disks in the raid are 
magnetic.

OTOH I do not write back to these big databases.  During processing they
are literally read-only. 
And much of the time I hit two specific databases, and then write a
"small" (few thousand to few 
million) record order table.  My plan (in the absence of explicit
bottleneck data) is to go get some 
SSDs to hold those two databases, probably two 60 gig SSDs for each
database, raid 0 (120 gig total 
per database).

That effectively does what you are discussing, but just for my two most
frequently used databases. 
After that, providing a processor / memory pipe that can handle the
flood of data will still be a 
requirement.

John W. Colby
www.ColbyConsulting.com
The information contained in this transmission is intended only for the person or entity 
to which it is addressed and may contain II-VI Proprietary and/or II-VI Business 
Sensitive material. If you are not the intended recipient, please contact the sender 
immediately and destroy the material in its entirety, whether electronic or hard copy. 
You are notified that any review, retransmission, copying, disclosure, dissemination, 
or other use of, or taking of any action in reliance upon this information by persons 
or entities other than the intended recipient is prohibited.





More information about the AccessD mailing list