Re: [GENERAL] space-effective varchar(255)-like arrangement

Поиск
Список
Период
Сортировка
От Jan Vicherek
Тема Re: [GENERAL] space-effective varchar(255)-like arrangement
Дата
Msg-id Pine.LNX.4.04.9812261417170.11035-100000@ann.ied.com
обсуждение исходный текст
Ответ на Re: [GENERAL] space-effective varchar(255)-like arrangement  (Bruce Momjian <maillist@candle.pha.pa.us>)
Ответы Re: [GENERAL] space-effective varchar(255)-like arrangement
Re: [GENERAL] space-effective varchar(255)-like arrangement
Список pgsql-general

  Hmm,

On Sat, 26 Dec 1998, Bruce Momjian wrote:

> >   The main table might look like :
> > create table file (
> >         name    varchar(255),   -- file : name; tape : name / #; tapedata : #
 ...
> >         mjmn    int2            -- if device, major / minor #
> > );
> >
> >   However, the first line "name    varchar(255)" will waste a lot of
> > space, since only about %0.02 files will be over 200 chars, %0.1 over 100,
> > %0.2 over 64 and %1.6 over 32.
>
> See the FAQ under character types.  varcahr() does not store the max
> space, only used space.

   hmm, thus if one block has 8192 bytes, and if there is 9-byte overhead
for each row, then I can store 390 rows in one block if, on average,
"names" are 10 chars in length ? echo $[ 8192 / ( 9 + 10 + 2 ) ] # = 390

   If each record has variable length, pg has no way of calculating where
is start of next record, other than going through the block and summing up
lengths of varchars to determine where does next record begin, right ?
(above I use word "record" and "row" interchangeably).

    Thanx a bunch,

        Jan



 -- Gospel of Jesus is the saving power of God for all who believe --
                ## To some, nothing is impossible. ##
                   http://Vicherek.Waterloo.on.ca/


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

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: [GENERAL] space-effective varchar(255)-like arrangement
Следующее
От: Jan Vicherek
Дата:
Сообщение: Re: [GENERAL] space-effective varchar(255)-like arrangement