Automated Distributed System Design by Partitioning on Geospatial Data