Re: questions about PG update performance

Поиск
Список
Период
Сортировка
От Amit Kapila
Тема Re: questions about PG update performance
Дата
Msg-id CAA4eK1Jy2xDpgKBQJbYZavfOuA_6YuFmShkEv-0AJ2taxhLXpw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: questions about PG update performance  (Ashutosh Bapat <ashutosh.bapat@enterprisedb.com>)
Ответы Re: questions about PG update performance  (Ashutosh Bapat <ashutosh.bapat@enterprisedb.com>)
Список pgsql-hackers
On Mon, Oct 26, 2015 at 12:07 PM, Ashutosh Bapat <ashutosh.bapat@enterprisedb.com> wrote:


On Mon, Oct 26, 2015 at 10:19 AM, Amit Kapila <amit.kapila16@gmail.com> wrote:

I think Oracle just copies the changed part of old row to rollback segment.
Also in Redo logs, it just writes the changed column value (both old and
new).  So for the case we are discussing in this thread (one changed
column out of 200 columns), Oracle will just write the old value of that
column in Redo and then in rollback segment, and write the new value
in Redo and then do the in-place update in heap row.


In that case, readers would pay the penalty for constructing the row.

Readers that have snapshot older than update-transaction needs to
pay such cost, otherwise all newer transactions can directly read from
page.  Also not all old-transaction readers have to pay any such cost.

Not only that, such a design has an advantage that the bloat due to
older data won't be there.


With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com

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

Предыдущее
От: Geoff Winkless
Дата:
Сообщение: Re: About BoringSSL, an OpenSSL fork
Следующее
От: Ashutosh Bapat
Дата:
Сообщение: Re: questions about PG update performance