- Exclusively based on Open Source Software like
-
GDAL for raster processing
-
MapServer for OGC services support
-
EOxServer for Earth Observation extension
-
MapCache for extremely well performing WMTS and WMS access
- OGC's WMTS and WMS Standards
- Central configuration by ngEO Controller
- Data ingested by ngEO FEED
- Authorization from ngEO Web Server
- Processing of raster data: geo-referencing, footprint, projection, alpha band, tiling, overviews, compression
Preprocessing
- Input Geographic Metadata for Geo-referencing
- Footprint polygon - footprint
- Regular grid of tiepoints - regularGrid
- Pre-georeferenced images
- rectifiedBrowse
- modelInGeotiff
- Optimizations
- Footprint generation
- Re-projection
- Addition of alpha-channel
- Internal tilling
- Overviews
- Compression
Interfaces with the WEBC& Generic Clients
Interfaces with the WEBS
- Authorization invoked by BROW
- Authentication done on proxy
- Patch to MapCache
- Simple Python script to query WEBS
- Only RESTRICTED and PRIVATE layers
- Username from HTTP header e.g. SP-Person-Identifier
- Authorization based on browse layer & username
- Memcached to cache decisions
Command Line Interfaces
Ingest, Export, Import, and Delete
$ python manage.py ngeo_ingest <browse-report-xml>
$ python manage.py ngeo_export --layer=<layer-id> | --browse-type=<browse-type> [--start=<start-date-time>] [--end=<end-date-time>]
$ python manage.py ngeo_import <package-path>
$ python manage.py ngeo_delete --layer=<layer-id> | --browse-type=<browse-type> [--start=<start-date-time>[--end=<end-date-time>]
Technology Baseline
- CentOS 6 64bit repositories (base, extras, updates) based on RHEL 6
- Apache HTTP server 2.2: httpd, mod_wsgi
- PostgreSQL 8.4: postgresql-server, postgresql
- Python 2.6: python, python-lxml, python-psycopg2, pytz
- EPEL & ELGIS repositories
- Django 1.4: Django14
- PROJ.4 4.8: proj
- GDAL 1.9: gdal, gdal-python
- PostGIS 1.5: postgis
- EOX repository
- libxml2 2.7: libxml2, libxml2-python - GML patch
- MapServer 6.2: mapserver, mapserver-python
- MapCache 1.2: mapcache - authz patch
- Memcached 1.4: memcached
- EOxServer 0.3: EOxServer
- ngeo.b.core 2.0: ngEO_Browse_Server - 1.0 deprecated
Development & Testing
- Git hosted on GitHub
- Vagrant & VirtualBox (see HOWTO)
- Jenkins CI
- Python/Django unit test framework
- Performance tests using JMeter
- Integration testing on OpenStack platform provided by Task 5
Status
- Finished with implementation
- Deliverables
- DDS 1.4 20 May 2014
- IOM 1.5 23 May 2014
- SSTP 1.4 23 May 2014
- SSTR TBD
- Open Jira issues
- Warranty
Further EOX Contributions
- Background & Overlay Maps Service Operationhttp://esa.maps.eox.at
- Provision of integration and validation platform for Task 4
- Multi-Mission Hosting & Validation (Task 5)
- 3D Browse Extension (V-Manip project)
EOX::Maps
OpenStack for Task 4
Task 5
V-Manip