Re: contrib/pg_stat_statements

Поиск
Список
Период
Сортировка
От Decibel!
Тема Re: contrib/pg_stat_statements
Дата
Msg-id 9D4A5FAA-F9C0-4785-855E-F407626F1E82@decibel.org
обсуждение исходный текст
Ответ на Re: contrib/pg_stat_statements  ("Vladimir Sitnikov" <sitnikov.vladimir@gmail.com>)
Список pgsql-hackers
On Oct 17, 2008, at 4:30 AM, Vladimir Sitnikov wrote:
> Decibel! <decibel@decibel.org> wrote:
>
> I had tried to use a normal table for store stats information,
> but several acrobatic hacks are needed to keep performance.
> I guess it is not really required to synchronize the stats into  
> some physical table immediately.
> I would suggest keeping all the data in memory, and having a job  
> that periodically dumps snapshots into physical tables (with WAL etc).
> In that case one would be able to compute database workload as a  
> difference between two given snapshots. From my point of view, it  
> does not look like a performance killer to have snapshots every 15  
> minutes. It does not look too bad to get the statistics of last 15  
> minutes lost in case of database crash either.

Yeah, that's exactly what I had in mind. I agree that trying to write  
to a real table for every counter update would be insane.

My thought was to treat the shared memory area as a buffer of stats  
counters. When you go to increment a counter, if it's not in the  
buffer then you'd read it out of the table, stick it in the buffer  
and increment it. As items age, they'd get pushed out of the buffer.
-- 
Decibel!, aka Jim C. Nasby, Database Architect  decibel@decibel.org
Give your computer some brain candy! www.distributed.net Team #1828



В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: SSL cleanups/hostname verification
Следующее
От: Mike Aubury
Дата:
Сообщение: Re: automatic parser generation for ecpg