Vous n'êtes pas identifié(e).
Pages : 1
Hello,
Tout d'abord bonjour à tous, sans doute pourrez vous m'aider à comprendre un peu mieux PostgreSQL
J'ai une table Oracle avec un seul champ NUMBER(16) que j'exporte via SQL en redirection dans une fichier plat.
Ce fichier je l'importe via COPY dans une table existante avec un seul champ en NUMERIC(16,0)
La table fait 35 344 534 lignes sur Oracle et PostreSQL
Mais elle fait 624MB sur Oracle et 2444MB sur PostgreSQL !
Après un VACCUM sur la table celle-ci fait 1222MB mais toujours 2 fois plus grosse que Oracle.
Avez vous une idée d'où peux venir cette grosse différence, je sais que les deux moteurs ne stockent pas les données de la même manière, mais avoir une table 4 fois plus grosse pour le même nombre de lignes après un COPY c'est quand même surprenant !
Je me dis que le remplissage des pages de données ne dois pas être le même...mais quand même quel perte d'espace disque pour le même nombre de lignes.
Tof.
Hors ligne
Bonjour,
si la taille change après un vacuum, c'est que vous avez du faire plusieurs essai d'importation ? Essayez un VACUUM FULL de la table afin de supprimer toutes les lignes non visibles.
Julien.
https://rjuju.github.io/
Hors ligne
De plus, quelle version de PostgreSQL utilisez-vous ? les dernières versions contiennent une amélioration sur le stockage du type NUMERIC.
Guillaume.
Hors ligne
Pages : 1