|
|
 | | From: | Benjamin Wragg | | Subject: | Disk configuration | | Date: | Wed, 19 Jan 2005 09:03:44 +1100 |
|
|
 | This is a multi-part message in MIME format.
------=_NextPart_000_0043_01C4FE05.C7780640 Content-Type: text/plain; charset="windows-1250" Content-Transfer-Encoding: 7bit
I just wanted to bounce off the list the best way to configure disks for a postgresql server. My gut feeling is as follows: Keep the OS and postgresql install on seperate disks to the postgresql /data directory? Is a single hard disk drive acceptable for the OS and postgresql program, or will this create a bottle neck? Would a multi disk array be more appropriate? Cheers, Benjamin Wragg
-- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.300 / Virus Database: 265.7.0 - Release Date: 17/01/2005
------=_NextPart_000_0043_01C4FE05.C7780640 Content-Type: text/html; charset="windows-1250" Content-Transfer-Encoding: quoted-printable
charset=3Dwindows-1250">
I just = wanted to=20 bounce off the list the best way to configure disks for a postgresql = server.=20 size=3D2>My gut=20 feeling is as follows:
size=3D2>
Keep = the OS and=20 postgresql install on seperate disks to the postgresql /data=20 directory?
Is a = single hard=20 disk drive acceptable for the OS and postgresql program, or will this = create a=20 bottle neck? Would a multi disk array be more = appropriate?
size=3D2>
size=3D2>Cheers,
size=3D2>
size=3D2>Benjamin=20 Wragg
--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.7.0 - Release Date: = 17/01/2005
------=_NextPart_000_0043_01C4FE05.C7780640--
|
|
 | | From: | Alex Turner | | Subject: | Re: Disk configuration | | Date: | Wed, 19 Jan 2005 10:52:35 -0500 |
|
|
 | The primary goal is to reduce the number of seeks a disk or array has to perform. Serial write throughput is much higher than random write throughput. If you are performing very high volume throughput on a server that is doing multiple things, then it maybe advisable to have one partition for OS, one for postgresql binaries, one for xlog and one for table data (or multiple if you are PG8.0). This is the ultimate configuration, but most people don't require this level of seperation. If you do need this level of seperation, also bare in mind that table data writes are more likely to be random writes so you want an array that can sustain a high levels of IO/sec, so RAID 10 with 6 or more drives is ideal. If you want fault tolerance, then RAID 1 for OS and postgresql binaries is a minimum, and I believe that xlog can also go on a RAID 1 unless you need more MB/sec. Ultimately you will need to benchmark any configuration you build in order to determine if it's successfull and meets your needs. This of course sucks, because you don't want to buy too much because it's a waste of $$s.
What I can tell you is my own experience which is a database running with xlog, software and OS on a RAID 1, with Data partition running on 3 disk RAID 5 with a database of about 3 million rows total gets an insert speed of about 200 rows/sec on an average size table using a compaq proliant ML370 Dual Pentium 933 w/2G RAM. Most of the DB is in RAM, so read times are very good with most queries returning sub second.
Hope this helps at least a little
Alex Turner NetEconomist
On Wed, 19 Jan 2005 09:03:44 +1100, Benjamin Wragg wrote: > > I just wanted to bounce off the list the best way to configure disks for a > postgresql server. My gut feeling is as follows: > > Keep the OS and postgresql install on seperate disks to the postgresql /data > directory? > Is a single hard disk drive acceptable for the OS and postgresql program, or > will this create a bottle neck? Would a multi disk array be more > appropriate? > > Cheers, > > Benjamin Wragg > > > -- > No virus found in this outgoing message. > Checked by AVG Anti-Virus. > Version: 7.0.300 / Virus Database: 265.7.0 - Release Date: 17/01/2005 >
---------------------------(end of broadcast)--------------------------- TIP 4: Don't 'kill -9' the postmaster
|
|
 | | From: | Alex Turner | | Subject: | Re: Disk configuration | | Date: | Thu, 20 Jan 2005 11:05:57 -0500 |
|
|
 | I have never seen benchmarks for RAID 0+1. Very few people use it because it's not very fault tolerant, so I couldn't answer for sure. I would imagine that RAID 0+1 could acheive better read throughput because you could, in theory, read from each half of the mirror independantly. Write would be the same I would imagine because you still have to write all data to all drives. Thats my best guess.
Alex Turner NetEconomist
On Thu, 20 Jan 2005 11:55:37 +1100, Benjamin Wragg wrote: > > Thanks. That sorts out all my questions regarding disk configuration. One > more regarding RAID. Is RAID 1+0 and 0+1 essentially the same at a > performance level? > > Thanks, > > Benjamin > -----Original Message----- > From: pgsql-performance-owner@postgresql.org > [mailto:pgsql-performance-owner@postgresql.org] On Behalf Of Alex Turner > Sent: Thursday, 20 January 2005 2:53 AM > To: Benjamin Wragg > Cc: pgsql-performance@postgresql.org > Subject: Re: [PERFORM] Disk configuration > > The primary goal is to reduce the number of seeks a disk or array has to > perform. Serial write throughput is much higher than random write > throughput. If you are performing very high volume throughput on a server > that is doing multiple things, then it maybe advisable to have one partition > for OS, one for postgresql binaries, one for xlog and one for table data (or > multiple if you are PG8.0). This is the ultimate configuration, but most > people don't require this level of seperation. If you do need this level of > seperation, also bare in mind that table data writes are more likely to be > random writes so you want an array that can sustain a high levels of IO/sec, > so RAID 10 with 6 or more drives is ideal. If you want fault tolerance, > then RAID 1 for OS and postgresql binaries is a minimum, and I believe that > xlog can also go on a RAID 1 unless you need more MB/sec. Ultimately you > will need to benchmark any configuration you build in order to determine if > it's successfull and meets your needs. This of course sucks, because you > don't want to buy too much because it's a waste of $$s. > > What I can tell you is my own experience which is a database running with > xlog, software and OS on a RAID 1, with Data partition running on > 3 disk RAID 5 with a database of about 3 million rows total gets an insert > speed of about 200 rows/sec on an average size table using a compaq proliant > ML370 Dual Pentium 933 w/2G RAM. Most of the DB is in RAM, so read times > are very good with most queries returning sub second. > > Hope this helps at least a little > > Alex Turner > NetEconomist > > On Wed, 19 Jan 2005 09:03:44 +1100, Benjamin Wragg > wrote: > > > > I just wanted to bounce off the list the best way to configure disks > > for a postgresql server. My gut feeling is as follows: > > > > Keep the OS and postgresql install on seperate disks to the postgresql > > /data directory? > > Is a single hard disk drive acceptable for the OS and postgresql > > program, or will this create a bottle neck? Would a multi disk array > > be more appropriate? > > > > Cheers, > > > > Benjamin Wragg > > > > > > -- > > No virus found in this outgoing message. > > Checked by AVG Anti-Virus. > > Version: 7.0.300 / Virus Database: 265.7.0 - Release Date: 17/01/2005 > > > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Don't 'kill -9' the postmaster > > -- > No virus found in this incoming message. > Checked by AVG Anti-Virus. > Version: 7.0.300 / Virus Database: 265.7.0 - Release Date: 17/01/2005 > > > -- > No virus found in this outgoing message. > Checked by AVG Anti-Virus. > Version: 7.0.300 / Virus Database: 265.7.1 - Release Date: 19/01/2005 > >
---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings
|
|
 | | From: | Benjamin Wragg | | Subject: | Re: Disk configuration | | Date: | Thu, 20 Jan 2005 11:55:37 +1100 |
|
|
 | Thanks. That sorts out all my questions regarding disk configuration. One more regarding RAID. Is RAID 1+0 and 0+1 essentially the same at a performance level?
Thanks,
Benjamin -----Original Message----- From: pgsql-performance-owner@postgresql.org [mailto:pgsql-performance-owner@postgresql.org] On Behalf Of Alex Turner Sent: Thursday, 20 January 2005 2:53 AM To: Benjamin Wragg Cc: pgsql-performance@postgresql.org Subject: Re: [PERFORM] Disk configuration
The primary goal is to reduce the number of seeks a disk or array has to perform. Serial write throughput is much higher than random write throughput. If you are performing very high volume throughput on a server that is doing multiple things, then it maybe advisable to have one partition for OS, one for postgresql binaries, one for xlog and one for table data (or multiple if you are PG8.0). This is the ultimate configuration, but most people don't require this level of seperation. If you do need this level of seperation, also bare in mind that table data writes are more likely to be random writes so you want an array that can sustain a high levels of IO/sec, so RAID 10 with 6 or more drives is ideal. If you want fault tolerance, then RAID 1 for OS and postgresql binaries is a minimum, and I believe that xlog can also go on a RAID 1 unless you need more MB/sec. Ultimately you will need to benchmark any configuration you build in order to determine if it's successfull and meets your needs. This of course sucks, because you don't want to buy too much because it's a waste of $$s.
What I can tell you is my own experience which is a database running with xlog, software and OS on a RAID 1, with Data partition running on 3 disk RAID 5 with a database of about 3 million rows total gets an insert speed of about 200 rows/sec on an average size table using a compaq proliant ML370 Dual Pentium 933 w/2G RAM. Most of the DB is in RAM, so read times are very good with most queries returning sub second.
Hope this helps at least a little
Alex Turner NetEconomist
On Wed, 19 Jan 2005 09:03:44 +1100, Benjamin Wragg wrote: > > I just wanted to bounce off the list the best way to configure disks > for a postgresql server. My gut feeling is as follows: > > Keep the OS and postgresql install on seperate disks to the postgresql > /data directory? > Is a single hard disk drive acceptable for the OS and postgresql > program, or will this create a bottle neck? Would a multi disk array > be more appropriate? > > Cheers, > > Benjamin Wragg > > > -- > No virus found in this outgoing message. > Checked by AVG Anti-Virus. > Version: 7.0.300 / Virus Database: 265.7.0 - Release Date: 17/01/2005 >
---------------------------(end of broadcast)--------------------------- TIP 4: Don't 'kill -9' the postmaster
-- No virus found in this incoming message. Checked by AVG Anti-Virus. Version: 7.0.300 / Virus Database: 265.7.0 - Release Date: 17/01/2005
-- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.300 / Virus Database: 265.7.1 - Release Date: 19/01/2005
---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings
|
|
 | | From: | Josh Berkus | | Subject: | Re: Disk configuration | | Date: | Tue, 18 Jan 2005 14:49:21 -0800 |
|
|
 | Benjamin,
> I just wanted to bounce off the list the best way to configure disks for a > postgresql server. My gut feeling is as follows: > > Keep the OS and postgresql install on seperate disks to the postgresql > /data directory? > Is a single hard disk drive acceptable for the OS and postgresql program, > or will this create a bottle neck? Would a multi disk array be more > appropriate?
All of this depends heavily on your database size, read/write balance, and transaction volume. For example, the PostgreSQL Press list runs fine on my single-drive IDE laptop (1 user, < 2mb database) but I wouldn't run the DBT2 (high-volume OLTP test) on it.
More info?
-- --Josh
Josh Berkus Aglio Database Solutions San Francisco
---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend
|
|
|