GeoServer: ¿La mejor manera de publicar 2500 TIFF o 71 archivos ECW?

13

Tengo ortofotos de un área que necesito para servir como mapa de fondo para mis vectores. Lo obtuve como 2500 archivos (71,5MB cada uno) en formato TIFF sin formato con el archivo de palabra TFW correspondiente: 180GB de datos. El sistema de coordenadas es local y coincide con mis vectores (no hay código EPSG para él, pero lo llamé "32805" y puse una definición adecuada).

Para uso de escritorio en MapInfo, los convertí a ECW (con alguna herramienta que viene con MapInfo) y retile tanto más grande para tener solo 71 archivos porque abrir 2500 archivos tiff es excesivo. Acabo de fusionar 49 TIFF (7x7) en un ECW - 35000x35000pixels - el más grande es alrededor de 200MB) Funciona muy bien y es realmente rápido en MapInfo.

Ahora estoy bastante confundido: ¿CÓMO servirlos en GeoServer?

He publicado un TIFF y un ECW para comparar. ECW es mucho más rápido en la vista previa del navegador (soy consciente del problema de licencia del servidor ECW pero eso no debería ser un problema). Encontré una presentación "GeoServer con esteroides" y leí acerca de ImageMosaic, ImagePyramid, retilizar, agregar información general, etc. Fue bastante informativo, pero aún no sé qué hacer.

Mi pregunta es: ¿cómo debo hacerlo? Mosaico o Pirámide, y si es una de las respuestas positivas, necesito tu consejo o algunos consejos. Realmente me gustaría ser ECW debido al espacio en disco, por lo que no será necesario mantener 180GB de tiff en un servidor.

Los datos se servirán a través de LAN con un máximo de 20 usuarios conectados en la hora pico. El servidor SQL no tiene una gran cantidad de datos. Lo siento si me falta alguna otra información, pero la enviaré si es necesario.


Geoserver 2.1.4, Windows 7 32 bits, 2 GB de memoria del sistema, (1.7.0_09 (Java HotSpot (TM) Server VM), Native JAI + Native JAI ImageIO = true


Original TIFF
gdalinfo D:\75720-47970.tif
Driver: GTiff/GeoTIFF
Files: D:\75720-47970.tif
       D:\75720-47970.tfw
Size is 5000, 5000
Coordinate System is `'
Origin = (7572000.000000000000000,4797500.000000000000000)
Pixel Size = (0.100000000000000,-0.100000000000000)
Metadata:
  TIFFTAG_SOFTWARE=Adobe Photoshop 7.0
  TIFFTAG_DATETIME=2006:10:09 13:02:57
  TIFFTAG_XRESOLUTION=72
  TIFFTAG_YRESOLUTION=72
  TIFFTAG_RESOLUTIONUNIT=2 (pixels/inch)
Image Structure Metadata:
  INTERLEAVE=PIXEL
Corner Coordinates:
Upper Left  ( 7572000.000, 4797500.000)
Lower Left  ( 7572000.000, 4797000.000)
Upper Right ( 7572500.000, 4797500.000)
Lower Right ( 7572500.000, 4797000.000)
Center      ( 7572250.000, 4797250.000)
Band 1 Block=5000x1 Type=Byte, ColorInterp=Red
Band 2 Block=5000x1 Type=Byte, ColorInterp=Green
Band 3 Block=5000x1 Type=Byte, ColorInterp=Blue
-------------

ECW file which is retiled from 7x7  original tiffs

gdalinfo D:\OF-45.ecw
Driver: ECW/ERDAS Compressed Wavelets (SDK 3.x)
Files: D:\OF-45.ecw
Size is 35000, 35000
Coordinate System is:
LOCAL_CS["LOCAL - (unsupported)",
    UNIT["Meter",1]]
Origin = (7571500.000000000000000,4798500.000000000000000)
Pixel Size = (0.100000000000000,-0.100000000000000)
Corner Coordinates:
Upper Left  ( 7571500.000, 4798500.000)
Lower Left  ( 7571500.000, 4795000.000)
Upper Right ( 7575000.000, 4798500.000)
Lower Right ( 7575000.000, 4795000.000)
Center      ( 7573250.000, 4796750.000)
Band 1 Block=35000x1 Type=Byte, ColorInterp=Red

  Overviews: 17500x17500, 8750x8750, 4375x4375, 2187x2187, 1093x1093, 546x546, 273x273, 136x136
Band 2 Block=35000x1 Type=Byte, ColorInterp=Green
  Overviews: 17500x17500, 8750x8750, 4375x4375, 2187x2187, 1093x1093, 546x546, 273x273, 136x136
Band 3 Block=35000x1 Type=Byte, ColorInterp=Blue
  Overviews: 17500x17500, 8750x8750, 4375x4375, 2187x2187, 1093x1093, 546x546, 273x273, 136x136
sys49152
fuente
sys49152: ¿alguna de estas respuestas realmente responde a su pregunta?
BradHards
Sí, ambos me ayudaron. Pero no tengo ArcGIS, así que he usado GDAL. Comparé ECW y TIF. Primero probé TIF. Funcionó bien, luego probé los mosaicos ECW tal como están. ¡La carga en los navegadores web fue mucho más rápida con ECW! Pero después de un tiempo de vez en cuando mi Tomcat se cuelga. No sé cómo abordar ese problema, pero parece estar relacionado con ECW. Cuando no estoy usando ECW, Tomcat es estable.
sys49152

Respuestas:

7

Realicé un experimento con un archivo TIFF y un ECW. Comenzó con un ECW de 1.2 GB, y lo convirtió a TIFF con compresión y pirámides, era ~ 1.5 GB. Así que creo que un TIFF puede ser de un tamaño similar a un ECW.

Mosaicaría la imagen usando GDAL, asegurando que la compresión esté activada. Luego construya pirámides, y si el archivo resultante es razonable (menos de 10 GB, supongo) simplemente dejaría que GeoServer haga el resto.

Entiendo que el rendimiento entre PostGIS y TIFF favorecerá el tiff.

Referencias

Alex Leith
fuente
¡Esta es la respuesta exacta que di antes!
Krystian
7

Tuve un problema similar hace unas semanas. Lo resolví de esta manera:

  1. crear una imagen de ráster de pirámides (todos los rásteres tenían pirámides depende de la tasa de escala estándar en mi proyecto
  2. creación de mosaicos desde ráster (mosaico)
  3. poner todos los archivos a postgis (por WKTRaster )

De esta manera obtienes MRDB (base de datos de resolución múltiple), que es la forma más efectiva de servir una gran cantidad de datos.

Después de lo anterior, simplemente puede conectar GeoServer a PostGIS y servir sus datos. Basado en mi propio ejemplo, tuve que usar 82 ortofotomapas (40 GB de datos) en mi aplicación, ¡así que hice lo siguiente y funciona muy bien! La desventaja de esta situación es que los mosaicos de trama son mucho más más grandes que los de origen. Entonces, en mi caso, los datos crecieron de 40 GB a ~ 96 GB.

EDITAR Y debe controlar los parámetros de su servidor porque 2 GB de RAM y win7 + geoserver + postgres pueden ahogarse a veces. Quizás una buena forma de aumentar el rendimiento sería trasladar la base de datos a otra máquina, o cambiar Win7 a Linux (o ambas) porque el sistema * nix es menos costoso que uno de MS.

Krystian
fuente
¿Cuál era el formato de los datos originales (por ejemplo, TIFF sin comprimir, ECW, MrSID, etc.)? ¿Cómo configuró esta capa en GeoServer?
BradHards
Tenía geoTIFFs sin ninguna compresión, y sobre la configuración de la capa, puede leer aquí: docs.geoserver.org/stable/en/user/data/raster/… y sobre la instalación postgis raster aquí: gis4free.wordpress.com/2011/03/ 10 / ... Le sugiero que mire a su alrededor en la página WKTRaster que le di en mi respuesta anterior.
Krystian
Lo sentimos, quería que publicaras tu configuración exacta.
BradHards
No lo entiendo, ¿quieres mis archivos de configuración, por ejemplo? En caso afirmativo, muéstrame qué archivos, o tal vez podrías mostrarme la dificultad que tienes.
Krystian
2
No tengo ninguno Sin embargo, quiero obtener suficiente información para el póster original para obtener una solución viable. Mostraste una respuesta sin las herramientas reales y la configuración específica. Muestre los pasos para hacer el ráster piramidal, muestre la línea de comando exacta u otro proceso para hacer el ráster mosiaco, muestre las herramientas específicas que utilizó para WKTRaster, muestre la configuración del geoservidor y la configuración del ráster postgis.
BradHards