Cuál es la base de datos open source mas rápida para cambiar de proyección una tabla de geometrías?

Esta tarde me picó la curiosidad y realicé unas pruebas sencillas. En la misma máquina cargué una tabla de 1 millón de poli líneas en tres bases de datos distintas y las convertí de Mercator a geográficas. Los tiempos de la conversión (sin contar la carga) fueron los siguientes:

PostgreSQL 9.1 67.2 segundos
Spatialite   3.0.1 122 segundos
MySQL con Spatial-UDF 276 segundos

Me sorprendió muy positivamente la velocidad del PostgreSQL  y en comparación me defraudó un poco la de Spatial-UDF. Porqué se alejaba tanto de las demás base de datos ?

Al principio pensé que se debía a las llamadas UDF del MySQL o a la decodificación de la geometría que la realiza la librería GEOS mientras que en las demás BDD lo realiza código propio. Pero con este test quedó muy claro:

mysql> select mysql.proj4text(4326) into @4326;
Query OK, 1 row affected (0.01 sec)
  
mysql> select mysql.proj4text(3395) into @3395;
Query OK, 1 row affected (0.03 sec)

mysql> create table tmp_lines as select msudf_transform(geom,@3395,4326,@4326) from lines;
 Query OK, 1000000 rows affected (55.19 sec)

 

Lo que realmente es lento es la función transform ya que por cada geometría que transforma debe buscar los textos proj4 de los SRIDs origen y destino.

  
CREATE FUNCTION transform(geom GEOMETRY,srid INTEGER) RETURNS geometry return msudf_transform(geom,proj4text(SRID(geom)),srid,proj4text(srid)); 

Pero como podemos evitar este paso ?

Una respuesta to “Cuál es la base de datos open source mas rápida para cambiar de proyección una tabla de geometrías?”

  1. andriapark32172 Says:

    Discutivelmente mesmo, Jou00e3o.nAssim, de repente, lembro-me de outras 10 ou 15, do mesmo contexto de guerra, tu00e3o ou mais cu00e9lebres.<br Click https://zhoutest.wordpress.com/

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s


A %d blogueros les gusta esto: