forked from hans/Nominatim
change the default location for external data to project dir
This commit is contained in:
@@ -1,13 +1,49 @@
|
||||
# Importing the Database
|
||||
|
||||
The following instructions explain how to create a Nominatim database
|
||||
from an OSM planet file and how to keep the database up to date. It
|
||||
is assumed that you have already successfully installed the Nominatim
|
||||
software itself, if not return to the [installation page](Installation.md).
|
||||
from an OSM planet file. It is assumed that you have already successfully
|
||||
installed the Nominatim software itself. If this is not the case, return to the
|
||||
[installation page](Installation.md).
|
||||
|
||||
## Configuration setup in `.env`
|
||||
## Creating the project directory
|
||||
|
||||
The Nominatim server can be customized via a `.env` in the build directory.
|
||||
Before you start the import, you should create a project directory for your
|
||||
new database installation. This directory receives all data that is related
|
||||
to a single Nominatim setup: configuration, extra data, etc. Create a project
|
||||
directory apart from the Nominatim software:
|
||||
|
||||
```
|
||||
mkdir ~/nominatim-planet
|
||||
```
|
||||
|
||||
In the following, we refer to the project directory as `$PROJECT_DIR`. To be
|
||||
able to copy&paste instructions, you can export the appropriate variable:
|
||||
|
||||
```
|
||||
export PROJECT_DIR=~/nominatim-planet
|
||||
```
|
||||
|
||||
The Nominatim tool assumes per default that the current working directory is
|
||||
the project directory but you may explicitly state a different directory using
|
||||
the `--project-dir` parameter. The following instructions assume that you have
|
||||
added the Nominatim build directory to your PATH and run all directories from
|
||||
the project directory. So change into now:
|
||||
|
||||
```
|
||||
cd $PROJECT_DIR
|
||||
```
|
||||
|
||||
!!! tip "Migration Tip"
|
||||
|
||||
Nominatim used to be run directly from the build directory until version 3.6.
|
||||
Essentially, the build directory functioned as the project directory
|
||||
for the database installation. This setup still works and can be useful for
|
||||
development purposes. It is not recommended anymore for production setups.
|
||||
Create a project directory that is separate from the Nominatim software.
|
||||
|
||||
### Configuration setup in `.env`
|
||||
|
||||
The Nominatim server can be customized via a `.env` in the project directory.
|
||||
This is a file in [dotenv](https://github.com/theskumar/python-dotenv) format
|
||||
which looks the same as variable settings in a standard shell environment.
|
||||
You can also set the same configuration via environment variables. All
|
||||
@@ -37,9 +73,9 @@ the directory exists. There should be at least 75GB of free space.
|
||||
Wikipedia can be used as an optional auxiliary data source to help indicate
|
||||
the importance of OSM features. Nominatim will work without this information
|
||||
but it will improve the quality of the results if this is installed.
|
||||
This data is available as a binary download:
|
||||
This data is available as a binary download. Put it into your project directory:
|
||||
|
||||
cd $NOMINATIM_SOURCE_DIR/data
|
||||
cd $PROJECT_DIR
|
||||
wget https://www.nominatim.org/data/wikimedia-importance.sql.gz
|
||||
|
||||
The file is about 400MB and adds around 4GB to the Nominatim database.
|
||||
@@ -47,14 +83,16 @@ The file is about 400MB and adds around 4GB to the Nominatim database.
|
||||
!!! tip
|
||||
If you forgot to download the wikipedia rankings, you can also add
|
||||
importances after the import. Download the files, then run
|
||||
`./nominatim refresh --wiki-data --importance`.
|
||||
`nominatim refresh --wiki-data --importance`. Updating importances for
|
||||
a planet can take a couple of hours.
|
||||
|
||||
### Great Britain, USA postcodes
|
||||
|
||||
Nominatim can use postcodes from an external source to improve searches that
|
||||
involve a GB or US postcode. This data can be optionally downloaded:
|
||||
involve a GB or US postcode. This data can be optionally downloaded into the
|
||||
project directory:
|
||||
|
||||
cd $NOMINATIM_SOURCE_DIR/data
|
||||
cd $PROJECT_DIR
|
||||
wget https://www.nominatim.org/data/gb_postcode_data.sql.gz
|
||||
wget https://www.nominatim.org/data/us_postcode_data.sql.gz
|
||||
|
||||
@@ -91,7 +129,7 @@ soon as it is not required anymore.
|
||||
You can also drop the dynamic part later using the following command:
|
||||
|
||||
```
|
||||
./nominatim freeze
|
||||
nominatim freeze
|
||||
```
|
||||
|
||||
Note that you still need to provide for sufficient disk space for the initial
|
||||
@@ -157,7 +195,7 @@ Download the data to import. Then issue the following command
|
||||
from the **build directory** to start the import:
|
||||
|
||||
```sh
|
||||
./nominatim import --osm-file <data file> 2>&1 | tee setup.log
|
||||
nominatim import --osm-file <data file> 2>&1 | tee setup.log
|
||||
```
|
||||
|
||||
### Notes on full planet imports
|
||||
@@ -198,7 +236,7 @@ reduce the cache size or even consider using a flatnode file.
|
||||
Run this script to verify all required tables and indices got created successfully.
|
||||
|
||||
```sh
|
||||
./nominatim check-database
|
||||
nominatim check-database
|
||||
```
|
||||
|
||||
### Testing the installation
|
||||
@@ -224,7 +262,7 @@ planner to make the right decisions. Recomputing them can improve the performanc
|
||||
of forward geocoding in particular under high load. To recompute word counts run:
|
||||
|
||||
```sh
|
||||
./nominatim refresh --word-counts
|
||||
nominatim refresh --word-counts
|
||||
```
|
||||
|
||||
This will take a couple of hours for a full planet installation. You can
|
||||
@@ -236,7 +274,7 @@ If you want to be able to search for places by their type through
|
||||
[special key phrases](https://wiki.openstreetmap.org/wiki/Nominatim/Special_Phrases)
|
||||
you also need to enable these key phrases like this:
|
||||
|
||||
./nominatim special-phrases --from-wiki > specialphrases.sql
|
||||
nominatim special-phrases --from-wiki > specialphrases.sql
|
||||
psql -d nominatim -f specialphrases.sql
|
||||
|
||||
Note that this command downloads the phrases from the wiki link above. You
|
||||
@@ -250,25 +288,24 @@ address set to complement the OSM house number data in the US. You can add
|
||||
TIGER data to your own Nominatim instance by following these steps. The
|
||||
entire US adds about 10GB to your database.
|
||||
|
||||
1. Get preprocessed TIGER 2019 data and unpack it into the
|
||||
data directory in your Nominatim sources:
|
||||
1. Get preprocessed TIGER 2019 data and unpack it into your project
|
||||
directory:
|
||||
|
||||
cd $PROJECT_DIR
|
||||
wget https://nominatim.org/data/tiger2019-nominatim-preprocessed.tar.gz
|
||||
tar xf tiger2019-nominatim-preprocessed.tar.gz
|
||||
|
||||
2. Import the data into your Nominatim database:
|
||||
|
||||
./nominatim add-data --tiger-data tiger
|
||||
nominatim add-data --tiger-data tiger
|
||||
|
||||
3. Enable use of the Tiger data in your `.env` by adding:
|
||||
|
||||
NOMINATIM_USE_US_TIGER_DATA=yes
|
||||
echo NOMINATIM_USE_US_TIGER_DATA=yes >> .env
|
||||
|
||||
4. Apply the new settings:
|
||||
|
||||
```sh
|
||||
./nominatim refresh --functions
|
||||
```
|
||||
nominatim refresh --functions
|
||||
|
||||
|
||||
See the [developer's guide](../develop/data-sources.md#us-census-tiger) for more
|
||||
|
||||
Reference in New Issue
Block a user