¿Qué formatos de datos son mejores para la distribución de datos abiertos?

15

¿Cuáles son los pros y los contras de los diferentes formatos de datos (rendimiento, tamaño de archivo, etc.) al considerar la distribución de datos abiertos?

Nuestra organización quiere publicar datos como datos abiertos. Sin embargo, no hay una idea clara sobre qué formatos de datos utilizar. Por supuesto, cuanto más 'abierto' es un formato de datos, más fácil es usarlo.

¿Qué formatos de datos son los más 'abiertos' y, por lo tanto, más utilizables para la distribución de datos abiertos cuando se tienen en cuenta los siguientes tipos ?:

  • datos ráster (estoy pensando: GeoTIFF, Erdas Imagine IMG?)
  • datos vectoriales (estoy pensando: GML, CSV, ESRI Shapefile, DXF?)
  • datos tabulares (estoy pensando: CSV?)
  • Datos 3D (estoy pensando: ¿CityGML?)
  • Puntos 3D podría / LIDAR (Estoy pensando: LAS?)
  • ¿Estoy olvidando algo aquí?

Además, si hay documentación sobre formatos de datos abiertos, estoy muy interesado si desea compartir.

Mark Verschuur
fuente
2
para vector, también puede considerar geojson y kml
neuhausr
44
Debe diferenciar entre los formatos de intercambio de datos y el formato de almacenamiento de datos. Geojson, por ejemplo, es un excelente formato de intercambio de datos, pero apesta como formato de almacenamiento de datos. Supongo que solo le preocupa el formato para la distribución de datos (es decir, el intercambio de datos). ¿Es eso correcto?
Devdatta Tengshe 01 de
@DevdattaTengshe: ¡Buen punto! Por ahora, la intención es distribuir los datos en el formato de intercambio más conveniente.
Mark Verschuur
Gracias a todos por la retroalimentación. Además, algunos consejos sobre los tipos de archivos que se utilizarán frente al tamaño del archivo serían muy útiles.
Mark Verschuur

Respuestas:

5

La iniciativa de datos abiertos de la ciudad de Viena ( http://data.wien.gv.at ) utiliza Geoserver para proporcionar acceso a geodatos ráster y vectoriales a través de los servicios Geoserver WMS y WFS . Esto tiene muchas ventajas: los usuarios pueden descargar datos en diferentes formatos para usarlos sin conexión (por ejemplo, geojson, KML o Shapefiles comprimidos) o usar los servicios en vivo al insertarlos en mapas en línea o proyectos SIG.

bajo oscuro
fuente
Esto es lo que hacemos aquí: maps.gcc.tas.gov.au/data No hay ninguna razón por la que no pueda usar GeoServer para tablas no espaciales también.
Alex Leith
5

Para csv tabular. Excel es, en el mejor de los casos, demasiado complicado y, en el peor, totalmente inaccesible. El acceso no es accesible y el PDF es una bofetada.

Para el uso geoespacial geojson, su texto está bien soportado y no tiene las restricciones técnicas que tiene el único otro formato viable (shapefile). Además, a menos que tenga una muy buena razón, debería estar en WGS84, teniendo en cuenta que la mayoría de los usuarios estarán en otro estado y no querrán un avión de estado.

Calvin
fuente
5

Me gusta bastante NetCDF para datos continuos / de matriz (es decir, rásteres). Los pros para NetCDF son:

  • NetCDF es autodescriptivo (es decir, las definiciones de datos están disponibles a través del encabezado del archivo), por lo que no necesita proporcionar archivos de metadatos secundarios
  • NetCDF4 permite el almacenamiento de datos n-dimensionales (usando el formato de datos HDF5 en el disco, lo cual es una ventaja, ya que permite archivos tan grandes como su sistema operativo puede manejar). Esto viene con una compresión razonable y un acceso rápido a los datos. Tenga en cuenta que NetCDF3 no admite datos n-dimensionales y tiene un límite de tamaño de archivo de aproximadamente 2 GB en un sistema de 32 bits.
  • NetCDF es un formato abierto, por lo que acceder a los datos generalmente no es un problema también a través de bibliotecas comunes. Por ejemplo, en python es lo suficientemente simple de scipy como para leer una porción de datos:
from scipy.io import netcdf
f = netcdf.netcdf_file('source.nc')
print(nc.dimensions) #take a look at the dimensions of the data
print(nc.variables)  #A dictionary containing all the variables
nc.variables["some_data"].dimensions #The dimensions this variable is in, e.g. lat, lon
out_array = nc.variables["some_data"].data
f.close() #and we're done

El único inconveniente de NetCDF4 que puedo ver es el excelente soporte en paquetes GIS estándar como ArcGIS y QGIS (¡aunque me encantaría que me corrijan al respecto!).

EDITAR Algunos otros paquetes que admiten NetCDF

Algunos lenguajes de programación estándar que admiten NetCDF (aunque para ser justos, cualquier cosa que pueda leer HDF puede leer NetCDF4):

Para los usuarios de matemáticas y estadísticas tienes:

Específicamente en SIG:

  • GDAL convertirá los datos por usted
  • Asimismo FME
  • ArcGIS admite NetCDF (aunque no es el mejor nivel de soporte en mi experiencia)
  • Hay un complemento QGIS en desarrollo

Si desea ver rápidamente un archivo NetCDF, usaría el Panoply multiplataforma de la NASA. Y si está interesado en más, UCAR Unidata tiene una lista de software .

om_henners
fuente
NetCDF es una elección horrible, realmente no tiene soporte fuera de Python. Puede tener un buen soporte, pero tiffs, png y jpeg tienen soporte en literalmente todos los idiomas.
Calvin
2
Estoy totalmente en desacuerdo. He editado mi respuesta anterior para mostrar una lista rápida de paquetes que admiten NetCDF. En mi experiencia, es un formato de elección para cualquier información científica multidimensional (por ejemplo, astronomía y meteorología). PNG y TIFF no son malos para distribuir datos ráster, y ciertamente ver los datos es fácil, pero no se adaptan bien a grandes cantidades de datos multidimensionales. No siempre usar JPEG para distribuir datos científicos (aunque si va a enviar a alguien un mapa funciona muy bien).
om_henners
4

Yo diría:

  • Shapefiles o GML para datos vectoriales
  • .obj-Files para modelos 3D
  • .xyz (CSV simple) para nubes de puntos
  • CSV para datos tabulares
  • GeoTIFF para datos ráster

El software de código abierto puede leer fácilmente estos formatos y se pueden transformar fácilmente a cualquier otro formato necesario para aplicaciones específicas.

¡También +1 para abrir datos!

til_b
fuente
2
Me interesará saber por qué sugirió Shapefiles y GML para datos vectoriales. Ambos son formatos terribles. La única gracia salvadora de GML es que es un formato OGC.
Devdatta Tengshe 01 de
1
Los archivos de forma se pueden leer en muchas aplicaciones y se pueden transformar en algo diferente sin problemas. ¿Qué sugieres?
til_b
33
Evite los archivos de forma. Funcionan, pero tienen serias limitaciones técnicas.
nickves
1
Entonces, ¿qué sugiere que no tenga las limitaciones técnicas de los shapefiles?
til_b
2
@til_b GeoTIFF es un buen formato desde la perspectiva de estar 'abierto'. Sin embargo, para el almacenamiento (o para ofrecerlo como descarga) es terrible, porque los archivos pueden ser enormes. ¿Conoces un formato ráster abierto que ofrezca compresión sin pérdidas?
Mark Verschuur
1

Prácticamente esta misma pregunta surgió en opendata.SE: ¿Cuáles son los formatos más útiles para liberar datos geoespaciales?

Entonces, espero no estar violando ninguna política al citar mi propia respuesta allí:

Mi experiencia, haciendo mapas de bastantes conjuntos de datos gubernamentales:

Para datos de puntos, CSV es el mejor, con columnas "lat" y "lon". Es muy fácil trabajar con una amplia gama de herramientas, incluidos editores de texto, hojas de cálculo, etc. Hay dos desventajas:

  1. GDAL requiere un .vrtarchivo complementario.
  2. El nombramiento de las columnas laty lonno es totalmente estándar. Muchas herramientas son bastante liberales en lo que aceptan.

Para líneas y polígonos, en orden decreciente de preferencia:

  1. GeoJSON. Fácil de trabajar y la capacidad de editar en un editor de texto o con geojson.io es una verdadera ventaja, si necesita hacer una búsqueda / reemplazo, elimine un par de objetos extraños o copie y pegue de un archivo a otro. Otro beneficio es que los desarrolladores que no son SIG pueden darle sentido. Los únicos problemas que he encontrado es cuando alguien proporciona datos como, por ejemplo, MultiPoint en lugar de Point.
  2. Shapefile Muy ampliamente compatible, pero con dos puntos inconvenientes. Primero, es una colección de archivos, por lo que debe pasar un .zip y extraerlo. En segundo lugar, los nombres de campo están limitados a 10 caracteres. Son difíciles de editar para una persona promedio que no es SIG.
  3. KML / KMZ. Estos a menudo tienen una gran cantidad de elementos irrelevantes (estilo, iconos, etc.), y los atributos a veces se codifican como mini tablas HTML, con las que es muy difícil trabajar. Al menos puedes editarlos fácilmente con las herramientas de Google.

Honestamente, sin embargo, la mejor respuesta es probablemente "todos ellos". Haga un favor a todos y publique los datos en CSV (si es un punto), GeoJSON, Shapefile comprimido y KMZ.

Steve Bennett
fuente