Update FAQ for new 24-byte header, down from 28.
This commit is contained in:
parent
1ad2f04bf2
commit
bc6fb5436f
18
doc/FAQ
18
doc/FAQ
@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
Frequently Asked Questions (FAQ) for PostgreSQL
|
Frequently Asked Questions (FAQ) for PostgreSQL
|
||||||
|
|
||||||
Last updated: Tue Feb 6 22:16:17 EST 2007
|
Last updated: Thu Feb 8 22:43:13 EST 2007
|
||||||
|
|
||||||
Current maintainer: Bruce Momjian (bruce@momjian.us)
|
Current maintainer: Bruce Momjian (bruce@momjian.us)
|
||||||
|
|
||||||
@ -547,25 +547,25 @@
|
|||||||
As an example, consider a file of 100,000 lines with an integer and
|
As an example, consider a file of 100,000 lines with an integer and
|
||||||
text description on each line. Suppose the text string avergages
|
text description on each line. Suppose the text string avergages
|
||||||
twenty bytes in length. The flat file would be 2.8 MB. The size of the
|
twenty bytes in length. The flat file would be 2.8 MB. The size of the
|
||||||
PostgreSQL database file containing this data can be estimated as 5.6
|
PostgreSQL database file containing this data can be estimated as 5.2
|
||||||
MB:
|
MB:
|
||||||
28 bytes: each row header (approximate)
|
24 bytes: each row header (approximate)
|
||||||
24 bytes: one int field and one text field
|
24 bytes: one int field and one text field
|
||||||
+ 4 bytes: pointer on page to tuple
|
+ 4 bytes: pointer on page to tuple
|
||||||
----------------------------------------
|
----------------------------------------
|
||||||
56 bytes per row
|
52 bytes per row
|
||||||
|
|
||||||
The data page size in PostgreSQL is 8192 bytes (8 KB), so:
|
The data page size in PostgreSQL is 8192 bytes (8 KB), so:
|
||||||
|
|
||||||
8192 bytes per page
|
8192 bytes per page
|
||||||
------------------- = 146 rows per database page (rounded down)
|
------------------- = 158 rows per database page (rounded down)
|
||||||
56 bytes per row
|
52 bytes per row
|
||||||
|
|
||||||
100000 data rows
|
100000 data rows
|
||||||
-------------------- = 685 database pages (rounded up)
|
-------------------- = 633 database pages (rounded up)
|
||||||
146 rows per page
|
158 rows per page
|
||||||
|
|
||||||
685 database pages * 8192 bytes per page = 5,611,520 bytes (5.6 MB)
|
633 database pages * 8192 bytes per page = 5,185,536 bytes (5.2 MB)
|
||||||
|
|
||||||
Indexes do not require as much overhead, but do contain the data that
|
Indexes do not require as much overhead, but do contain the data that
|
||||||
is being indexed, so they can be large also.
|
is being indexed, so they can be large also.
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
alink="#0000ff">
|
alink="#0000ff">
|
||||||
<H1>Frequently Asked Questions (FAQ) for PostgreSQL</H1>
|
<H1>Frequently Asked Questions (FAQ) for PostgreSQL</H1>
|
||||||
|
|
||||||
<P>Last updated: Tue Feb 6 22:16:17 EST 2007</P>
|
<P>Last updated: Thu Feb 8 22:43:13 EST 2007</P>
|
||||||
|
|
||||||
<P>Current maintainer: Bruce Momjian (<A href=
|
<P>Current maintainer: Bruce Momjian (<A href=
|
||||||
"mailto:bruce@momjian.us">bruce@momjian.us</A>)
|
"mailto:bruce@momjian.us">bruce@momjian.us</A>)
|
||||||
@ -720,25 +720,25 @@ table?</TD><TD>unlimited</TD></TR>
|
|||||||
and text description on each line. Suppose the text string
|
and text description on each line. Suppose the text string
|
||||||
avergages twenty bytes in length. The flat file would be 2.8 MB.
|
avergages twenty bytes in length. The flat file would be 2.8 MB.
|
||||||
The size of the PostgreSQL database file containing this data can
|
The size of the PostgreSQL database file containing this data can
|
||||||
be estimated as 5.6 MB:</P>
|
be estimated as 5.2 MB:</P>
|
||||||
<PRE>
|
<PRE>
|
||||||
28 bytes: each row header (approximate)
|
24 bytes: each row header (approximate)
|
||||||
24 bytes: one int field and one text field
|
24 bytes: one int field and one text field
|
||||||
+ 4 bytes: pointer on page to tuple
|
+ 4 bytes: pointer on page to tuple
|
||||||
----------------------------------------
|
----------------------------------------
|
||||||
56 bytes per row
|
52 bytes per row
|
||||||
|
|
||||||
The data page size in PostgreSQL is 8192 bytes (8 KB), so:
|
The data page size in PostgreSQL is 8192 bytes (8 KB), so:
|
||||||
|
|
||||||
8192 bytes per page
|
8192 bytes per page
|
||||||
------------------- = 146 rows per database page (rounded down)
|
------------------- = 158 rows per database page (rounded down)
|
||||||
56 bytes per row
|
52 bytes per row
|
||||||
|
|
||||||
100000 data rows
|
100000 data rows
|
||||||
-------------------- = 685 database pages (rounded up)
|
-------------------- = 633 database pages (rounded up)
|
||||||
146 rows per page
|
158 rows per page
|
||||||
|
|
||||||
685 database pages * 8192 bytes per page = 5,611,520 bytes (5.6 MB)
|
633 database pages * 8192 bytes per page = 5,185,536 bytes (5.2 MB)
|
||||||
</PRE>
|
</PRE>
|
||||||
|
|
||||||
<P>Indexes do not require as much overhead, but do contain the data
|
<P>Indexes do not require as much overhead, but do contain the data
|
||||||
|
Loading…
x
Reference in New Issue
Block a user