Re: PostgreSQL Disk Usage and Page Size
От | Stephen Robert Norris |
---|---|
Тема | Re: PostgreSQL Disk Usage and Page Size |
Дата | |
Msg-id | 1079568455.12785.3.camel@ws12.commsecure.com.au обсуждение исходный текст |
Ответ на | PostgreSQL Disk Usage and Page Size (Seum-Lim Gan <slgan@lucent.com>) |
Список | pgsql-performance |
On Thu, 2004-03-18 at 10:52, Seum-Lim Gan wrote: > Hi all, > > we have a question about the pagesize in PostgreSQL: > > Using different pagesizes: 4K, 8K, 16K, 32K, when we store different > record sizes > such as in the following example: > > CREATE TABLE TEST_1 ( > F1 VARCHAR(10), > F2 VARCHAR(5) ); > > CREATE TABLE TEST_2 ( > F1 VARCHAR(10), > F2 VARCHAR(10) ); > > we're consistently having the following storage behavior: > > 60 records / 4k_page > 120 records / 8k_page > 240 records / 16k_page > 480 records / 32k_page. > > So it seems that it doesn't matter whether the record size is > 15 bytes or 20 bytes, there's maximum number of records per page > as shown above. > > Any clues if there's any parameter or bug causing that? > > Gan (for Amgad) Well, you're size counts are completely wrong, for starters. Each varchar uses 4 bytes + length of the string, so that's 8 more bytes per row. Then you may have an OID as well for another 4 bytes. I'd also not be surprised if the length of the string is rounded up to the nearest word (although I don't know if it is), and I'd be amazed if the length of the record isn't rounded to some boundary too. There's a handy page in the documentation that talks about how to know how big rows are, I suggest you start there... Stephen
Вложения
В списке pgsql-performance по дате отправления: