Daha çox

Osm2pgsql .pbf-də çox yavaş idxal etmə yolları .osm-dan daha yavaş


Hal-hazırda ftp://ftp.spline.de/pub/openstreetmap/pbf/planet-latest.osm.pbf saytından yüklədiyim planet-latest.osm.pbf sənədini idxal edirəm. Aşağıdakı əmrdən istifadə edərək idxal edirəm:

nohup osm2pgsql -l -U gis -c -v -r pbf --logged --drop -s data / planet-latest.osm.pbf &

Mənim problemim budur ki, yollar çox yavaş və cari sürətə (0.04k / s) əsasən idxal olunur və OSM statistikasına görə hamısını idxal etmək 86 gün çəkəcəkdir. Əksinə, qovşaqlar 151.3 k / s sürətdə idxal edildi. İdxal etmə yollarını 86 gün gözləsəm də (etməyəcəm), əlaqələri idxal etməli və bütün sonrakı işləmə müddətində oturmalıyam.

Bu yaxınlarda başqa bir planet faylı idxal etdim.osmeyni komanda satırı arqumentlərini istifadə edərək formatlaşdırma və nəticədə təhlil səhvinə görə uğursuz olmasına baxmayaraq çox daha sürətli sürət.

Sənədlərdə gördüklərimdən idxal sürətini yaxşılaşdırmaq üçün əlimdən gələni etdim.

Kimsə mənə deyə bilərmi? Niyə .pbf formatı idxalının .osm formatından daha çox yollarda daha yavaş hərəkət etdiyini?

PostGIS 9.4 və osm2pgsql 0.88.1 istifadə edirəm. Disklər sürətli bir SAN-dadır, maşında tək bir Intel Xeon @ CPU 2.67GHz və 4GB yaddaş var. Əməliyyat sistemi Ubuntu 14.04 Serverdir.


/Etc/postgresql/9.3/main/postgresql.conf

shared_buffer = 4GB iş_men = 521M bakım_work_mem = 4GB checkpoint_segment = 20 autovacuum = off effective_cache = 16GB

Düyün sürəti 1.3k


Uğurla idxal etməyimin yeganə yolu disk yerini artırmaq (1 TB-a) və aşağıdakı əmrdən istifadə etmək idi

osm2pgsql -l -U gis -c -r pbf -v -C 30000 --slim --drop --logged planet-latest.osm.pbf


Kompüterim var, maşında tək bir Intel Xeon @ CPU 2.39GHz (16cpus) və 64GB yaddaş var. Əməliyyat sistemi Ubuntu 14.04 Serverdir. ancaq aşağıdakı əmri istifadə edirəm:

osm2pgsql -a -s -C 4096 --nömrələr-16 -S vektor-məlumat mənbəyi / osm2pgsql.style -j europe / south-america-latest.osm.pbf -d osm -H localhost

osm2pgsql versiya 0.91.0-dev (64 bit id sahəsi)

Yerləşdirilmiş etiket işləmə boru kəmərindən istifadə SRS 3857 (Sferik Merkator) proyeksiyasından istifadə qurmaq Cədvəl: planet_osm_point qurmaq cədvəl: planet_osm_line cədvəl qurmaq: planet_osm_polygon cədvəl qurmaq: planet_osm_roads sıx düyün önbellek üçün yaddaş ayırmaq seyrək node cache üçün yaddaş sıx seyrək node cache paylaşma: cache = 4096MB, maxblocks = 65536 * 65536, ayırma metodu = 11 Mid: pgsql, scale = 100 cache = 4096 Cədvəl qurmaq: planet_osm_nodes Cədvəl qurmaq: planet_osm_ways Cədvəl qurmaq: planet_osm_rels

Faylda oxumaq: europe / south-america-latest.osm.pbf PBF ayrıştırıcısından istifadə. Qenerasiya: Düyün (1220k 1.3k / s) Yol (0k 0.00k / s) Münasibət (0.00 / s)

Sürət 1,3-dür


Videoya baxın: OpenStreetMap + PostgreSQLHow to load OpenStreetMap data into a PostgreSQL Database (Oktyabr 2021).