PostgreSQL
La base de données la plus sophistiquée au monde.

Ouverture de session

Navigation

Contactez-nous

Administration du site :
"equipe chez postgresqlfr point org"

Contact presse :
"fr chez postgresql point org"

Contact association :
"bureau chez postgresqlfr point org"

Questions PostgreSQL :
 IRC :
  serveur irc.freenode.net
  canal #postgresqlfr

Recherche

Accéder aux archives

« Octobre 2008  
Lun Mar Mer Jeu Ven Sam Dim
  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  

Syndication

Flux XML

Sondage

Quelle est la version de PostgreSQL la plus répandue sur vos serveurs ?
8.3
10%
8.2
42%
8.1
40%
8.0
2%
7.4
6%
7.3 ou antérieure
0%
Nombre de votes: 48

TEXT ou Varchar

Technique - optimisation | TEXT ou Varchar

Par moi le 13/11/2007 - 17:14

Bonjour,

J'ai posé la question par email. Il est préférable de partager cette question avec tout le monde.

Nous developpons un projet en Php avec Postgres.
Nous devons enregistrer plusieurs milliers de lignes par jour sur 100 colonnes environs. Les données proviennent de fichiers bruts CSV. Nous faisons ensuite plusieurs traitements qui réduisent le nombre de lignes et éventuellement le nombre de colonnes. Les colonnes ne dépassent pas les 200 caractères mais sont très variables.

Certaines personnes m'ont dit qu'il Ă©tait plus performant d'utiliser le format TEXT plutĂ´t que le format character varying (VARCHAR).

Pourriez vous me confirmer celĂ  ???

Merci encore pour votre réponse.

Options d'affichage des commentaires

Sélectionnez la méthode d'affichage des commentaires que vous préférez, puis cliquez sur "Sauvegarder les paramètres" pour activer vos changements.

Bonjour, L'Ă©quipe Postgre

moi/ = 13 Novembre, 2007 - 23:00

Bonjour,

L'équipe PostgreSQLFr a eu l'amabilité de me répondre.

Je vous fais donc profiter de leur réponse :

> Certaines personnes m'ont dit qu'il Ă©tait plus performant d'utiliser le
> format TEXT plutĂ´t que le format character varying.
>
> Pourriez vous me confirmer celĂ  ???

Surtout pas. C'est exactement la mĂŞme chose sous PostgreSQL. Le
character varying est en fait un text limité en taille. Rien de plus.

Si vous ne voulez pas que PostgreSQL teste la longueur de chaine,
utiliser TEXT, cela reviendra au mĂŞme...

En revanche, pour charger vos données, je vous recommande *vivement*
d'utiliser COPY plutĂ´t que des INSERT... Pour le coup, lĂ , vous verrez
vos performances multipliées par un facteur ... que vous ne soupçonniez pas.

pgloader peut vous permettre de faire cela d'une manière plus contrôlée,
et est juste parfait pour importer du CVS (avec contrôle des données,
etc.), et utilise bien sûr COPY.

Dimitri Fontaine vient juste de sortir une nouvelle version (2.2.2) et
ne cesse d'améliorer le logiciel pour le bonheur de tous:


http://pgfoundry.org/projects/pgloader/
.

Je pense que c'est Ă  utiliser de toute urgence dans votre projet.

Cordialement,

Note de l'admin: post modifié pour mettre l'URL en lien clickable


© PostgreSQLFr, tous droits rĂ©servĂ©s.
Site déclaré à la CNIL sous le numéro 1074678, conformément à la Loi en vigueur.