On 7/27/22 10:46, Tom Lane wrote:
Joe Conway <mail@xxxxxxxxxxxxx> writes:
Then (completely untested) I *think* you could create the "partition"
initially as a free standing unlogged table, load it, index it, switch
to logged, and then attach it to the partitioned table.
I'm still of the opinion that this plan to load the data unlogged
and switch to logged later is a loser. Sooner or later you have
got to write the data to WAL, and this approach doesn't eliminate
that cost. What it does do is create one whole extra cycle of
writing the data to disk and reading it back. I don't think
it's an oversight that no such thing is suggested in our standard
tips for bulk-loading data:
Yeah, agreed. I was mostly responding to the OP desire to use unlogged
and not taking a stance on that.
https://www.postgresql.org/docs/current/populate.html
What perhaps *is* an oversight is that we don't suggest
use of COPY FREEZE there. AFAIK that doesn't reduce the initial
data loading cost directly, but it would save overhead later.
Oh, yes, very good point.
--
Joe Conway
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com