A comprehensive study comparing cloud-optimized (Zarr) vs traditional download workflows for satellite water quality monitoring of Lake Naivasha, Kenya.
# Lake Naivasha Cloud-Optimized Monitoring Study
A comprehensive study comparing cloud-optimized (Zarr) vs traditional download workflows for satellite water quality monitoring of Lake Naivasha, Kenya.
## Project Overview
This project evaluates whether cloud-optimized streaming workflows can outperform traditional download-first approaches for near real-time chlorophyll-a monitoring using Sentinel-2 satellite data.
### Key Research Questions
1. How much faster is cloud-optimized processing compared to traditional downloads?
2. How much bandwidth/storage can be saved with streaming approaches?
3. Are the results (Chl-a values) equivalent between both workflows?
4. What are the seasonal patterns of Chl-a in Lake Naivasha?
## Project Structure
```
lake-naivasha-monitoring/
├── config/
│ ├── config.yaml # Main configuration
│ └── test_scenes.csv # Test scenes for comparison
├── notebooks/
│ ├── 01_cloud_optimized_workflow.ipynb # Zarr streaming workflow
│ ├── 02_traditional_workflow.ipynb # Traditional download workflow
│ ├── 03_comparison_workflow.ipynb # Comparison orchestrator
│ └── 04_seasonal_analysis.ipynb # Seasonal analysis
├── src/
│ ├── config.py # Configuration loader
│ ├── data_discovery.py # STAC search utilities
│ ├── metrics.py # Metrics calculation
│ └── visualization.py # Plotting utilities
├── data/
│ ├── raw/
│ │ ├── traditional/ # Downloaded scenes
│ │ └── cloud_optimized/ # Zarr references
│ ├── processed/
│ │ └── metrics/ # Output metrics CSVs
│ └── results/
│ ├── comparisons/ # Comparison analysis
│ └── seasonal_analysis/ # Seasonal trends
└── environment.yml
```
## Setup
### 1. Create Conda Environment
```bash
cd lake-naivasha-monitoring
conda env create -f environment.yml
conda activate lake-nai …