LINUXSOFT.cz
Nazwa użytkownika: Hasło:     
    CZ UK PL

> Komentarze :: článek PostgreSQL (23) - Optimalizujeme rychlost

Duvody pro vacuum 7.8.2006 12:30
Pavel Stěhule

Zdar,

nejsem si jisty jestli bych pochopil Vase vysvetleni, proc je potreba provadet VACUUM. Rozhodne PostgreSQL nezachazi s daty stejne jako dbase. Jadro pudla je nekde jinde. PostgreSQL implementuje tzv. MVCC architekturu reseni transakci. Z toho vypliva, ze kazda modifikace radku (UPDATE, DELETE) zkopiruje radek. Vyvojari PostgreSQL zvolili strategii odlozeneho mazani mrtvych (nedostupnych) radku na dobu, kdy databaze neni zatizena, tj. explicitni spousteni prikazu VACUUM.

Pavel

Re: Duvody pro vacuum 9.8.2006 10:32
Lukáš Zapletal

Přesně tohle jsem zde chtěl napsat :-) Je totiž dobré seznámit čtenáře o tak důležité věci. Podobně to dělá třeba i Firebifd. Ovšem například Oracle, který používá v podstatě tutéž architekturu, ty tabulky čistí průběžně (raději mne opravte, pokud blábolím).

VACUUM doplnění 7.8.2006 12:49
Pavel Stěhule

ještě bych doplnil pár poznámek:

1. VACUUM ANALYZE provádí pouze sběr statistik, a "optimalizuje" přístup k dostupným řádkům.
2. VACUUM FREEZE resetuje čítač transakcí. - každá transakce v pg má vlastní unikátní číslo. Záleží na intenzitě provozu, ale je pravděpodobné, že někdy dojde k přetečení čítače. PostgreSQL včas varuje, že může dojít k této situaci. Každý řádek tabulky obsahuje číslo transakce, která jej vytvořila. Při FREEZE se tyto hodnoty nahradí konstantou freeze_id, a provede se reset čitače. Jedná se opravdu o velice náročnou i relativně rizikovou operaci, kterou je třeba spouštět jen tehdy, pokud dostanete upozornění.
2. VACUUM FULL provádí fyzické odstranění nedostupných záznamů. Dochází k zamykání tabulek.

Na obyčejně zatížených databázích se doporučuje provádět ANALYZE jednou až několikrát týdně, FULL jednou měsíčně. Záleží na podmínkách, typu dat, atd. ANALYZE má vliv na optimalizaci dotazu (planer má přesný údaj o počtu řádků), jednak na přístupovou dobu při čtení řádku. Bez analyze se sekvenčně čtou i nedostupné řádky.

Pokud někdo používáte starší než 8.0 verzi, pak doporučuji, co nejdříve přejít na novější. Jednak novější verze jsou o dost rychlejší, druhak obsahují nástroje pro automatizaci spouštění VACUUM. 8.0 má v contribu pg_autovacuum což je démonek, který monitoruje databázi a provádí odpovídající úroveň VACUUM, když je třeba. 8.1 má pg_autovacuum přímo integrováno

Pavel

Order na linuxoch 12.8.2006 14:48
blindmen

Dobry den
viem ze sa to nehodi k tomuto clanku, ale mam problem s orderom na debiane. Zoraduje mi zaznamy dost nahodne. vytvoril som data :

initdb --locale=sk_SK.utf8 /usr/local/pgsql/dataSK

databazu mam s encodingom UTF8

show LC_CTYPE v pg_adminovi vypise sk_SK
show LC_COLLATE tiez.

zoraduje to naozaj nahodne prve je Ž potom Ľ potom znova Ž ...
neviete mi poradit ako by to malo fungovat.

locale -a vypise :
C
cs_CZ
cs_CZ.iso88592
cs_CZ.utf8
czech
en_US
en_US.iso88591
POSIX
sk_SK
sk_SK.iso88592
sk_SK.utf8
slovak

takze by to malo podporovat.

Dakujem

Co dal 6.9.2006 10:22
Tomk

Na co se jeste muzeme tesit v serialu ? Chci migrovat na postgre z mysql tak jsem zvedavy jestli se budou probirat treba udf procedury funkce a jak zapojit jine programovaci jazyky. Z manualu vim ze by nemel byt problem psat procedury v C++ atd.


KOMENTARZE
Duvody pro vacuum 7.8.2006 12:30 Pavel Stěhule
L Re: Duvody pro vacuum 9.8.2006 10:32 Lukáš Zapletal
VACUUM doplnění 7.8.2006 12:49 Pavel Stěhule
Order na linuxoch 12.8.2006 14:48 blindmen
Co dal 6.9.2006 10:22 Tomk
Tylko zarejestrowani użytkownicy mogą dopisywać komentarze.
> Szukanie oprogramowania
1. Pacman linux
Download: 4874x
2. FreeBSD
Download: 9063x
3. PCLinuxOS-2010
Download: 8561x
4. alcolix
Download: 10943x
5. Onebase Linux
Download: 9659x
6. Novell Linux Desktop
Download: 0x
7. KateOS
Download: 6240x

1. xinetd
Download: 2411x
2. RDGS
Download: 937x
3. spkg
Download: 4755x
4. LinPacker
Download: 9961x
5. VFU File Manager
Download: 3196x
6. LeftHand Mała Księgowość
Download: 7201x
7. MISU pyFotoResize
Download: 2805x
8. Lefthand CRM
Download: 3561x
9. MetadataExtractor
Download: 0x
10. RCP100
Download: 3117x
11. Predaj softveru
Download: 0x
12. MSH Free Autoresponder
Download: 0x
©Pavel Kysilka - 2003-2024 | mailatlinuxsoft.cz | Design: www.megadesign.cz