Polygons with rank_address = 0 are only used in search and (rarely) for reverse lookup. Geometries do not need to be precise for that because topology does not matter. OSM has some very large polygons of natural features with sizes of more than 10MB. Simplify these polygons to keep the database and indexes smaller.
Nominatim
Nominatim (from the Latin, 'by name') is a tool to search OpenStreetMap data by name and address (geocoding) and to generate synthetic addresses of OSM points (reverse geocoding). An instance with up-to-date data can be found at https://nominatim.openstreetmap.org. Nominatim is also used as one of the sources for the Search box on the OpenStreetMap home page.
Documentation
The documentation of the latest development version is in the
docs/ subdirectory. A HTML version can be found at
https://nominatim.org/release-docs/develop/ .
Installation
The latest stable release can be downloaded from https://nominatim.org. There you can also find installation instructions for the release, as well as an extensive Troubleshooting/FAQ section.
Detailed installation instructions for current master can be found at nominatim.org as well.
A quick summary of the necessary steps:
-
Compile Nominatim:
mkdir build cd build cmake .. make sudo make install -
Create a project directory, get OSM data and import:
mkdir nominatim-project cd nominatim-project nominatim import --osm-file <your planet file> -
Point your webserver to the nominatim-project/website directory.
License
The source code is available under a GPLv2 license.
Contributing
Contributions, bugreport and pull requests are welcome. For details see contribution guide.
Questions and help
For questions, community help and discussions you can use the Github discussions forum or join the geocoding mailing list.