Re: New Linux xfs/reiser file systems - Mailing list pgsql-hackers

From mlw
Subject Re: New Linux xfs/reiser file systems
Date
Msg-id 3AF14A5D.3CC8C031@mohawksoft.com
Whole thread Raw
In response to New Linux xfs/reiser file systems  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: Re: New Linux xfs/reiser file systems  (Matthew Kirkwood <matthew@hairy.beasts.org>)
Re: New Linux xfs/reiser file systems  (Bruce Momjian <pgman@candle.pha.pa.us>)
Re: Re: New Linux xfs/reiser file systems  (Gavin Sherry <swm@linuxworld.com.au>)
RE: Re: New Linux xfs/reiser file systems  ("Christopher Kings-Lynne" <chriskl@familyhealth.com.au>)
List pgsql-hackers
Bruce Momjian wrote:
> 
> I was talking to a Linux user yesterday, and he said that performance
> using the xfs file system is pretty bad.  He believes it has to do with
> the fact that fsync() on log-based file systems requires more writes.
> 
> With a standard BSD/ext2 file system, WAL writes can stay on the same
> cylinder to perform fsync.  Is that true of log-based file systems?
> 
> I know xfs and reiser are both log based.  Do we need to be concerned
> about PostgreSQL performance on these file systems?  I use BSD FFS with
> soft updates here, so it doesn't affect me.

I did see poor performance on reiserfs, I have not as yet ventured into using
xfs.

I occurs to me that journalizing file systems will almost always be slower on
an application such as postgres. The journalizing file system is trying to
maintain data integrity for an application which is also trying to maintain
data integrity. There will always be extra work involved.

This behavior raises the question about file system usage in Postgres. Many
databases, such as Oracle, create table space files and operate directly on the
raw blocks, bypassing the file system altogether.

On one hand, Postgres is easy to use and maintain because it cooperates with
the native file system, on the other hand it incurs the overhead of whatever
silliness the file system wants to do. 

I would bet it is a huge amount of work to use a "table space" system and no
one wants that. lol. However, it should be noted that a bit more control over
database layout would make some great performance improvements.

The ability to put indexes on a separate volume from data.
The ability to put different tables on different volumes.
And so on.

In the short term, I think poor performance on a journalizing file system is to
be expected, unless there is an IOCTL to tell the FS to leave the files alone
(and postgres calls it). A Linux HOWTO which informs people that certain file
systems will have performance issues and why should handle the problem.

Perhaps we can convince the Linux community to create a "dbfs" which is a
stripped down simple no nonsense file system designed for applications like
databases?

-- 
I'm not offering myself as an example; every life evolves by its own laws.
------------------------
http://www.mohawksoft.com


pgsql-hackers by date:

Previous
From: "Oliver Elphick"
Date:
Subject: Unix sockets connection authentication - patch
Next
From: Matthew Kirkwood
Date:
Subject: Re: Re: New Linux xfs/reiser file systems