Jupyteo
Integrated Development Environment
Online Integrated Development Environment for Earth Observation Data processing
Linux
Daniel Zinkiewicz
Michal Bednarczyk

EO data processing, cloud-based IDE

Create algorithms for Earth Data Observation processing and analysis, use many scripting languages, present results on the map, use web mapping services. Do it online for many users in fully scalable cloud-based environment.

Basic assumptions

Jupyter Notebook

Jupyteo is a high performance, cloud-based Integrated Development Environment based on Jupyter Notebook.

Docker

Jupyteo is highly integrated with Docker isolation approach in services propagation.

Earth Observation

It is an environment for Earth Observation data processing: data scripting, algorithms building, solutions validation and dynamic testing of developing part of a processing code.

Integration

Jupyteo as an “all-in-one” software integrates most common EO-based, GEO and GIS tools, software, libraries and toolboxes for EO data (SNAP, OTB), vector and raster data processing (GrassGIS, GDAL, PostGIS, etc.), visualisation and presentation in the most suitable form.

Based on Jupyter approach and extended Python environment integrated with Docker prerogative it allows for interconnection with most of existing services (WPS, WMS, TEP interfaces) and tools for geodata storage and distribution (PostGIS, Geoserver, Mapnik, etc.).

Jupyteo and Docker Environment













Jupyteo Cloud Infrastructure

Jupyteo Architecture

Own Applications - Notebooks

Jupyteo based on configuration, customization, adaptation and extension of Jupyter, Docker Swarm components provides highly configured and optimised software for any EO cloud infrastructure. It allows to make development and EO data processing tasks with high performance in place without data transfer.

Jupyteo Docker Stack

Own Virtual Machine

On infrastructure (cloud) side Jupyteo is built on top of Docker environment. It integrates Docker, Docker Compose, Docker Engine, Docker Machine, Docker Swarm composed in separated Jupyteo Docker Stacks. Every user works with own virtual machine.

Grafana

Use Docker Engine

The cluster management and orchestration features embedded in the Docker Engine are built into Jupyteo IDE environment.

Portainer

Scale for many users and services

Based on Docker infrastructure Jupyteo IDE allows for high performance EO data processing with environment isolation for a large scale of users and services.

Jupyteo is based on the assumptions worked out by WASAT and UWM presented first at Big Data from Space conference in 2017 (BiDS’17): ”JUPYTEP IDE AS A CONCEPT OF INTEGRATED DEVELOPMENT ENVIRONMENT FOR EO DATA CLOUD-BASED PROCESSING SOLUTIONS” by Daniel Zinkiewicz, Jacek Rapiński and Michał Bednarczyk and described in details in research paper Jacek Rapinski, Michał Bednarczyk, Daniel Zinkiewicz, JupyTEP IDE as an Online Tool for Earth Observation Data Processing. Remote Sens. 2019, 11, 1973. doi: 10.3390/rs11171973. The platform is being used by users from different countries and different institution.

Use Jupyteo for Earth Observation data processing!

Jupyteo is designed as a part of the EO data cloud infrastructure

EO tools integrations

It allows for significant leveraging of the available EO developer tools (readers, mappers, libraries) to perform EO data specific tasks.

Interoperability

It extends an ability to integrate the notebooks in existing solutions/platforms, providing an added value to the existing environment.

Multi-user/Multi-tenancy

it serves as a web-based solution to multiple users, or - going further - to different groups of users (each as a “tenant”) with a proper isolation and mutualisation of cloud resources.

Scalability

It provides an ability to process a growing amount of EO data by an expanding community of developers and scientists.

Parallelization

It allows for making use of a large amount of resources to perform more work in the same time or the same work in a shorter period.

Jupyteo Usage







Main Functionallity

The full adaptation and reuse of most popular tools and components is the main paradigm in Jupyteo IDE development. Jupyteo and Jupyter notebooks as an implemented set of reusable EO data toolbox components aim for integration in the EO cloud platforms in Europe and beyond.

Where to Find Jupyteo

Beta versions of Jupyteo are accessible on

where user can test them and made his EO-based Jupyter notebooks.