Introduction⚓︎
The Application Hub is a comprehensive and modular platform delivering SaaS products, designed to cater to the diverse and multifaceted needs of the EO community. It is crafted to support a wide array of stakeholders, from developers and service providers integrating cutting-edge algorithms to researchers harnessing computational power, and analysts requiring clear and concise visualizations.
At the heart of the Application Hub is the ability to manage the delivery of work environments and tools for a wide range of user tasks, such as develop, host, execute, and perform exploratory analysis of EO applications, all managed within a single, unified Cloud infrastructure.
About the Application Hub Building Block⚓︎
The Application Hub, leveraging Kubernetes and JupyterHub, creates a robust, scalable, and user-centric platform for Earth Observation (EO) applications and analytics. Kubernetes ensures scalable operation of containerized applications by managing deployment, operation, and traffic distribution, while JupyterHub orchestrates the launching, scaling, and management of application instances, acting as the primary gateway for user requests. The Hub uses dedicated namespaces for each application pod, ensuring organization, security, and isolation. It also dynamically configures application pods based on the task, and personalizes the experience based on user profiles through Kube Spawner. This design ensures the Application Hub remains modular, scalable, and capable of catering to the dynamic requirements of EO tasks.
Typically, the Application Hub provides access to platforms and web apps in a Software-as-a-Service mode. Users can engage with containerized Interactive Graphical Applications (IGAs), specialized geospatial data exploration web apps, and customizable dashboards. This allows users not only to explore and analyze results but also to execute new applications or analyses and customize their computing experiences, all accessed from the same integrated Hub interface. Ultimately, this enhances user experience, optimizes software usage costs, and promotes ease of use, making it more accessible to the broader EO community.
Capabilities⚓︎
The Application Hub is designed to serve a diverse set of users, each with unique needs and workflows. This section outlines various user scenarios to demonstrate the Hub’s versatility and adaptability to manage the delivery of work environments and tools meeting the demands of different stakeholders, from developers and service providers to researchers and the broader Earth Observation (EO) community.
Development Scenario⚓︎
Stakeholder: Service Providers and Developers
In this scenario, developers access the Application Hub to access a software development environment. They can utilize the tools and resources provided to them in SaaS mode to create Earth Observation applications using languages such as Python, R, or Java. Specific libraries like SNAP and GDAL aid in processing and analysis.
In this scenario, developers can also package their EO applications along with necessary configurations and dependencies. Overall, developers can integrate, build, test, and debug their EO applications seamlessly before transitioning to the deployment phase, aided by features like version control, continuous integration, and GitLab integration.
Execution Scenario⚓︎
Stakeholder: End-users (Scientists, Researchers, EO Community Members)
Once applications are operational, they are made available to a wider audience benefiting from the platform’s data holdings. End-users can specify input parameters and locate compatible datasets from the data catalog. The hosted applications in this scenario typically manage the execution process, providing real-time updates on processing status, resource consumption estimates, and expected completion times.
Exploratory Analysis⚓︎
Stakeholder: End-users and Developers
In this scenario, users engage with the Application Hub’s SaaS products designed for in-depth interaction, analysis, and execution of EO applications. These include containerized Interactive Graphical Applications (IGAs), specialized geospatial data exploration web apps, notebooks, or customizable dashboards. The platform enables users to explore and analyze the results generated from the execution of EO applications and also execute new applications or analyses from within the same environment. This means that users can customize their computing experiences by selecting and executing specific applications, tools, or environments that align with their unique analytical needs.