From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | sid(at)etsy(dot)com |
Cc: | pgsql-performance(at)postgresql(dot)org |
Subject: | Re: How can fixed and variable width columns perform similarly? |
Date: | 2007-04-27 17:12:47 |
Message-ID: | 16453.1177693967@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
"Siddharth Anand" <sid(at)etsy(dot)com> writes:
> My question wasn't phrased clearly. Oracle exhibits a performance
> degradation for very large-sized fields (CLOB types that I equate to
> PostGres' text type) when compared with the performance of field types
> like varchar that handle a max character limit of a few thousand bytes in
> Oracle.
> It sounds like PostGres doesn't exhibit this same difference. I wanted to
> understand how this could be and whether there was a trade-off.
Ah. Well, the answer is that we change behavior dynamically depending
on the size of the particular field value, instead of hard-wiring it to
the declared column type. It sounds like Oracle's CLOB might be doing
about the same thing as an out-of-line "toasted" field value in
Postgres. In PG, text and varchar behave identically except that
varchar(N) adds an insert-time check on the length of the field value
--- but this is just a constraint check and doesn't have any direct
influence on how the value is stored.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Mauro N. Infantino | 2007-04-27 17:38:57 | Very specific server situation |
Previous Message | Dave Dutcher | 2007-04-27 16:40:15 | Re: How can fixed and variable width columns perform similarly? |