banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Mon 31 May 2021 17:02

image95
Participant assidu
Date d'inscription: 6 Sep 2014
Messages: 257

Postgis raster (windows) : message d'erreur lors de l'import

Bonjour,

Sous windows, je souhaite importer un raster dans une base postgis (postgresql 13 et postgis 3.1).
J'ai activé l'extension raster grace à :

Code:

CREATE EXTENSION postgis_raster;

J'ai réussi à convertir le fichier geotif (jeu de données de 2giga MNT ign RGE_alti à 5m en 1 fichier sql.
grace à :

Code:

C:\Program Files\PostgreSQL\13\bin>raster2pgsql -c  -C  -s 2154 -N 0 -F -I -M -Y P:\DEPT52_MNT_5M.tif alti.IGN_rge_alti_5m > P:\IGN_rge_alti_5m.sql

Mais pour l'étape de l'import du fichier sql dans la base, j'obtiens ce message d'erreur :

Code:

C:\Program Files\PostgreSQL\13\bin>psql -d siege_data_brutes -f P:\IGN_rge_alti_5m.sql
BEGIN
CREATE TABLE
psql:P:/IGN_rge_alti_5m.sql:5: ERREUR:  mémoire épuisée
DÉTAIL : Ne peut pas agrandir le tampon de chaîne, qui contient 1073741808 octets, de 8191 octets.
CONTEXTE : COPY ign_rge_alti_5m, ligne 1
psql:P:/IGN_rge_alti_5m.sql:6: ERREUR:  la transaction est annulée, les commandes sont ignorées jusqu'à la fin du bloc
de la transaction
psql:P:/IGN_rge_alti_5m.sql:7: ERREUR:  la transaction est annulée, les commandes sont ignorées jusqu'à la fin du bloc
de la transaction
psql:P:/IGN_rge_alti_5m.sql:8: ERREUR:  la transaction est annulée, les commandes sont ignorées jusqu'à la fin du bloc
de la transaction
ROLLBACK
psql:P:/IGN_rge_alti_5m.sql:10: ERREUR:  la relation « alti.ign_rge_alti_5m » n'existe pas

Si je comprends bien, il s'agirait d'un probleme d'allocation mémoire...? Si une personne pourrait me confirmer la signification de l'erreur et/ou une proposition de résolution ? Merci bien.

Hors ligne

 

#2 Mon 31 May 2021 18:21

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1554

Re: Postgis raster (windows) : message d'erreur lors de l'import

Bonsoir,

Là vous tentez de mettre le raster entier dans une seule ligne de la table ! ca ne marchera pas pour un tel raster.
Il faut le découper en tuiles, chaque tuile sera stockée dans une ligne de la table raster
l'option "-t auto" permet de tuiler le raster sur une taille déterminée par le programme. Sinon vous pouvez donner une taille de tuile (par ex: -t 100x100)

En général, c'est bien d'avoir beaucoup de petites tuiles plutôt que peu de grandes tuiles, plus longues à récupérer, à traiter etc.

Ce n'est pas la peine de passer par un fichier SQL intermédiaire: ca prend de la place et du temps pour rien.
Vous pouvez charger directement le raster en base:

Code:

raster2pgsql -t auto -c  -C  -s 2154 -N 0 -F -I -M -Y P:\DEPT52_MNT_5M.tif alti.IGN_rge_alti_5m | psql siege_data_brutes

Nicolas

Hors ligne

 

#3 Mon 31 May 2021 18:30

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1554

Re: Postgis raster (windows) : message d'erreur lors de l'import

Ptet aussi mettre l'option -P lors du chargement:

Code:

  -P Pad right-most and bottom-most tiles to guarantee that all tiles
     have the same width and height.

C'est mieux pour les calculs futurs si toutes les tuiles ont les mêmes dimensions.

Nicolas

Hors ligne

 

#4 Tue 01 June 2021 09:25

image95
Participant assidu
Date d'inscription: 6 Sep 2014
Messages: 257

Re: Postgis raster (windows) : message d'erreur lors de l'import

Un grand merci pour votre aide.

Hors ligne

 

Pied de page des forums

Powered by FluxBB