Re: Seq scans roadmap

From: Heikki Linnakangas <heikki(at)enterprisedb(dot)com>
To: Luke Lonergan <LLonergan(at)greenplum(dot)com>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Jeff Davis <pgsql(at)j-davis(dot)com>, Simon Riggs <simon(at)enterprisedb(dot)com>
Subject: Re: Seq scans roadmap
Date: 2007-05-08 12:57:27
Message-ID: 464073B7.4070304@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Luke Lonergan wrote:
>> What do you mean with using readahead inside the heapscan?
>> Starting an async read request?
>
> Nope - just reading N buffers ahead for seqscans. Subsequent calls use
> previously read pages. The objective is to issue contiguous reads to
> the OS in sizes greater than the PG page size (which is much smaller
> than what is needed for fast sequential I/O).

Are you filling multiple buffers in the buffer cache with a single
read-call? The OS should be doing readahead for us anyway, so I don't
see how just issuing multiple ReadBuffers one after each other helps.

> Yes, I think the ring buffer strategy should be used when the table size
> is > 1 x bufcache and the ring buffer should be of a fixed size smaller
> than L2 cache (32KB - 128KB seems to work well).

I think we want to let the ring grow larger than that for updating
transactions and vacuums, though, to avoid the WAL flush problem.

--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Martijn van Oosterhout 2007-05-08 13:10:56 Re: Allow use of immutable functions operating on constants with constraint exclusion
Previous Message Luke Lonergan 2007-05-08 12:44:11 Re: Seq scans roadmap