The State of the GeoServer project

1,067 views
963 views

Published on

FOSS4G 2011 presentation on the status of the GeoServer open source project

Published in: Technology, Art & Photos
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,067
On SlideShare
0
From Embeds
0
Number of Embeds
11
Actions
Shares
0
Downloads
26
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

The State of the GeoServer project

  1. 1. The State of GeoServer Andrea Aime GeoSolutions Justin Deoliveira Opengeo
  2. 2. Project Activity
  3. 3. Project Activity
  4. 4. Project Activity
  5. 5. Project Activity
  6. 6. Project Activity
  7. 7. Project Activity
  8. 8. Project Activity
  9. 9. Project Activity
  10. 10. Project Activity
  11. 11. Project Activity
  12. 12. Two Years in Review
  13. 13. Rendering
  14. 14. Advanced Projection Handling Dateline wrapping (Plate Caree, Mercator) Cut polygons to valid area (Mercator, Transverse Mercator, Polar)
  15. 15. Geometry Transformations Drop shadow<PolygonSymbolizer> <Geometry> <ogc:Function name="offset"> <ogc:PropertyName>the_geom</ogc:PropertyName> <ogc:Literal>0.00004</ogc:Literal> <ogc:Literal>-0.00004</ogc:Literal> </ogc:Function> <Geometry></PolygonSymbolizer>
  16. 16. Geometry Transformations<PointSymbolizer> <Geometry> <ogc:Function name="endPoint"> <ogc:PropertyName>the_geom</ogc:PropertyName> </ogc:Function> </Geometry> <Graphic> <Mark> <WellKnownName>shape://carrow</WellKnownName> </Mark> <Rotation> <ogc:Function name="endAngle"> <ogc:PropertyName>the_geom</ogc:PropertyName> </ogc:Function> </Rotation> </Graphic></PointSymbolizer> Pointed Arrows
  17. 17. Rendering Transformations <FeatureTypeStyle> <Transformation> <ogc:Function name="gs:Contour"> <ogc:Function name="parameter"> <ogc:Literal>data</ogc:Literal> </ogc:Function> <ogc:Function name="parameter"> <ogc:Literal>levels</ogc:Literal> <ogc:Literal>1100</ogc:Literal> <ogc:Literal>1200</ogc:Literal> <ogc:Literal>1300</ogc:Literal> <ogc:Literal>1400</ogc:Literal> <ogc:Literal>1500</ogc:Literal> <ogc:Literal>1600</ogc:Literal> <ogc:Literal>1700</ogc:Literal> <ogc:Literal>1800</ogc:Literal> </ogc:Function> </ogc:Function> </Transformation> </FeatureTypeStyle>
  18. 18. SLD Parameter Substitution <Mark> <WellKnownName> <ogc:Function name="env"> <ogc:Literal>mark</ogc:Literal> <ogc:Literal>square</ogc:Literal> </ogc:Function> </WellKnownName> <Fill>#FF0000</Fill> </Mark> Normal output ...&env=mark:star
  19. 19. Unit of Measure Support1:20K 1:10K 1:5K
  20. 20. Unit of Measure Support<Rule> <MinScaleDenominator>18000</MinScaleDenominator> <LineSymbolizer> <Stroke> <CssParameter name="stroke-width"> <ogc:Literal>1</ogc:Literal> </CssParameter> </Stroke> </LineSymbolizer></Rule><Rule> <MinScaleDenominator>8000</MinScaleDenominator> <MaxScaleDenominator>18000</MaxScaleDenominator> <LineSymbolizer> <CssParameter name="stroke-width"> <ogc:Literal>2</ogc:Literal> </CssParameter> </Stroke> </LineSymbolizer></Rule><Rule> 1:20K <MaxScaleDenominator>8000</MaxScaleDenominator> <LineSymbolizer> <Stroke> <CssParameter name="stroke-width"> <ogc:Literal>4</ogc:Literal> </CssParameter> 1:10K </Stroke> </LineSymbolizer></Rule> 1:5K
  21. 21. Unit of Measure Support<Rule> <LineSymbolizer uom="http://www.opengeospatial.org/se/units/metre"> <Stroke> <CssParameter name="stroke-width"> <ogc:Literal>5</ogc:Literal> </CssParameter> </Stroke> </LineSymbolizer></Rule> 1:20K 1:10K 1:5K
  22. 22. Label Obstacles<PointSymbolizer> <Graphic> <ExternalGraphic> <OnlineResource xlink:type="simple" xlink:href="..." /> <Format>image/png</Format> </ExternalGraphic> <Size>32</Size> </Graphic> <VendorOption name="labelObstacle">true</VendorOption></PointSymbolizer>
  23. 23. And More Rendering● Point label displacement● DPI scaling● Faster Recode/Categorize● Performance
  24. 24. Raster
  25. 25. Faster Raster ReprojectionPiecewise linearapproximation
  26. 26. Faster Raster Reprojection
  27. 27. Non Georeferenced Rasters EPSG:404000
  28. 28. Image Mosaic Improvements● Attach attributes to tiles● Filter by attribute● Filter by time/elevation● Autoindexing of directories● External indexes ○ any GT datastore ○ third party indexes● Multithreaded loading of granules● Footprint support
  29. 29. Automatic Image PyramidsAutomatically: ● recognize gdal_retile structure ● building mosaic index
  30. 30. ImageIO-Ext Improvements● BigTiff support ○ Read/Write ○ Overviews● Improved GeoTiff ○ external overviews ○ new plugin underway● Improved JPEG2000 support ○ kakadu based ○ additional code params ○ fine grain control on writing● Improved Tiff metadata management ○ wiser caching ○ less memory - more speed
  31. 31. Direct Raster Rendering Path● Hit JAVA2D Bottleneck – Scalability Issue ○ http://bit.ly/qJcZBi ○ http://bit.ly/oe0CHo● Created direct raster rendering path with JAI ○ Drop-in replacement (1 raster at time) ○ 2x speedup ○ 2x/3x scalability improvement under heavy load ○ Enabled/Disabled via Java Switch
  32. 32. And More Raster● Oracle GeoRaster● JPEG 2K improvements● More Concurrency● Simplified/Shrunk Raster Operation Chains
  33. 33. Web UI
  34. 34. Web UI CRS Area of Validity DisplayEPSG:32612, UTM 12N EPSG:32614, UTM 14N
  35. 35. Web UI Legend previewLog viewer
  36. 36. Web UI Graphical file chooser
  37. 37. Application Schema Support● Recent development by CSIRO● Full extension status● Feature chaining, polymorphism● Better performance, memory use● GML 3.2, WMS (beta)
  38. 38. Projections Robinson Mollweide Winkel Tripel Eckert IVEquidistant conic
  39. 39. Web Map Service (WMS)
  40. 40. Time and Elevation
  41. 41. Time and Elevation...&request=GetMap &time=2001-08-01T18:00:00Z/2001-09-01T00:00:00Z ...&request=GetMap &time=2003-08-01T18:00:00Z/2003-10-01T00:00:00Z
  42. 42. Animation Albacore Tuna catches, 1986 to 2000.(Params injected in a complex sql view computing each pixel) ...&request=GetMap &format=image/gif;subtype=animated &aparam=viewparams:YR_TA &avalues=1986,1987,...,2000 &format_options=gif_loop_continuosly:true
  43. 43. Animation...&request=GetMap &format=image/gif;subtype=animated &aparam=bbox &avalues=-180,0,0,90, -165,0,14,90...
  44. 44. WMS Cascading
  45. 45. GeoWebCache Transparent cachingDisk usage control
  46. 46. And More WMS● WMS 1.3● SE 1.1 / SLD 1.1● SLD GetStyles
  47. 47. Web Coverage Service (WCS)
  48. 48. WCS Request Builder
  49. 49. WCS Limits
  50. 50. Web Processing Service (WPS)
  51. 51. Web Processing Service Full extension status Lots of new processes
  52. 52. Georectification Process
  53. 53. Georectification Process
  54. 54. SQL ViewsLayers from SQL request=GetMap &layers=continents &viewparams=region:2
  55. 55. Virtual ServicesService and catalog views per workspace
  56. 56. Control Flow● OWS request throttling based on: ○ Number of concurrent requests total ○ Number of concurrent requests per: ■ service ■ operation ■ output format ■ user● Requests queued when limits reached
  57. 57. Control Flow
  58. 58. Control Flow
  59. 59. Cross Layer Filtering<wfs:Query typeName="sf:bugsites"> <ogc:Filter> <ogc:Intersects> <ogc:PropertyName>the_geom</ogc:PropertyName> <ogc:Function name="querySingle"> <ogc:Literal>sf:restricted</ogc:Literal> <ogc:Literal>the_geom</ogc:Literal> <ogc:Literal>cat = 3</ogc:Literal> </ogc:Function> </ogc:Intersects> </ogc:Filter></wfs:Query>
  60. 60. Monitoring and Auditing
  61. 61. Teradata DataStore
  62. 62. Whats coming?
  63. 63. On the Horizon● WFS 2.0● DBconfig - Catalog and config in a database● Scripting - Python, JavaScript, Scala, Groovy (GeoScript)● GSS / GeoGit
  64. 64. Thanks!Questions? http://geoserver. org
  65. 65. Oh Wait! Its trivia time. What was the originalname of the organizationthat founded GeoServer? ?

×