Announcement

Collapse
No announcement yet.

CPU I/O Best Practices Question

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • CPU I/O Best Practices Question

    I'm familiar with this hardware but I was hoping to ask some DBs/Devs for some real world experience to shed some light on these...Thanks in advance!

    1. Why use an AMD vs an Intel processor for certain applications and solutions what are the advantages in a VMWare world vs a physical server environment

    2. Why use Dual Core and what does that mean in different environments

    3. Raid Configurations Why use RAID 1 for the OS and why how/why would you create RAID sets for SQL or other high IO applications. What are best practices

  • #2
    Re: CPU I/O Best Practices Question

    Is this for a particular DBMS or in general?

    I cant answer AMD vs Intel, but for the others:
    Dual core is the poor mans dual processor -- two separate cores doing different tasks.

    RAID levels provide either improved performance or fault tolerance:
    RAID 0 (striped) reads from/writes to two disks simultaneously for faster disk access but if one drive fails, all data is lost

    RAID 1 (mirrored) writes two copies of the data to 2 identical disks. It can read from both simultaneously so read performance is better, write is slightly slower but if a drive fails no data is lost. This makes it a good thing for the OS

    RAID 5 (striped with parity) writes to 3 or more drives and keeps additional information to cope with one drive failing. The striping improves performance, the parity gives fault tolerance.

    TO create RAID sets, you can use hardware RAID controllers (RAID 0 or 1 on cheap motherboards, RAID 5 on special controller cards) or use Windows Server which has all three types. If you use server, you will have a performance loss compared with hardware RAID.

    For databases such as SQL server, a lot depends on whether you are wanting to mainly read data, write data or both. For best read performance, consider RAID 1. For best write or general overall performance, use RAID 5. Avoid RAID 0 ("Uh oh" like the plague unless you need fast performance and dont care about losing data if a drive fails. Also, separate transaction logs from the database (two separate RAID arrays) and ideally separate both from the OS. For even better performance, move indexes to separate arrays, separate tables as far as possible and generally add yet more drives!

    Hope this helps a bit
    Tom
    Tom Jones
    MCT, MCSE (2000:Security & 2003), MCSA:Security & Messaging, MCDBA, MCDST, MCITP(EA, EMA, SA, EDA, ES, CS), MCTS, MCP, Sec+
    PhD, MSc, FIAP, MIITT
    IT Trainer / Consultant
    Ossian Ltd
    Scotland

    ** Remember to give credit where credit is due and leave reputation points where appropriate **

    Comment


    • #3
      Re: CPU I/O Best Practices Question

      I've been in the IT field for 10 yrs, and well aware of what RAID 0,1,5 are etc....I'm asking this question because i'm going for a job and i was told these are some of the questions i'm going to be asked and I wanted to get some practical information as to 'why' and under what circumstances you may use these (best practices)

      I know what a dual core cpu is, but under what apps/environments would you require this vs. just a single core etc...

      Again I'm familiar with this stuff enough to have a basic understanding but i wanted to hopefully get more specific detail from some DBs or Devs or someone who does a lot of infrastructure implementations and is required to spec out these types of environments for specific apps etc...

      I hope this explains why i'm asking these questions - thanks in advance!

      Comment


      • #4
        Re: CPU I/O Best Practices Question

        Well these days a desktop / laptop w/out HT (at a minimum) or Dual Core restricts the ability to do a CPU intense operation without it affecting one's next endeavor. I do a lot of CPU intense operations so I used to buy only 2 processor machines in the way back. There came a time when Intel stopped making that economically possible (early P4 days) and then came up with HT, now Dual core. Any serious computer user will benefit from dual core as it is the equivalent of a dual processor machine. Since Cutler et al reinvented VMS as NT, the task scheduling system has always favored a CPU hog and nothing other than an effective 2nd CPU will remedy this. Normal Office users / web servers do not need HT / dual core.

        On to RAID, RAID1 offers fault tolerance as well as (depending on the controller) the ability to read at RAID0 rates. RAID0 isn't really RAID as there is no redundancy. I run it at my home lab for non-essential spindles as it is so much faster. RAID10 (or RAID 0+1) is mirrored and striped (or striped and mirrored) so it should provide all the speed and fault tolerance at 2x the disk. Note this is not always the case as RAID controller performance varies widely. RAID5 gets bad press but a good RAID5 controller can approach RAID10 speeds (assuming a breather from time to time). Most SAN setups are RAID5 and can (at scale) kick arse over local RAID10 because they distribute and cache so well.

        Realize nobody rides for free. Give me any situation and I can find an exception that negates it. I/O is I/O so use your brain and you can easily explain how any situation can work or fail given the duty cycle imposed by the application.

        Basic point though is RAID is good, especially when it saves your butt on a drive failure. Since drives are one of the least reliable pieces of server hardware we have (no burn in by manufacturers -- unlike the good old days), running without RAID is a fools bet.
        Cheers,

        Rick

        ** Remember to give credit where credit is due and leave reputation points sigpic where appropriate **

        2006-2099 R Valstar. This post is offered "as is" for discussion purposes only with no express or implied warranty of any kind including, but not limited to, correctness or fitness for use. Nothing herein shall be construed as advice. Attempting any activity based on information in this post is done at your own risk.

        Comment


        • #5
          Re: CPU I/O Best Practices Question

          Thanks for the reply - What i'm most interested in is the 'why' for the dual core cpu's. Understandably a dual core gives you 2 cores to process thru but what I'm looking for is real life situations that would require you to use this hardware. I dont really need to know what it is, i need to know why you would choose to use specific hardware over the other.

          for example, if i have a SQL cluster that has millions of transactions what is the best practice? probably the dual core with a san attached raid 5 for redundancy - i know thats probably the common setup but 'why' i need to know if i went to a customer site i can just say here is what you need, if they ask me why, i'll need to give an explanation as to why, i cant just say its dual core so you get twice the cpu speeds. what i'm looking for is for someone who regularly does infrastructure installations and 'recommends' setups based on need. anything is possible but someone with sql or dev experience will know the best practice of what they need for optimal use on their app or db for background preformance.
          If i have millions of transactions you require more speed and resources, but say i have a sql that just has minimal interaction such as a sharepoint db. I'm not going to setup a raid 0, with dual core cpu's...is there a best practice for this? Less than 500 users we go with this and this is why, when we have 1000+ users and a heavy load we do this and here i why...I hope this somewhat helps, again i have an idea of what is needed i just wanted different opinions from those that may do this on a more consistant basis....

          Comment


          • #6
            Re: CPU I/O Best Practices Question

            The best source to get detailed info about Intel and AMD processors is at there respective web sites and no where best than that !


            Originally posted by Lyghtnin View Post
            ..I'm asking this question because i'm going for a job and i was told these are some of the questions i'm going to be asked and I wanted to get some practical information as to 'why' and under what circumstances you may use these (best practices)
            All in 1
            Solaris,Linux & Windows admin + networking.

            Comment


            • #7
              Re: CPU I/O Best Practices Question

              Originally posted by Lyghtnin View Post
              ..what i'm looking for is for someone who regularly does infrastructure installations and 'recommends' setups based on need...
              Looks to me like you are interested in becoming conversant in IT Capacity Planning, Performance Management and Performance Engineering enough to pass the interview.

              Google those terms and you'll find a wealth of information. There is no brain dump on these topics. There is a lot of systems engineering discipline that goes in to doing them well.

              If you go out and buy a large software application, many vendors will be able to help provide some sizing metrics based on previous customers. These may exist for Exchange and MS applications too. I'm sure some of the seasoned folks in these forums have spreadsheets to help them size hardware for applications they are very familiar with. Realize these models are usually very simple and often don't predict all that well but they are a good starting point.

              There are so many factors to consider that a blanket "This will require a dual core or XXX processor configuration from manufacturer YYY" without understanding the entire picture will just make you look like an idiot.

              I think you'd be better off reading a bit on these topics and stating in your interview that this is a complex area in which you are very interested and there are no easy answers. I'd take an interest in asking if they have capacity and performance data captured and analyzed for previous hardware sizing endeavors? What does this include? Do they have a lab environment and a budget to allow you to perform some controlled capacity testing? And so on.

              Hope that helps.
              Cheers,

              Rick

              ** Remember to give credit where credit is due and leave reputation points sigpic where appropriate **

              2006-2099 R Valstar. This post is offered "as is" for discussion purposes only with no express or implied warranty of any kind including, but not limited to, correctness or fitness for use. Nothing herein shall be construed as advice. Attempting any activity based on information in this post is done at your own risk.

              Comment

              Working...
              X