4.05 Kolik diskového prostoru je potřeba k uložení dat z normálního textového souboru?

Z PostgreSQL
Skočit na navigaci Skočit na vyhledávání

PostgreSQL vyžaduje až pětinásobek diskového prostoru k uložení dat z textového souboru.

Například, uvažujme soubor se 100 tisíci řádky obsahující na každé řádce celé číslo a textový popis. Text je v průměrně dvacet bytů dlouhý. Textový soubor bude 2.8 MB dlouhý. Velikost databáze obsahující odpovídající data bude zhruba 5.2 MB.

    24 bytů: hlavička řádku (přibližně)
    24 bytů: jedna celočíselná položka a jedna textová
   + 4 byty: ukazatel na stránku k entici
   ------------------------------------------------------
    52 bytů na řádek

Velikost datové stránky PostgreSQL je 8192 bytů (8KB)

 8192 bytů na stránce
---------------------- = 158 řádek na stránku
  52 bytů za řádek

100000 řádek
----------------------- = 633 stránek (zaokrouhleno nahoru)
   158 řádek na stránce

633 datových stránek * 8192 bytů na každou stránku = 5,185,536 bytů (5.2 MB)

Indexy nemají tak velkou režii, ale mohou být také velké, protože obsahují indexovaná data.

Hodnoty NULL jsou uloženy v bitmapách, takže zabírají jen velmi málo diskového prostoru.