Not the answer you need?
Register and ask your own question!

Please, advice 'Stripe size' and filesystem creation options for OLTP database.

BogdarBogdar EntrantCurrent User Role Beginner

I'm going setup two new OLTP servers with CentOS 6 and Percona 5.5 or 5.6 (not yet decided).
This will be Dell servers with PERC H710 controller.
I have ~3500+ DML/sec and ~14000 SELECT/sec on both.
I will use 6 HDD - SAS 15kRPM 600GB for OS and database. Binary logs on master and backups on slave will have separate drives.
Currently I have 4x300Gb 15kRPM arrays for data. Master server have average IO size ~40 sectors (512bytes) and slave server have average IO size ~60 sectors.
Till this day I thought that optimal stripe size for random IO on OLTP DB server should match avgrq-sz
So according to this, I should use 16 or 32kByte stripe size for master and 32kByte stripe size for slave

But here is bit outdated (PERC5-related) guide from Dell "Optimizing RAID Storage Performance"

Just a quote from there:
In random I/O applications, data seek time is typically the primary factor affecting performance,
and using the largest possible stripe element size helps maximize performance by increasing the odds that a single disk performs the data seek. If a sequential I/O application can guarantee a fixed transfer size, using a stripe size equal to the transfer size helps maximize performance by balancing the workload across each disk and allowing full stripe writes for parity RAID level

For applications with a large queue depth, administrators typically should use a large stripe element size to help ensure that the multiple sequential I/O operations are load balanced. For applications with a small queue depth, matching the stripe size to the transfer size helps provide an appropriate workload balance and can enable full stripe write.

Large stripe element size mean big stripe size. Every time DB will write few pages to disk, my RAID controller will read whole big stripe, modify only small part of big stripe and write it back to disk... Or not? So I need an advice.
And also I need a good advice about paririon alignement - if there any partitoning tool which I can use with option like '--align-to-64k' or at least some way to verify that CentOS installer choose correct partition boundaries ?

Thank you in advance.
Sign In or Register to comment.

MySQL, InnoDB, MariaDB and MongoDB are trademarks of their respective owners.
Copyright ©2005 - 2020 Percona LLC. All rights reserved.