update docs for osmosis to pyosmium change

This commit is contained in:
Sarah Hoffmann
2017-05-25 16:53:44 +02:00
parent bd4b1b2d08
commit 65afe13f0a
6 changed files with 30 additions and 34 deletions

View File

@@ -50,13 +50,13 @@ find_package(PostgreSQL REQUIRED)
include_directories(${PostgreSQL_INCLUDE_DIRS}) include_directories(${PostgreSQL_INCLUDE_DIRS})
link_directories(${PostgreSQL_LIBRARY_DIRS}) link_directories(${PostgreSQL_LIBRARY_DIRS})
find_program(OSMOSIS osmosis) find_program(PYOSMIUM pyosmium-get-changes)
if (NOT EXISTS "${OSMOSIS}") if (NOT EXISTS "${PYOSMIUM}")
set(OSMOSIS_PATH "/nonexistent") set(PYOSMIUM_PATH "/nonexistent")
message(WARNING "Osmosis not found (required for updates)") message(WARNING "pyosmium-get-changes not found (required for updates)")
else() else()
set(OSMOSIS_PATH "${OSMOSIS}") set(PYOSMIUM_PATH "${PYOSMIUM}")
message(STATUS "Using osmosis at ${OSMOSIS_PATH}") message(STATUS "Using pyosmium-get-changes at ${PYOSMIUM_PATH}")
endif() endif()

View File

@@ -21,6 +21,7 @@ endforeach()
set (GENERALDOCFILES set (GENERALDOCFILES
Installation.md Installation.md
Import_and_update.md Import_and_update.md
Faq.md
) )
foreach (df ${GENERALDOCFILES}) foreach (df ${GENERALDOCFILES})

View File

@@ -118,21 +118,24 @@ Updates
======= =======
There are many different possibilities to update your Nominatim database. There are many different possibilities to update your Nominatim database.
The following section describes how to keep it up-to-date with osmosis. The following section describes how to keep it up-to-date with Pyosmium.
For a list of other methods see the output of `./utils/update.php --help`. For a list of other methods see the output of `./utils/update.php --help`.
Installing the newest version of osmosis Installing the newest version of Pyosmium
---------------------------------------- -----------------------------------------
The version of osmosis that comes with your distribution should be sufficient It is recommended to install Pyosmium via pip:
in most cases.
If you want to install it by hand, get the latest version from the pip install --user osmium
[Osmosis website](http://wiki.openstreetmap.org/wiki/Osmosis). Then
tell Nominatim to use this version by adding the following line to
your `settings/local.php`:
@define('CONST_Osmosis_Binary', '/usr/local/bin/osmosis'); Nominatim needs a tool called `pyosmium-get-updates` that comes with
Pyosmium. You need to tell Nominatim where to find it. Add the
following line to your `settings/local.php`:
@define('CONST_Pyosmium_Binary', '/home/user/.local/bin/pyosmium-get-changes');
The path above is fine if you used the `--user` parameter with pip.
Replace `user` with your user name.
Setting up the update process Setting up the update process
----------------------------- -----------------------------
@@ -146,35 +149,27 @@ diffs for Ireland from geofabrik add the following:
// base URL of the replication service // base URL of the replication service
@define('CONST_Replication_Url', 'http://download.geofabrik.de/europe/ireland-and-northern-ireland-updates'); @define('CONST_Replication_Url', 'http://download.geofabrik.de/europe/ireland-and-northern-ireland-updates');
// Process each update separately, osmosis cannot merge multiple updates
@define('CONST_Replication_MaxInterval', '40000');
// How often upstream publishes diffs // How often upstream publishes diffs
@define('CONST_Replication_Update_Interval', '86400'); @define('CONST_Replication_Update_Interval', '86400');
// How long to sleep if no update found yet // How long to sleep if no update found yet
@define('CONST_Replication_Recheck_Interval', '900'); @define('CONST_Replication_Recheck_Interval', '900');
To set up the update process now run the following command:
Delete any existing `settings/configuration.txt`, then run the following command ./utils/update --init-updates
to create the osmosis configuration files:
./utils/setup.php --osmosis-init It outputs the date where updates will start. Recheck that this date is
what you expect.
Enabling hierarchical updates The --init-updates command needs to be rerun whenever the replication service
----------------------------- is changed.
When a place is updated in the database, all places that contain this place
in their address need to be updated as well. These hierarchical updates are
disabled by default because they slow down the initial import.
Enable them with the following command:
./utils/setup.php --create-functions --enable-diff-updates
Updating Nominatim Updating Nominatim
------------------ ------------------
The following command will keep your database constantly up to date: The following command will keep your database constantly up to date:
./utils/update.php --import-osmosis-all --no-npi ./utils/update.php --import-osmosis-all
If you have imported multiple country extracts and want to keep them If you have imported multiple country extracts and want to keep them
up-to-date, have a look at the script in up-to-date, have a look at the script in

View File

@@ -44,7 +44,7 @@ For running Nominatim:
For running continuous updates: For running continuous updates:
* [osmosis](http://wiki.openstreetmap.org/wiki/Osmosis) * [pyosmium](http://osmcode.org/pyosmium/)
### Hardware ### Hardware

View File

@@ -41,7 +41,7 @@ if (isset($_GET['debug']) && $_GET['debug']) @define('CONST_Debug', true);
// Paths // Paths
@define('CONST_ExtraDataPath', CONST_BasePath.'/data'); @define('CONST_ExtraDataPath', CONST_BasePath.'/data');
@define('CONST_Osm2pgsql_Binary', CONST_InstallPath.'/osm2pgsql/osm2pgsql'); @define('CONST_Osm2pgsql_Binary', CONST_InstallPath.'/osm2pgsql/osm2pgsql');
@define('CONST_Pyosmium_Binary', 'pyosmium-get-changes'); @define('CONST_Pyosmium_Binary', '@PYOSMIUM_PATH@');
@define('CONST_Tiger_Data_Path', CONST_ExtraDataPath.'/tiger'); @define('CONST_Tiger_Data_Path', CONST_ExtraDataPath.'/tiger');
@define('CONST_Wikipedia_Data_Path', CONST_ExtraDataPath); @define('CONST_Wikipedia_Data_Path', CONST_ExtraDataPath);

View File

@@ -7,7 +7,7 @@
# ================================ # ================================
# #
# These instructions expect that you have a freshly installed CentOS version 7. # These instructions expect that you have a freshly installed CentOS version 7.
# Make sure all packages are are up-to-date by running: # Make sure all packages are up-to-date by running:
# #
sudo yum update -y sudo yum update -y