Re: database & table size
От | Stephan Szabo |
---|---|
Тема | Re: database & table size |
Дата | |
Msg-id | 20030624223740.L18602-100000@megazone23.bigpanda.com обсуждение исходный текст |
Ответ на | database & table size ("Anagha Joshi" <ajoshi@nulinkinc.com>) |
Список | pgsql-sql |
On Wed, 25 Jun 2003, Anagha Joshi wrote: > 4. the file '2078989' corresponds to 'cdrrec' file (table) > > $ ls -l 2078989 > -rw------- 1 postgres postgres 2359296 Jun 24 17:18 2078989 > > This means table 'cdrrec' takes approx. 2030.2626953125 KB i.e. approx. > 2MB > > Table is like this: > > test=# \d cdrrec; > Table "cdrrec" > Column | Type | Modifiers > ---------+-----------------------+-------------------------------------- > ---------------- > seqno | integer | not null default > nextval('"cdrrec_seqno_seq"'::text) //4 bytes > timerec | bigint | > //8 bytes > ack | boolean | default 'f'::bool > //1 byte > pos | boolean | default 'f'::bool > //1 byte > ipaddr | character varying(16) | > // 4 + 16 > cdrs | bit varying(524288) | > //64K > Primary key: cdrrec_pkey > > *Sizes are as per documentation. > > Therefore, 1 record is of 65570 bytes i.e. 64.033203125 KB. > > And table contains 1000 records. > > But results are noway closer to '2MB". > > Any idea? The two varyings won't necessarily take up the full size if the actual data is smaller IIRC and large values of cdrs will be compressed and/or stuck into a toast table. You should look for the associated toast table and factor its space in as well (I think reltoastrelid in the pg_class row for cdrrec will give you the appropriate oid to look for).
В списке pgsql-sql по дате отправления: