Re: Questions on query planner, join types, and work_mem

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: Questions on query planner, join types, and work_mem
Дата
Msg-id 201102010317.p113Hvc07473@momjian.us
обсуждение исходный текст
Ответ на Re: Questions on query planner, join types, and work_mem  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: Questions on query planner, join types, and work_mem  (Bruce Momjian <bruce@momjian.us>)
Список pgsql-performance
Robert Haas wrote:
> On Wed, Aug 11, 2010 at 9:42 PM, Bruce Momjian <bruce@momjian.us> wrote:
> > This confused me. ?If we are assuing the data is in
> > effective_cache_size, why are we adding sequential/random page cost to
> > the query cost routines?
>
> See the comments for index_pages_fetched().  We basically assume that
> all data starts uncached at the beginning of each query - in fact,
> each plan node.  effective_cache_size only measures the chances that
> if we hit the same block again later in the execution of something
> like a nested-loop-with-inner-indexscan, it'll still be in cache.
>
> It's an extremely weak knob, and unless you have tables or indices
> that are larger than RAM, the only mistake you can make is setting it
> too low.

The attached patch documents that there is no assumption that data
remains in the disk cache between queries.  I thought this information
might be helpful.

--
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + It's impossible for everything to be true. +
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index 77cacdd..520170b 100644
*** a/doc/src/sgml/config.sgml
--- b/doc/src/sgml/config.sgml
*************** SET ENABLE_SEQSCAN TO OFF;
*** 2424,2430 ****
          space.  This parameter has no effect on the size of shared
          memory allocated by <productname>PostgreSQL</productname>, nor
          does it reserve kernel disk cache; it is used only for estimation
!         purposes.  The default is 128 megabytes (<literal>128MB</>).
         </para>
        </listitem>
       </varlistentry>
--- 2424,2432 ----
          space.  This parameter has no effect on the size of shared
          memory allocated by <productname>PostgreSQL</productname>, nor
          does it reserve kernel disk cache; it is used only for estimation
!         purposes.  The system also does not assume data remains in
!         the disk cache between queries.  The default is 128 megabytes
!         (<literal>128MB</>).
         </para>
        </listitem>
       </varlistentry>

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

Предыдущее
От: "Benjamin Krajmalnik"
Дата:
Сообщение: Configuration for a new server.
Следующее
От: Greg Smith
Дата:
Сообщение: Re: Configuration for a new server.