Re: NOLOGGING option, or ?

From: "Luke Lonergan" <llonergan(at)greenplum(dot)com>
To: "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: "Bruce Momjian" <pgman(at)candle(dot)pha(dot)pa(dot)us>, "Alon Goldshuv" <agoldshuv(at)greenplum(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: NOLOGGING option, or ?
Date: 2005-06-02 00:05:29
Message-ID: BEC39B59.6C2B%llonergan@greenplum.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Tom,
>
> ... and instead, define some new behavior that will soon be considered
> broken legacy code itself?

I'll not argue further about whether to have a separate LOAD command.
That's not as important as fixing the performance issues in the data load
path in PostgreSQL to me.

However, I find it compelling that the underlying problem confronting high
performance data loading in the engine is the slow parse code in psql/copy,
etc., and not the WAL or other issues. Next on the list are huge gains from
removing things like repetitive calls to strlen(TZ) in the attribute
conversion code.

> There isn't any demand for changing the semantics of COPY, as far as
> I've noticed. If we can make it faster with the same semantics that's
> great, but I'm not in favor of inventing an alternate that does almost
> the same thing but (eg) breaks backslash handling in the name of speed.

A 540% increase in parsing speed while performing substantially the same
logic is what the patch accomplishes. The patch is now available on
pgsql-patches. In this case the speed did not come from breaking backslash
handling, but rather from using faster processing for escape processing and
delimiter parsing. We *could* recreate identical escape semantics to COPY
at nearly the same speed, but frankly we're puzzled as to why character
sequences with "\" automatically imply escape processing.

We've found that there are many cases where more sophisticated escape
processing options are necessary, including multi-byte delimiters and escape
sequences, and the default use of "\" for escaping breaks many data load
cases.

- Luke

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Mary Edie Meredith 2005-06-02 00:08:14 Re: O_DIRECT for WAL writes
Previous Message Alon Goldshuv 2005-06-01 23:29:30 Re: NOLOGGING option, or ?