System and method for geo-location data type searching in an on demand environment
First Claim
1. A method of retrieving, from a database containing a list of records, a result set of the list of records located within a user defined distance from a target point, each record in the list of records having a compound geo-location data type including a latitude field and a longitude field, the method comprising:
- generating, with a processor, a circle around the target point with a radius corresponding to the user defined distance;
identifying, with the processor, a result set of records having a geo-location within the circle,wherein identifying comprises treating the first data field and the second data field as a single data element;
filtering out any records outside of the circle using regular indexes on the latitude and longitude fields of the records to form a first subset of the list of records;
computing distance values for each of the first subset of the list of records using one of;
the haversine formula;
the spherical law of cosines; and
the Euclidian distance theorem;
filtering out any records from the first subset of the list of records with a respective distance value greater than the radius corresponding to the user defined distance to form the result set from any remaining records; and
presenting the result set to a user on a display screen.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods and systems are provided for retrieving, from a database containing a list of records, a subset of the list of records located within a user defined distance from a target point, each record in the list of records having a compound geo-location data type including a first data field and a second data field. The method involves generating a circle around the target point; identifying records having a geo-location within the circle; including the identified records in a result set; and presenting the result set to a user on a display screen. The method further includes treating the first data field and the second data field as a single data element.
-
Citations
17 Claims
-
1. A method of retrieving, from a database containing a list of records, a result set of the list of records located within a user defined distance from a target point, each record in the list of records having a compound geo-location data type including a latitude field and a longitude field, the method comprising:
-
generating, with a processor, a circle around the target point with a radius corresponding to the user defined distance; identifying, with the processor, a result set of records having a geo-location within the circle, wherein identifying comprises treating the first data field and the second data field as a single data element; filtering out any records outside of the circle using regular indexes on the latitude and longitude fields of the records to form a first subset of the list of records; computing distance values for each of the first subset of the list of records using one of; the haversine formula; the spherical law of cosines; and the Euclidian distance theorem; filtering out any records from the first subset of the list of records with a respective distance value greater than the radius corresponding to the user defined distance to form the result set from any remaining records; and presenting the result set to a user on a display screen. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. In a multi-tenant computing environment of the type including a multi-tenant database, a method of searching for a subset of records based on distance from a user defined target location, the method comprising:
-
formatting each record in the list of records with a compound geo-location data type including a first data field and a second data field; constructing a query including search criteria and a distance value; identifying, with a processor, a first set of data for a particular tenant within the multi-tenant database which satisfies the search criteria; defining, with the processor, a target point and a radius R; generating, with the processor, a circle having a radius R around the target point; identifying, with the processor, a second set of data records having a geo-location within the circle, wherein the second set of data is a subset of the first set of data; including, with the processor, the identified records in a result set; and presenting the result set to a user on a display screen. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer application for retrieving, from a database containing a list of records, a result set of the list of records located within a user defined distance from a target point, each record in the list of records having a compound geo-location data type including a latitude field and a longitude field, the computer application embodied in a non-transitory medium for operation by a computer processor for performing the steps of:
-
generating a circle around the target point with a radius corresponding to the user defined distance; identifying records having a geo-location within the circle, wherein identifying comprises treating the first data field and the second data field as a single data element; filtering out any records outside of the circle using regular indexes on the latitude and longitude fields of the records to form a first subset of the list of records; computing distance values for each of the first subset of the list of records using one of; the haversine formula; the spherical law of cosines; and the Euclidian distance theorem; filtering out any records from the first subset of the list of records with a respective distance value greater than the radius corresponding to the user defined distance to form the result set from any remaining records; and presenting the result set to a user on a display screen.
-
Specification