Re: PostgreSQL on RAM Disk / tmpfs
От | Thomas F. O'Connell |
---|---|
Тема | Re: PostgreSQL on RAM Disk / tmpfs |
Дата | |
Msg-id | 3FE317F3-88BE-429A-9AD0-8DE11FD3945D@sitening.com обсуждение исходный текст |
Ответ на | Re: PostgreSQL on RAM Disk / tmpfs ("Merlin Moncure" <mmoncure@gmail.com>) |
Ответы |
Re: PostgreSQL on RAM Disk / tmpfs
|
Список | pgsql-general |
On Aug 3, 2006, at 1:26 PM, Merlin Moncure wrote: > On 8/2/06, Thomas F. O'Connell <tfo@sitening.com> wrote: >> I'm working on a postgres instance (8.1.2 running on Solaris 10) >> where the >> data directory (including WAL) is being mounted on tmpfs. Based on >> this, and >> with knowledge that fsync is disabled, I'm operating under the >> assumption >> that recoverability is not a precondition for optimized >> performance. With >> that assumption, I have several questions, some performance- >> related, others >> internals-related: > > to be honest, I think the best approach is to simply write to the > traditional filesystem and leave fsync off. writing to a ramdisk > might be a bit faster, but you deprive the server memory from doing > other things like caching and sorting. this might be more true for > some o/s than others though. i'm just curious, what led you to do > ramdisk implementation (most people who ask questions about ramdisk > have no idea what they are talking about, although you seem to). That was how I found it. :) I think, though, that it was the result of benchmarking a variety of on-disk RAID configurations with an eye toward ever increasing write throughput. >> 4. Considering that recoverability is not a precondition, is there >> an easy >> patch that could be applied to the 8.1.x series from 8.1.4 on that >> would >> allow disabling full_page_writes? For a database in RAM with high >> write >> volume, is this setting even likely to make a difference? > > I would suggest pulling 8.2dev (shortly beta) if you want this and > experiment. it is perfectly stable. looking at the todo list, 8.2 > also gets the multiple insert syntax, which is nice. > > if have super high write volumes, consider writing your insert call in > C. prepare your statement, and use the parameterized > version....ExecPrepared(...). Can you point to a good example of this anywhere in the docs? I don't see ExecPrepared anywhere in the core documentation. -- Thomas F. O'Connell Sitening, LLC http://www.sitening.com/ 3004B Poston Avenue Nashville, TN 37203-1314 615-469-5150 x802 615-469-5151 (fax)
В списке pgsql-general по дате отправления: