Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Publishing maritime data with GeoServer

Publishing maritime data with GeoServer

This presentation will describe the architecture put in place, and the challenges that GeoSolutions had to overcome to publish maritime data through GeoServer OGC services (WMS, WFS and WPS), finding the correct balance that maximized ingestion performance and visualization performance. We integrated with a streaming processing platform that took care of most of the processing and storing of the data in a storage that allows GeoServer to efficiently query for the latest available features, respecting all the authorization policies that were put in place. A few custom GeoServer extensions were implemented to handle the authorization complexity, the advanced styling needs and data integration needs of maritime data.

Simone Giannecchini

October 04, 2021
Tweet

More Decks by Simone Giannecchini

Other Decks in Technology

Transcript

  1. GeoSolutions • Offices in Italy & US, Worldwide clients •

    30+ collaborators, 25+ Engineers • Our products • Our Offer Enterprise Support Services Deployment Subscription Professional Training Customized Solutions GeoNode
  2. Affiliations We strongly support Open Source, it Is in our

    core We actively participate in OGC working groups and get funded to advance new open standards We support standards critical to GEOINT
  3. Maritime Data Overview • Maritime Data is produced by a

    variety of sources: • Ships positions AIS, SAR, VMS, … • Maritime assets ports, navigational aid systems, …
  4. Maritime Data Overview • Provide a foundation for informed decision-making

    applications: • Maritime traffic monitoring • Search and rescue operations • Environmental marine disasters monitoring • … • Several datasets need to be combined: • Fisheries data • Ships registries information • …. Interoperability!
  5. Our Use Case in Numbers • The maritime data is

    provide as: • Streams of data, landing on Kafka topics • Enrichment data files, pushed in the system • In 24 hours: • We receive up to 50 millions ship positions • We handle up to 500K different ships • Peaks of activity during daylight: • Up to 2500 messages per second!
  6. Implemented Scenario • We have implemented the following scenarios in

    GeoServer using WMS, WFS and WPS: • Visualize in real time ships positions • Density maps computation and visualization • Visualize in real time navigation to aid systems • Detected ships positions correlation and visualization • Electronic navigational charts publishing through WMS
  7. • Authorization rights need to be respected: • Different authorization

    rights will result: Authorization Rights In different views of maritime assets! t1 Ships Sensors SAT-AIS T-AIS User 1 can see all vessels positions. User 2 can only see SAT-AIS vessels positions. t1 t0 t0 t1 t1 t1 t0
  8. High Level System Architecture • The maritime data is provide

    as: • Streams of data, landing on Kafka topics • Enrichment data files, pushed in the system
  9. Data Ingestion Quick Overview • Finding the right balance between

    writing and reading: • Indexes make readings more performant, but make writings slower! • Processing uses user defined functions: • Filtering Creating layers for different views • Computations Create new attributes • Transformations Transform existing attributes • Processing was implemented with Kafka Streams.
  10. Generating Geometries • Storing numerical latitudes and longitudes: • Allow

    us to use efficient numerical indexes • Geometries are generated on the fly GeoServer side • OGC spatial operators are supported
  11. Advanced Authorization • Each position is associated with a list

    of authorized roles: • GeoServer injects the authorization rules when querying the data! • GeoServer SQL views are sometimes used for better control of the final query. • Administrators can configure pre-authorized caches: • GeoServer takes care of the routing!
  12. Traffic Density Maps • Traffic density maps are computed per

    ship type and different periods of time:
  13. Real Time Ships Positions • Real time maritime picture displayed

    using a style that color each vessel according to its type:
  14. Real Time Ships Positions • Real time maritime picture displayed

    using a style that color each vessel according to the age:
  15. Real Time Ships Positions • Real time maritime picture displaying

    only fishing vessels colored based on their fishing gear:
  16. Real Time Ships Positions • Real time maritime picture displaying

    only cargo vessels, some of them highlighted:
  17. Next Steps • Tracks computation several years of data! •

    Billions of positions to deal with • Authorization rights are still part of the game • More advanced computations: • On the fly zones intersections detection • Vessel metrics • … • Better integration with “big data technologies”: Integrating with historical data!