DEV Community

Cover image for Revolutionize your Satellite Data Acquisition with ee-satellites: A Leap Forward in Remote Sensing

Revolutionize your Satellite Data Acquisition with ee-satellites: A Leap Forward in Remote Sensing

Francesco on August 27, 2023

“With data collection, ‘the sooner the better’ is always the best answer.” ~ Marissa Mayer, IT executive and co-founder of Lumi Labs, former Yahoo...
Collapse
 
cwprogram profile image
Chris White

The code was certainly interesting to look over. One recommendation I'd make is consider using ProcessPoolExecutor versus the threaded version. Multi-process tends to perform better when given CPU bound tasks (which it looks like you're doing) due to multi-core CPUs being able to divide the work among the individual processes.

Collapse
 
amatofrancesco99 profile image
Francesco • Edited

Thank you for your thoughtful recommendation! In the case of the ee-satellites library, I've actually opted for multi-threading due to the heavy I/O requests involved in interacting with Google Earth Engine (the doc: concurrent.futures).
Since the primary bottleneck is waiting for I/O operations to complete, multi-threading allowed to efficiently manage these tasks and keep the data acquisition process smooth and responsive. While multi-processing can excel in CPU-bound scenarios, the library benefits greatly from the concurrency and efficient I/O handling that multi-threading provides. I truly appreciate your input and am excited to continue improving the library's performance.

Collapse
 
xx_pravettoni_69_xx profile image
Carcarlo

I downloaded. Is shit