Re: Async I/O
От | Bruce Momjian |
---|---|
Тема | Re: Async I/O |
Дата | |
Msg-id | 199804140240.WAA09526@candle.pha.pa.us обсуждение исходный текст |
Список | pgsql-hackers |
> I'm sure you've probably thought about this (and discarded it for > a variety of reasons), but here it goes anyway: > > Have some daemon ("postmaster" itself, perhaps) service requests for > pages asynchronously. For example, have each "postgres" client request > the pages from "postmaster" and continue running; "postmaster" could > service the request, map the resulting pages into the shared segment, and > notify the appropriate "postgres" client (either through the socket > or some other way) asynchronously. The "postgres" client could then > be checking the socket with a non-blocking select whenever it wanted to. > (Or you could notify the client with a signal telling it that the request > has been serviced and it can go and get the pages.) > > It's just a suggestion. Good luck and congratulations for the excellent > work you've done with postgresql. > > -Ted. > > p.s. I've got a table that's 77 MB (340,000 records), with six indexes on > it totaling another 66 MB. It does pretty well, actually. Above is a very good review of a platform-independent way for us to do async read-aheads, particularly for heap reads from indexes. I think it deserves consideration as a good way to perform what we need done. Shared memory certainly gives us a way to communicate between these processes. -- Bruce Momjian | 830 Blythe Avenue maillist@candle.pha.pa.us | Drexel Hill, Pennsylvania 19026 + If your life is a hard drive, | (610) 353-9879(w) + Christ can be your backup. | (610) 853-3000(h)
В списке pgsql-hackers по дате отправления: