Ładowanie plików map OSM do PostgreSQL

Przetłumaczone automatycznie z angielskiego. Przeczytaj oryginał

Możesz używać OpenStreetMaps na własnym sprzęcie. Najpierw musisz pobrać pliki map, które można znaleźć pod adresem https://download.geofabrik.de. Po pobraniu zainstaluj PostgreSQL i włącz kilka rozszerzeń:

SQL
CREATE DATABASE yourdbname;
CREATE EXTENSION postgis;
CREATE EXTENSION hstore;

Może się to przydać później, zwłaszcza jeśli zechcesz spróbować zbudować własny serwer kafelków. Następnie trzeba zainstalować osm2pgsql, który jest dostępny w pakietach systemowych Ubuntu 22. Potem:

Bash
osm2pgsql -c -d yourdbname -U youruser -H yourdbhost somefile.osm.pbf -W

Teraz podaj hasło do bazy danych i rozpocznie się ładowanie. W zależności od sprzętu może to potrwać od kilku minut do dziesiątek godzin w przypadku dużych plików, takich jak obszar Europy. Powinieneś otrzymać coś takiego:

SQL
geography_columns
geometry_columns
planet_osm_line
planet_osm_point
planet_osm_polygon
planet_osm_roads
spatial_ref_sys

To tabele z punktami, liniami, wielokątami i drogami. Większość danych znajduje się w samym pliku PBF, ale kilka innych jest wyliczanych w locie podczas ładowania. Możliwości wykorzystania takich danych jest mnóstwo. Można ich używać w oprogramowaniu desktopowym, takim jak QGIS (wczytując bezpośrednio plik PBF), albo postawić kompletny serwer kafelków podobny do tego na oficjalnej stronie OSM.

Wersja Markdown

Wszystkie treści na tej stronie są udostępniane na licencji Uznanie autorstwa – Użycie niekomercyjne – Bez utworów zależnych 4.0 Międzynarodowe (CC BY-NC-ND 4.0). Cytuj jako: Michał Sobczak, „Ładowanie plików map OSM do PostgreSQL”, 5 stycznia 2023, https://michalasobczak.pl/pl/posts/load-osm-map-files-into-postgresql.html