IP Library Granted Patent US 9,846,735
Granted Patent B2
US 9,846,735 · App. 14/113,179 · Granted Dec 19, 2017

Method and apparatus for processing probe data

Inventors: Yekesa Kosuru (Westford, MA); Alexey Yakubovich (Buffalo Grove, IL); Senthil Natesan (Bartlett, IL); Rajiv Synghal (Concord, CA); Boris Lublinsky (Naperville, IL)
Assignee: HERE Global B.V.
G06F17/30595G01C21/32
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,846,735
App. No.
14/113,179
Granted
Dec 19, 2017
Kind
B2
Abstract

An approach is provided for providing a unified extensible platform for overall probe data and storage. The approach comprises causing, at least in part, a storage of probe data in one or more information spaces, one or more namespaces of the one or more information spaces, or a combination thereof. The approach further comprises determining one or more nodes for processing the probe data based, at least in part, on one or more context criteria, the one or more nodes associated with the one or more information spaces. The approach also comprises determining to provide access to the processed probe data via the one or more information spaces, the one or more namespaces, or a combination thereof.

Claims (78)

1. A method comprising:

receiving, by an apparatus, probe data points related to a plurality of mapping services;

processing, by a plurality of mappers in the apparatus in parallel, the probe data points as belonging to tiles with respect to a timestamp based, at least in part, on one or more context criteria, wherein each of the tiles represents a geospatial extent that is a bounding box encloses mapping data;

for every one of the probe data points, assigning a respective tile and the timestamp to the probe data point as a respective compound key, wherein the respective compound key is shared by probe data points belonging to the respective tile at the timestamp;

in response to a mapping query from a user device via a network to the mapping services, retrieving, by the apparatus, an administrative area polygon;

determining, by the apparatus, a set of the tiles enclosing the polygon;

filtering, by the apparatus, for a subset of the probe data points corresponding to the set of the tiles based, at least in part, on the mapping query;

shuffling and sorting the subset of the probe data points to a plurality of reducers in the apparatus per the respective compound key;

for every one of the set of the tiles, writing by a respective one of the reducers probe data points sharing the respective compound key into the respective tile; and

initiating, by the apparatus, a presentation consisting of the set of the tiles for the mapping query on a user interface of the user device.

2. A method of claim 1 , further comprising:

receiving the probe data points continuously, periodically, according to a schedule, on demand, or a combination thereof from one or more vendors, one or more devices, or a combination thereof;

converting the probe data points into a consistent internal representation; and

processing the probe data points in the consistent internal representation into the tiles.

3. A method of claim 1 , further comprising:

dividing the processing of the probe data points corresponding to the set of the tiles per tile; and

executing the divided processing in parallel.

4. A method of claim 1 , further comprising:

normalizing the probe data points based, at least in part, on one or more schemas associated with the one or more information spaces, the one or more namespaces, or a combination thereof.

5. A method of claim 1 , further comprising:

processing source information associated with the probe data points to determine one or more weighting values for at least a portion of the probe data points,

wherein the probe data points is processed based, at least in part, on the weighting value.

6. A method of claim 1 , comprising:

initiating a storage of the probe data points in one or more information spaces, a storage of the probe data points in one or more namespaces of the one or more information spaces, or a combination thereof, based, at least in part, on the tiles;

determining one or more nodes for processing the probe data points based, at least in part, on the tiles, the one or more nodes associated with the one or more information spaces; and

providing access to the processed probe data points via the one or more information spaces, the one or more namespaces, or a combination thereof, based, at least in part, on the tiles,

wherein the storage, the processing, or a combination thereof of the probe data points is based, at least in part, on the tiles.

7. A method of claim 1 , further comprising:

processing the probe data points to determine one or more anomalies in mapping data associated with the one or more mapping services; and

initiating one or more actions to verify, to flag, to correct, or a combination thereof the one or more anomalies,

wherein the mapping query includes traffic obstruction, one or more maps enhancements, pedestrian mapping, personal map layer information, or a combination thereof.

8. A method of claim 7 , further comprising:

updating the mapping data based, at least in part, on the one or more anomalies, the one or more actions, or a combination thereof.

9. A method of claim 7 , further comprising:

generating a report, an alert, or a combination thereof of the one or more anomalies.

10. A method of claim 7 , wherein the mapping data includes, at least in part, navigation data, traffic data, pedestrian data, map community data, or a combination thereof.

11. An apparatus comprising:

at least one processor; and

at least one memory including computer program code for one or more programs,

the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following,

receive probe data points related to a plurality of mapping services;

process, by a plurality of mappers in the apparatus in parallel, the probe data points as belonging to tiles with respect to a timestamp based, at least in part, on one or more context criteria, wherein each of the tiles represents a geospatial extent that is a bounding box encloses mapping data;

for every one of the probe data points, assign a respective tile and the timestamp to the probe data point as a respective compound key, wherein the respective compound key is shared by probe data points belonging to the respective tile at the timestamp;

in response to a mapping query from a user device via a network to the mapping services, retrieve an administrative area polygon;

determine a set of the tiles enclosing the polygon;

filter for a subset of the probe data points corresponding to the set of the tiles based, at least in part, on the mapping query;

shuffle and sort the subset of the probe data points to a plurality of reducers in the apparatus per the respective compound key;

for every one of the set of the tiles, write by a respective one of the reducers probe data points sharing the respective compound key into the respective tile; and

initiate a presentation consisting of the set of the tiles for the mapping query on a user interface of the user device.

12. An apparatus of claim 11 , wherein the apparatus is further caused to perform at least the following:

receive the probe data points continuously, periodically, according to a schedule, on demand, or a combination thereof from one or more vendors, one or more devices, or a combination thereof.

13. An apparatus of claim 12 , wherein the apparatus is further caused to perform at least the following:

execute the processing of the probe data points in parallel.

14. An apparatus of claim 11 , wherein the apparatus is further caused to perform at least the following:

normalize the probe data points based, at least in part, on one or more schemas associated with the one or more information spaces, the one or more namespaces, or a combination thereof.

15. An apparatus of claim 11 , wherein the apparatus is further caused to perform at least the following:

process source information associated with the probe data points to determine one or more weighting values for at least a portion of the probe data points,

wherein the processing of the probe data points is based, at least in part, on the weighting value.

16. An apparatus of claim 11 , wherein the probe data points relate, at least in part, to one or more mapping services, and the apparatus is further caused to perform at least the following:

initiate a storage of the probe data points in one or more information spaces, a storage of the probe data points in one or more namespaces of the one or more information spaces, or a combination thereof, based, at least in part, on the tiles;

determine one or more nodes for processing the probe data points based, at least in part, on the tiles, the one or more nodes associated with the one or more information spaces; and

provide access to the processed probe data points via the one or more information spaces, the one or more namespaces, or a combination thereof, based, at least in part, on the tiles,

wherein the storage, the processing, or a combination thereof of the probe data points is based, at least in part, on the tiles.

17. An apparatus of claim 11 , wherein the apparatus is further caused to perform at least the following:

process the probe data points to determine one or more anomalies in mapping data associated with the one or more mapping services; and

initiate one or more actions to verify, to flag, to correct, or a combination thereof the one or more anomalies.

18. An apparatus of claim 17 , wherein the apparatus is further caused to perform at least the following:

initiate one or more updates to the mapping data based, at least in part, on the one or more anomalies, the one or more actions, or a combination thereof.

19. A non-transitory computer-readable storage medium carrying one or more sequences of one or more instructions which, when executed by one or more processors, cause an apparatus to at least perform the following steps:

receiving probe data points related to a plurality of mapping services;

processing, by a plurality of mappers in the apparatus in parallel, the probe data points as belonging to tiles with respect to a timestamp based, at least in part, on one or more context criteria, wherein each of the tiles represents a geospatial extent that is a bounding box encloses mapping data;

for every one of the probe data points, assigning a respective tile and the timestamp to the probe data point as a respective compound key, wherein the respective compound key is shared by probe data points belonging to the respective tile at the timestamp;

in response to a mapping query from a user device via a network to the mapping services, retrieving an administrative area polygon;

determining a set of the tiles enclosing the polygon;

filtering for a subset of the probe data points corresponding to the set of the tiles based, at least in part, on the mapping query;

shuffling and sorting the subset of the probe data points to a plurality of reducers in the apparatus per the respective compound key;

for every one of the set of the tiles, writing by a respective one of the reducers probe data points sharing the respective compound key into the respective tile; and

initiating a presentation consisting of the set of the tiles for the mapping query on a user interface of the user device.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2015
From: NOKIA CORPORATION
To: HERE GLOBAL B.V.
Reel/Frame 037174/0772 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE OF SERIAL NO. 14/113,179 PREVIOUSLY RECORDED AT REEL: 033830 FRAME: 0681. ASSIGNOR(S) HEREBY CONFIRMS THE CHANGE OF NAME. Recorded Jun 8, 2015
From: HERE GLOBAL B.V.
To: NOKIA CORPORATION
Reel/Frame 035922/0385 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2015
From: KOSURU, YEKESA; YAKUBOVICH, ALEXEY; NATESAN, SENTHIL; LUBLINSKY, BORIS
To: NOKIA CORPORATION
Reel/Frame 035786/0589 →
Continuity (2)
Provisional Application 61477456 · Apr 20, 2011
Related Publication 20140317124A1 · Oct 23, 2014