Ironholds / rgeolocate

Generalised IP geolocation through R
https://cran.r-project.org/web/packages/rgeolocate/index.html
Other
66 stars 22 forks source link

compatibility with the legacy maxmind .dat database? #52

Closed randomgambit closed 6 years ago

randomgambit commented 6 years ago

Hello @Ironholds sorry to create so many tickets right now! it is just that I absolutely need to use R to read the maxmind dataset and your package seem to be the only viable option!

How can I use rgeolocate to load the legacy csv or dat databases (https://dev.maxmind.com/geoip/legacy/geolite/)?

The vignette seem to suggest that the package than work with that, but I keep getting some errors while doing so.

Thanks!!

randomgambit commented 6 years ago

@Ironholds how are you? What do you think about this? this is an important issue because only legacy dat files are available before 2015 or so...

Thanks!!

Ironholds commented 6 years ago

I'm fine, albeit somewhat bemused as to why a 3-day delay in response was sufficient for an additional poke? What in the vignette suggests that this should work with the legacy datasets?

randomgambit commented 6 years ago

well you mention that

rgeolocate aims to be a single generalised package for geolocation

so one could think that it supports the legacy maxmind dat files that were available only a few years ago.

Ironholds commented 6 years ago

Fair! But 'generalised' does not mean 'describes everything'; while there is a legacy C API it is not integrated here because (1) it's leaky as all heck and would make the package unstable; (2) it is rather large and the package is already somewhat above the CRAN guidelines for package size, and; (3) the legacy API has been 'legacy' since at least 2014 or, to put it another way, for 66% of MaxMind's existence as a company.

If I had the leaky temp version I'd made with the old API around I'd happily hand it over (although again, very unstable) but I'm unsure what exactly the use case is here? If you really really need to use the legacy file format for whatever reason I would recommend looking at the pygeoip module and using reticulate to build a little R/Python binding.

randomgambit commented 6 years ago

@Ironholds thanks, I understand. the issue is that I cannot use python because I am using R on Spark... so if I understant there is NO R package that is able to work with the old .dat file?

Ironholds commented 6 years ago

Not to my knowledge; there was an extremely buggy internal prototype but absent a tarball existing in someone's email account I'd consider it dead :(