Re: Async I/O - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: Async I/O
Date
Msg-id 199804140240.WAA09526@candle.pha.pa.us
Whole thread Raw
List 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 by date:

Previous
From: Yu HyungSic
Date:
Subject: (no subject)
Next
From: "Vadim B. Mikheev"
Date:
Subject: Re: [HACKERS] subselect and optimizer