50

I lost track of this effort years ago but have need to geocode thousands of addresses nightly. I must use the very accurate database sitting on the machine, installed when the Nuvi map update installed Mapsource.

When I contacted Garmin years ago, they expressed an interest in providing an API for this, but then I heard nothing and did not follow up. Their database is provided by navtec? I believe. Anyone have experience with that format?

I posted on the Garmin Developer forum a while ago, but its a little lethargic over there :)

Has anyone done this? Does anyone know how it might be done without an API; meaning database structure and calls?

I'll take a solution in any language.


Added:

Garmin has expressed an interest in making this available to me. They just have not done it.

I do not know the database format.

I am NOT looking for an online solution or any other "alternative". This question is very specific.

Diggy.
  • 6,744
  • 3
  • 19
  • 38
Mike Trader
  • 8,564
  • 13
  • 55
  • 66
  • 2
    The database (map) provider would be NavTeq, a Nokia subsidiary. I'm not sure whether Garmin is allowed to sublicense the NavTeq database for your purposes. – MSalters Nov 16 '10 at 08:54
  • Do you have any source code or details about the db type (e.g. Oracle, MySQL)? – fncomp Nov 17 '10 at 06:28
  • 2
    If you get this info by trading reputation only I quit consultancy lol – Raul Lapeira Herrero Nov 18 '10 at 20:39
  • 2
    We're using Microsoft Mappoint for geocodings as well as maps. I believe the database behind Mappoint is NavTeq. Whichever source you choose, you have to go through contract and licensing agreement. We've also tried with Google, MelissaData, Proxix, IntelligentSearch, etc. to name a few but they all get their database source from NavTeq or TeleAtlas... USPS may have a database as well. I don't believe they will expose their database to you to run queries at will. – Eric K Yung Nov 18 '10 at 23:06
  • 1
    They have an API and through API you can submit one address or a batch of limited number of addresses. That's my experience talking to those companies and actually using a few of them. – Eric K Yung Nov 18 '10 at 23:07
  • Hi Eric, could you please contact me at the address above. Thanks – Mike Trader Nov 19 '10 at 05:36
  • 1
    I posted an alternative approach but the OP asked me to delete it. He wants access to a proprietary database. That could be reversed engineered (dangerous as it is liable to break) or he can get an API out of Garmin. Garmin have previously expressed an interest, but the OP hasn't followed up, or lacks the funds to persuade Garmin to increase the priority (it is unclear which). That leaves one final alternative: a different approach using data from a different source. – winwaed Nov 28 '10 at 19:55
  • A different approach is not a solution. I understand you are an expert with MapPoint and would use that instead. Motivating Garmin is essential to getting movement on this API. Thank you for deleteing your answer. – Mike Trader Nov 29 '10 at 12:01
  • I created a content delivery system for garmin GPS units and became familiar with the API they provide to developers. Why can't you use their API (particulary this object: http://developer.garmin.com/web/communicator-api/jsdoc/symbols/Garmin.Geocode.html) to do what you're asking? – slim Dec 01 '10 at 15:06
  • ya missed it :) but if yo uhave the solution perhaps Jeff will put up 400pts again... – Mike Trader Dec 04 '10 at 11:51
  • 1
    Shady, from that URL: Garmin.Geocode() - Currently just a wrapper for Google geocode service. – Mike Trader Dec 06 '10 at 11:32
  • 3
    I think this question is just an experiment to see whether people would work for free. It takes a lot of work to answer this. – Jader Dias Dec 16 '10 at 10:23
  • What version of Mapsource are you using? 6.15? – Hugh Bothwell Dec 20 '10 at 03:17
  • Not sure how that's relevant? Mapsource is a client app that allows the user to enter street addresses used for searching the map database returning lat/lon. This functionality is what I am seeking to implement. – Mike Trader Dec 20 '10 at 16:43
  • Theory: MapSource already performs this function for you, and you can run MapSource. If you trap the code that runs between when you submit an address to the program and when it returns a location, you may be able to build an API with some assembly code that modifies and reads the memory MapSource is using. Would a solution like that be acceptable? Would posting that solution earn me a lawsuit? – Jeff Ferland Feb 23 '11 at 20:33
  • Yes that would be great, certainly better than sending MapSource Keystrokes. I doubt that would be a problem for Garmin as Mapsource would have completed user authentication by that point. Please contact me for more help (see above) – Mike Trader Feb 27 '11 at 09:19
  • @MikeTrader you're not supposed to request direct contact on Stack Overflow. The answers should benefit everyone. If someone wants to contact you, you can put your email on your profile. https://meta.stackexchange.com/questions/149935/of-people-posting-email-addresses-in-stack-overflow-posts – Ari Fordsham Dec 01 '20 at 11:43
  • I’m voting to close this question because it's asking how to access proprietary data not licensed for the desired use. – caskey May 12 '21 at 17:53

5 Answers5

1

Talk to Navtec directly. They will sell you or license you their database directly. The database tables are clearly documented, then write your own Geocoder on top. Took me about a week 4 years ago, and I was marginally profficient in SQL at the time.

John
  • 5,735
  • 3
  • 46
  • 62
-1

You can geocode up to 10,000/day by city with NN4D after you get their free application key.

You can geocode for $18 per 1,000 with CoreLogic (aka Proxix)

Yahoo looked most promising because it has the Hadoop feature, which is also currently being utilized at Navteq. I've contacted a guy at Navteq who uses Hadoop, and I'm awaiting his feedback. According to Ben Lorica's article on Datameer O'Reilly.com entitled "Big Data Tool for Business Analysts", Datameer can upload from spreadsheets to Hadoop. Hadoop is a pipeline to Navteq.

Starting point - a list of the tools at the GIS Dept at USC

(I can only have one link because I'm new, but I'll add the rest when I get my points up.

publicrelate
  • 109
  • 2
  • Thanks but again, I am *NOT* looking for an alternative. If you have any relevant info please contact me directly. – Mike Trader Dec 04 '10 at 11:38
  • 2
    I understand. The contact in R&D at Navteq said NN4D is a developers' community effort with which they're not affiliated. He's not at liberty to comment on what they're doing at Navteq. He confirmed that "Hadoop is just a framework for handling big data. It is not a tool specific to mapping or geocoding," adding, "To the best of my knowledge Navteq does not have a public geocoding tool, and with respect to NN4D, I’m familiar with their offer." – publicrelate Dec 05 '10 at 02:06
-1

naveteq uses oracle format

BUT HOLD 1 SECOND: doing 1000 lookups(per night) is easy, doing 10000 lookups(per night) requires a good server, doing 1000000 lookups(per night) requires a cluster

letting them do the searches requires less hardware(and more traffic) using xml-rpc or similar rpc would be the best( for everyone)

buy oracle db and start working

you can use almost anything BUT keeping in mind the volume you should use a compile language like c++

borrel
  • 911
  • 9
  • 17
-2

gpsbabel.org has lots of stuff on converting between lots of GPS formats, and a downloadable tool. My limited experience, mostly with google maps, streetview etc. is that geocoding is not very accurate. cM

-2

The free IBM DB2 Express-C DBMS comes with Spatial Extender that can be used to GEOcode US addresses. See a webinar on this. Don't know if this is exact fit but it can't hurt to take a look.

Also take a quick look the DB2 documentation http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/topic/com.ibm.db2.luw.spatial.topics.doc/doc/csbp3008.html

Leon Katsnelson
  • 450
  • 3
  • 5
  • Unless you are suggesting navteq uses the DB2 format, you are offering an alternative. While I understand you are interested in "accelerating adoption of our (IBM) database products in the market", this is not the place to do that. – Mike Trader Dec 07 '10 at 05:47
  • 1
    DB2 geocoding data comes from ESRI. I do not know the source of ESRI data but most get it from Navteq. There is no "DB2 format". You insert standard US address and you get it transformed in to latitude and longitude coordinates. – Leon Katsnelson Dec 07 '10 at 12:35