La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

GvSig y GeoServer: Rendimiento óptimo utilizando GML binario Gabriel Roldán 2009-09-30.

Presentaciones similares


Presentación del tema: "GvSig y GeoServer: Rendimiento óptimo utilizando GML binario Gabriel Roldán 2009-09-30."— Transcripción de la presentación:

1 gvSig y GeoServer: Rendimiento óptimo utilizando GML binario Gabriel Roldán 2009-09-30

2 Agradecimientos - Gabriel Carrión, CIT - Luis Sevilla - Miguel Montesinos, Prodevelop - Instituto Geog. Nacional - OpenGeo

3 Overview - Introducción - Librería BXML - Integración con gvSig - Evaluación de rendimiento en gvSIG - Integración con GeoServer - Evaluación de rendimiento en GeoServer - Conclusiones

4 Introducción Intercambio de geodatos en una IDE - Web Feature Service: interoperabilidad a nivel de servicios para el intercambio de geodatos - Geography Markup Language: interoperabilidad a nivel de datos - GML Binary Encoding: Eficiencia para todos

5 GML Binary Encoding - Codificación binaria para documentos GML Orientada a la comunicación entre máquinas - Aplicación a GML de BXML Almacenamiento binario de coordenadas - + Eficiencia Para el servidor, red y cliente

6 Overview - Introducción - Librería BXML - Integración con gvSig - Evaluación de rendimiento en gvSIG - Integración con GeoServer - Evaluación de rendimiento en GeoServer - Conclusiones

7 Librería BXML - Binary Extensible Markup Language (BXML) Encoding Specification OGC Best Practices Document - CWXML Implementación de referencia en lenguaje C. CubeWerx. LGPL. - gvSIG BXML: API e implementación en lenguaje Java2. Conselleria de Infraestructuras y Transporte, Valencia. GPL.

8 gvSIG Software Libre GeoServer Software Libre gvSIG libGPE Software Libre gvSIG BXML https://forge.osor.eu/projects/gvsig-desktop Software Libre

9 Overview - Introducción - Librería BXML - Integración con gvSig - Evaluación de rendimiento en gvSIG - Integración con GeoServer - Evaluación de rendimiento en GeoServer - Conclusiones

10 - VecrorialFileDriver - GML y Binary GML Streaming GML Driver

11 - Utiliza (y crea) un índice espacial Streaming GML Driver

12 - Permite renderizado progresivo Streaming GML Driver

13 - Y acceso aleatorio (igual que Shapefile) Streaming GML Driver

14 - Con un uso eficiente de memoria Streaming GML Driver Memory GML Driver

15 Streaming GML Driver - También se puede exportar a Binary GML Desde el mismo menu que para GML

16 Streaming GML Driver - Simplemente seleccionando el formato

17 Streaming GML Driver - Y esperando... (poco :)

18 Streaming GML Driver On the dark side... - Implementa acceso a geometrías, falta acceso a atributos. Work in progress...

19 Cliente WFS + Binary GML 1- Conexión 2- Selección de capa

20 Cliente WFS + Binary GML 3- Negociación de formato 4- Enjoy

21 Cliente WFS + Binary GML On the dark side... - Falta integración ¨streaming¨ con el cliente WFS. Actualmente utiliza el Driver clásico de GPE, que carga todo en memoria

22 Overview - Introducción - Librería BXML - Integración con gvSig - Evaluación de rendimiento en gvSIG - Integración con GeoServer - Evaluación de rendimiento en GeoServer - Conclusiones

23 ¿Qué tan eficiente es BXML? comparado con el más rápido: SHP, y el más lento: GML - Banco de pruebas: -Hardware: - Datos : Fuente:

24 Qué tan eficiente es BXML? En tamaño... (*) Para Shapefile se considera.shp +.dbf, GML y BGML contienen las geometrías y los atributos alfanuméricos en el mismo archivo

25 Qué tan eficiente es BXML? En rendimiento...

26 Qué tan eficiente es BXML? O en otras palabras, face to face... Shapefile GML Binary GML BXML es un poquito más lento, o un poquito más rápido que ShapeFile, depende el caso. Y mucho más rápido que GML textual

27 Overview - Introducción - Librería BXML - Integración con gvSig - Evaluación de rendimiento en gvSIG - Integración con GeoServer - Evaluación de rendimiento en GeoServer - Conclusiones

28 - Implementación de referencia WFS 1.0 y 1.1 / WCS 1.1. WMS conforme 1.1.1 - GPL, construido por la comunidad. Empresas, organizaciones sin fines de lucro, desarrolladores independientes, USUARIOS - Estable, robusto, extensible

29 - org.gvsig.bxml.geoserver: implementa el punto de extensión WFSOutputFormat - Simplemente colocar los.jar de bxml en el classpath

30 Y la extensión estará disponible http://..../geoserver/wfs?request=GetCapabilities text/xml; subtype=gml/3.1.1 text/x-bxml; subtype=gml/3.1.1 text/x-bxml; subtype=gml/3.1.1 GML2 GML2-GZIP SHAPE-ZIP csv json text/xml; subtype=gml/2.1.2

31 La diferencia la marca el tipo MIME http://..../geoserver/wfs?request=GetFeatrue&featrueType=sigma:gnis_pop text/xml; subtype=gml/3.1.1 &outputFormat=text/xml; subtype=gml/3.1.1 http://www.opengis.net/ogchttp://www.opengis.net/gml Aflu 34.12 2.09 84683 Algeria place Aflu.... http://..../geoserver/wfs?request=GetFeatrue&featrueType=sigma:gnis_pop text/x-bxml; subtype=gml/3.1.1 &outputFormat=text/x-bxml; subtype=gml/3.1.1 00000000 01 42 58 4d 4c 00 ff 0d 0a 00 00 08 03 00 00 05 |.BXML.ÿ.........| 00000010 55 54 46 2d 38 20 03 31 2e 30 ff 00 30 01 10 63 |UTF-8.1.0ÿ.0..c| 00000020 69 74 3a 67 6e 69 73 5f 70 6f 70 2e 73 68 70 03 |it:gnis_pop.shp.| 00000030 00 30 01 05 78 6d 6c 6e 73 05 01 10 fa 18 68 74 |.0..xmlns...ú.ht| 00000040 74 70 3a 2f 2f 77 77 77 2e 67 76 73 69 67 2e 6f |tp://www.gvsig.o| 00000050 72 67 2f 63 69 74 30 01 0b 78 6d 6c 6e 73 3a 78 |rg/cit0..xmlns:x|.....

32 Overview - Introducción - Librería BXML - Integración con gvSig - Evaluación de rendimiento en gvSIG - Integración con GeoServer - Evaluación de rendimiento en GeoServer - Conclusiones

33 Rendimiento - Servir Binary GML es entre 5.6 y 15 veces más rápido - La mayor diferencia se nota con la codificación binaria de las geometrías. Mientras mayores las geometrías, mejor el rendimiento.

34 Tasa de transferencia -La tasa de transferencia se incrementa notablemente, reduciendo el ancho de banda utilizado Por ej, 40 MB/s en lugar de 4,4 MB/s para, una mejora de 8x - O lo que es lo mismo, 20 a 30 mil Features por segundo en lugar de 2300 a 2700...

35 Escalabilidad - Lo que redunda en una multiplicación por 10, 12, o más de la capacidad del servidor para atender peticiones simultáneas.

36 Overview - Introducción - Librería BXML - Integración con gvSig - Evaluación de rendimiento en gvSIG - Integración con GeoServer - Evaluación de rendimiento en GeoServer - Conclusiones

37 Solución completa - La librería gvSIG BXML ofrece a GeoServer una mejora de ~6x a ~15x al servir la información - Una mejora a gvSIG de ~5x a ~6x en el parseo inicial de Features - El uso de GML Binario como formato de intercambio aporta una mejora de rendimiento de entre ~6x y ~10x - Sin sacrificar la interoperabilidad, el uso de estándares abiertos, etc - Y el uso de índices espaciales sobre GML Binario mejora el rendimiento en hasta 200x (por ej., la diferencia entre esperar menos de 1 segundo, o 3 minutos para renderizar un mapa)

38 BXML es... - Una realidad! - Un estándar, o recomendación, del OGC - Una API para Java, y una implementación de calidad, probada con la implementación de referencia en C para asegurar su correctitud. - Para el SIG de escritorio, una excelente alternativa abierta al formato de archivo ¨estándar de facto¨, y una solución al redimiento como cliente IDE - Para el Servidor, una forma de incrementar notablemente la escalabilidad sin sacrificar la interoperabilidad - Para la Comunidad, una oportunidad de potenciar la IDEs, los esquemas de datos comunitarios, y la comunicación entre procesos finalmente con un rendimiento aceptable.

39 Si te quedaste pensando... Ok, una mejora de 10 veces en rendimiento no parece tan impresionante... Veamoslo de esta forma, ¿qué resulta más conveniente?: multiplicar por diez el número de servidores, o instalar una librería que es Software Libre. Gratis... y bonita.

40 MUCHAS GRACIAS! Gabriel Roldán ¿Preguntas?


Descargar ppt "GvSig y GeoServer: Rendimiento óptimo utilizando GML binario Gabriel Roldán 2009-09-30."

Presentaciones similares


Anuncios Google