1. In a computing environment, a method comprising: using a computing device for: processing GPS data into a track of segments as partitioned by a spatial grid such that each segment has a corresponding grid cell; and for each segment, inserting data representative of that segment into a temporal index associated with the grid cell corresponding to that segment, including creating an entry for that segment based on an end time of that segment and an entry based on a start time of that segment; searching for at least one track of GPS data using the temporal index.