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.
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. 9. The method of claim 1 wherein creating the entry for the segment based on the end time comprises using the end time to determine a key to an end time index, with a value associated with the key comprising a pointer to a start time index containing a start time entry for that segment, and wherein creating the entry for that segment based on the start time comprises using the start time as a key to the start time index, with a value associated with the key comprising the end time of that segment and an identifier of the track.