Geonames Gazetteer using Lucene

An implementation of a geonames.org-based Gazetteer using Apache Lucene.

License

License

Categories

Categories

Geo Business Logic Libraries Geospatial
GroupId

GroupId

edu.usc.ir
ArtifactId

ArtifactId

lucene-geo-gazetteer
Last Version

Last Version

0.2
Release Date

Release Date

Type

Type

jar
Description

Description

Geonames Gazetteer using Lucene
An implementation of a geonames.org-based Gazetteer using Apache Lucene.
Project URL

Project URL

https://github.com/chrismattmann/lucene-geo-gazetteer
Source Code Management

Source Code Management

https://github.com/chrismattmann/lucene-geo-gazetteer.git

Download lucene-geo-gazetteer

How to add to project

<!-- https://jarcasting.com/artifacts/edu.usc.ir/lucene-geo-gazetteer/ -->
<dependency>
    <groupId>edu.usc.ir</groupId>
    <artifactId>lucene-geo-gazetteer</artifactId>
    <version>0.2</version>
</dependency>
// https://jarcasting.com/artifacts/edu.usc.ir/lucene-geo-gazetteer/
implementation 'edu.usc.ir:lucene-geo-gazetteer:0.2'
// https://jarcasting.com/artifacts/edu.usc.ir/lucene-geo-gazetteer/
implementation ("edu.usc.ir:lucene-geo-gazetteer:0.2")
'edu.usc.ir:lucene-geo-gazetteer:jar:0.2'
<dependency org="edu.usc.ir" name="lucene-geo-gazetteer" rev="0.2">
  <artifact name="lucene-geo-gazetteer" type="jar" />
</dependency>
@Grapes(
@Grab(group='edu.usc.ir', module='lucene-geo-gazetteer', version='0.2')
)
libraryDependencies += "edu.usc.ir" % "lucene-geo-gazetteer" % "0.2"
[edu.usc.ir/lucene-geo-gazetteer "0.2"]

Dependencies

compile (11)

Group / Artifact Type Version
org.apache.lucene : lucene-core jar 5.0.0
org.apache.lucene : lucene-analyzers-common jar 5.0.0
org.apache.lucene : lucene-queryparser jar 5.0.0
org.apache.commons : commons-lang3 jar 3.4
commons-cli : commons-cli jar 1.3
org.apache.cxf : cxf-rt-frontend-jaxrs jar 2.2.3
org.apache.cxf : cxf-rt-transports-http jar 2.2.3
org.apache.tomcat.embed : tomcat-embed-core jar 8.0.28
org.apache.tomcat.embed : tomcat-embed-logging-juli jar 8.0.28
org.apache.tomcat.embed : tomcat-embed-jasper jar 8.0.28
com.google.code.gson : gson jar 2.4

Project Modules

There are no modules declared in this project.

Lucene Geo-Gazetteer

A command line gazetteer built around the Geonames.org dataset, that uses the Apache Lucene library to create a searchable gazetteer.

Use

The Geonames.org dataset contains over 10,000,000 geographical names corresponding to over 7,500,000 unique features. Beyond names of places in various languages, data stored include latitude, longitude, elevation, population, administrative subdivision and postal codes. All coordinates use the World Geodetic System 1984 (WGS84).

  1. What we need here is to download the latest version of allCountries.zip file from GeoNames.org: curl -O http://download.geonames.org/export/dump/allCountries.zip
  2. Unzip the GeoNames file: unzip allCountries.zip
  3. Take the allCountries.txt and use it to create a geoIndex: java -cp target/lucene-geo-gazetteer-<version>-jar-with-dependencies.jar edu.usc.ir.geo.gazetteer.GeoNameResolver -i geoIndex -b allCountries.txt
  4. Then search the index (e.g., for Pasadena and Texas): java -cp target/lucene-geo-gazetteer-<version>-jar-with-dependencies.jar edu.usc.ir.geo.gazetteer.GeoNameResolver -i geoIndex -s Pasadena Texas
  5. The service mode:
        #Launch Server
        $ lucene-geo-gazetteer -server
        # Query
        $ curl "localhost:8765/api/search?s=Pasadena&s=Texas&c=2"

Questions, comments?

Send them to Chris A. Mattmann.

Contributors

  • Thamme Gowda N., USC
  • Madhav Sharan, USC
  • Yun Li, USC
  • Chris A. Mattmann, JPL
  • Maziyar Boustani, JPL

Credits

This project began as the CSCI 572 project of Yun Li on the NSF Polar CyberInfrastructure project at USC under the supervision of Chris Mattmann. You can find Yun's original code base here.

This work was sponsored by the National Science Foundation under funded projects PLR-1348450 and PLR-144562.

License

Apache License, version 2

Versions

Version
0.2