upstream processing: - for every ride, query gmaps for bike directions from start lat/lng to end lat/lng (cache these lookups) - store ride distance in parquet aggregate files