Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/02/2005, 08h40   #1
Invité de passage
 
Inscription : décembre 2004
Messages : 19
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 19
Points : 3
Points : 3
Par défaut analyse d'un vacuum

bonjour,

j'ai entendu dire que les dernieres ligne d'un vacuum etait importante, seulement comment decrypter ?
voici les miennes :

INFO: free space map : 75 relations, 41207 pages stockées ; 39200 pages nécessaires
DETAIL: Allocation de la taille FSM : 2000 relations + 40000 pages = 354 Ko de mémoire partagée.

sa veut dire que je doit ajouter des "pages" ? et c'est quoi au juste ?
merci pour vos lumieres

A+
alain.lc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2005, 09h09   #2
Membre émérite
 
Avatar de hpalpha
 
Inscription : mars 2002
Messages : 770
Détails du profil
Informations forums :
Inscription : mars 2002
Messages : 770
Points : 833
Points : 833
Je ne connais pas la définition exacte de "page" mais c'est en fait un bloc mémoire, par défaut chaque page fait 8ko, c'est par ailleur grâce au champ relpages de pg_catalog.pg_class que l'on peut déterminer la taille de la base.
hpalpha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2005, 09h13   #3
Invité de passage
 
Inscription : décembre 2004
Messages : 19
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 19
Points : 3
Points : 3
merci pour la definition, c'est tres clair (surtout qu'effectivement j'utilise cette methode dans une vue pour avoir la taille de toutes mes tables ...)

par contre, faut-il que j'augmente mon nombre de pages dans postgesql.conf (40000) sachant que le vacuum me retourne 39200 ...
quel seront les incidences ?

A+
alain.lc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/02/2005, 18h30   #4
Responsable Perl et Outils

 
Avatar de djibril
 
Homme
Inscription : avril 2004
Messages : 9 375
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 32
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 9 375
Points : 13 744
Points : 13 744
un peu de doc
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
Name
VACUUM — garbage-collect AND OPTIONALLY analyze a DATABASE
 
Synopsis
VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] [ TABLE ]
VACUUM [ FULL ] [ FREEZE ] [ VERBOSE ] ANALYZE [ TABLE [ (COLUMN [, ...] ) ] ]
Description
VACUUM reclaims storage occupied BY deleted tuples. IN normal PostgreSQL operation, tuples that are deleted OR obsoleted BY an UPDATE are NOT physically removed FROM their TABLE; they remain present until a VACUUM IS done. Therefore it's necessary to do VACUUM periodically, especially on frequently-updated tables. 
 
With no parameter, VACUUM processes every table in the current database. With a parameter, VACUUM processes only that table. 
 
VACUUM ANALYZE performs a VACUUM and then an ANALYZE for each selected table. This is a handy combination form for routine maintenance scripts. See ANALYZE for more details about its processing. 
 
Plain VACUUM (without FULL) simply reclaims space and makes it available for re-use. This form of the command can operate in parallel with normal reading and writing of the table, as an exclusive lock is not obtained. VACUUM FULL does more extensive processing, including moving of tuples across blocks to try to compact the table to the minimum number of disk blocks. This form is much slower and requires an exclusive lock on each table while it is being processed. 
 
FREEZE is a special-purpose option that causes tuples to be marked “frozen” as soon as possible, rather than waiting until they are quite old. If this is done when there are no other open transactions in the same database, then it is guaranteed that all tuples in the database are “frozen” and will not be subject to transaction ID wraparound problems, no matter how long the database is left unvacuumed. FREEZE is not recommended for routine use. Its only intended usage is in connection with preparation of user-defined template databases, or other databases that are completely read-only and will not receive routine maintenance VACUUM operations. See Chapter 21, Routine Database Maintenance Tasks for details. 
 
Parameters
FULL 
Selects “full” vacuum, which may reclaim more space, but takes much longer and exclusively locks the table. 
 
FREEZE 
Selects aggressive “freezing” of tuples. 
 
VERBOSE 
Prints a detailed vacuum activity report for each table. 
 
ANALYZE 
Updates statistics used by the planner to determine the most efficient way to execute a query. 
 
table 
The name (optionally schema-qualified) of a specific table to vacuum. Defaults to all tables in the current database. 
 
column 
The name of a specific column to analyze. Defaults to all columns. 
 
Outputs
When VERBOSE is specified, VACUUM emits progress messages to indicate which table is currently being processed. Various statistics about the tables are printed as well. 
 
Notes
We recommend that active production databases be vacuumed frequently (at least nightly), in order to remove expired rows. After adding or deleting a large number of rows, it may be a good idea to issue a VACUUM ANALYZE command for the affected table. This will update the system catalogs with the results of all recent changes, and allow the PostgreSQL query planner to make better choices in planning queries. 
 
The FULL option is not recommended for routine use, but may be useful in special cases. An example is when you have deleted most of the rows in a table and would like the table to physically shrink to occupy less disk space. VACUUM FULL will usually shrink the table more than a plain VACUUM would. 
 
Examples
The following is an example from running VACUUM on a table in the regression database: 
 
regression=# VACUUM VERBOSE ANALYZE onek;
INFO:  vacuuming "public.onek"
INFO:  index "onek_unique1" now contains 1000 tuples in 14 pages
DETAIL:  3000 index tuples were removed.
0 index pages have been deleted, 0 are currently reusable.
CPU 0.01s/0.08u sec elapsed 0.18 sec.
INFO:  index "onek_unique2" now contains 1000 tuples in 16 pages
DETAIL:  3000 index tuples were removed.
0 index pages have been deleted, 0 are currently reusable.
CPU 0.00s/0.07u sec elapsed 0.23 sec.
INFO:  index "onek_hundred" now contains 1000 tuples in 13 pages
DETAIL:  3000 index tuples were removed.
0 index pages have been deleted, 0 are currently reusable.
CPU 0.01s/0.08u sec elapsed 0.17 sec.
INFO:  index "onek_stringu1" now contains 1000 tuples in 48 pages
DETAIL:  3000 index tuples were removed.
0 index pages have been deleted, 0 are currently reusable.
CPU 0.01s/0.09u sec elapsed 0.59 sec.
INFO:  "onek": removed 3000 tuples in 108 pages
DETAIL:  CPU 0.01s/0.06u sec elapsed 0.07 sec.
INFO:  "onek": found 3000 removable, 1000 nonremovable tuples in 143 pages
DETAIL:  0 dead tuples cannot be removed yet.
There were 0 unused item pointers.
0 pages are entirely empty.
CPU 0.07s/0.39u sec elapsed 1.56 sec.
INFO:  analyzing "public.onek"
INFO:  "onek": 36 pages, 1000 rows sampled, 1000 estimated total rows
VACUUM
 
Compatibility
There is no VACUUM statement in the SQL standard. 
 
See Also
vacuumdb
__________________
Pensez toujours aux cours, FAQ Perl et la fonction recherchez!!!!!!!!
Lisez les règles du forum Perl.

Aucun problème par MP, merci de poster vos questions dans les sous forums dédiés et rendez vos codes sources lisibles
djibril est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h53.


 
 
 
 
Partenaires

Hébergement Web