Jak przyspieszyć pracę z QGIS, czy jest on wolny?

10

Jestem nowym użytkownikiem QGIS i jestem ciekawy, jak wolno działa; możliwe, że pytam o to więcej niż myślę. Oto, co uważam za istotne informacje do oceny, czy jego wydajność jest wyjątkowo wolna.

Wersja QGIS 1.74 Wersja GDAL / OGR 1.9.0 Wersja klienta PostgreSQL 9.1.2 Wersja QWT 4.8.0

Informacje o projekcie: 1 warstwa wektorowa wielokątów została przeszukana ze zdalnej bazy danych PostGIS (zapytanie jest proste i bardzo szybkie), zwracając 160 wszystkich wierszy w zdefiniowanej przestrzeni współrzędnych projektu (WGS 84) i obejmując cały glob. Tabela PostgreSQL zawierająca te wiersze zajmuje mniej niż 130 kb miejsca na dysku, a wiersze, których dotyczy zapytanie, obejmują prawie całą tabelę.

System: MacBook OS X 10.7.3, Intel Core Duo 2,4 GHz, 4 GB pamięci RAM.

Wydajność: Renderowanie zajmuje 5-10 minut. W rzeczywistości każda zmiana trwa prawie tak długo, w tym zmiana nazwy pojedynczej warstwy; to mnie naprawdę zaskoczyło. Żadne inne aplikacje wymagające dużej ilości pamięci nie działają jednocześnie.

Jest to frustrujące, ponieważ jakakolwiek modyfikacja projektu, jakkolwiek niewielka, wymaga długiego oczekiwania, zanim wyniki będą mogły zostać ocenione, a czasami aplikacja po prostu ulega awarii, nie wypełniając niczego, o co prosiłem. Czy to niezwykłe?


Aktualizacja:

Mam Shapefiles tych samych danych. Jest to 45 plików o łącznej wielkości około 100 MB. Liczba ta jest wyraźnie niezgodna z rozmiarem zestawu danych opisanego w moim oryginalnym poście i sprawia, że ​​powolność jest bardziej zrozumiała.


Aktualizacja:

Właśnie odkryłem przycisk „Renderuj” w lewym dolnym rogu przeglądarki map QGIS. Czuję się jak idiota, który wcześniej tego nie zauważył, ale wyłączenie renderowania znacznie zwiększa szybkość, z jaką mogę wykonywać zadania, dla których natychmiastowe ponowne renderowanie nie jest krytyczne. Wspominam o tym tutaj z korzyścią dla innych nowych użytkowników.

Gregory
źródło
1
Brzmi to nietypowo - QGIS zwykle działa bardzo dobrze w porównaniu do innych systemów GIS. Podejrzewam jakieś opóźnienie ze zdalną bazą danych, choć brzmi to jak mały zestaw danych. Jakie inne dane załadowałeś?
Simbamangu
1
Czy masz ten sam problem z innymi warstwami danych, czy jest to ten konkretny? Jeśli tak, zastanawiam się, czy w twoich danych jest jakaś nieprawidłowa geometria, czy nawet duża ilość geometrii zerowej.
MappaGnosis
Czy to może być problem z etykietowaniem? Warto renderować warstwę bez etykiet, aby zobaczyć, czy to robi różnicę.
nhopton
Zauważyłem, że QGIS 1.7.4 lokalnie łączy się z moją bazą danych PostGIS 2.0 na moim potężnym komputerze z systemem Windows jest bardzo wolne, ale działa szybko na moim znacznie wolniejszym Macu (OSX). Nie wiem, na czym polega problem .....
djq
Zakładając, że zawsze będą istnieć czynniki powodujące spowolnienie lub przyspieszenie renderowania, myślę, że najlepszym scenariuszem jest przejście do wątku renderowania w tle, który nie blokuje całej aplikacji podczas działania. Uwielbiam QGIS. Jest bardzo stabilny, ale ponowne renderowanie widoku może zająć kilka minut, a po prostu zamazuje całą partię i przerysowuje ją całkowicie. Wszystkie moje warstwy są oparte na plikach i mogą mieć do 1 GB na mapę (większość z nich to duże tła reliefowe GeoTiff). Prawdopodobnie zawsze będzie to powolne, ale QGIS może umieścić renderowanie w osobnym wątku i sprawić, że będzie

Odpowiedzi:

4

Moja instalacja QGIS staje się znacznie szybsza i bardziej responsywna po zamknięciu okna przeglądarki. Miałem QGIS 3.6.2 i przestawiłem się na 3.4.7 LTR. Oba były bardzo niereagujące, dopóki nie zamknąłem okna przeglądarki. Użyj Widok menu - Panele - Przeglądarka, aby wyświetlić go ponownie.

huha
źródło
2

Krótka odpowiedź: nie

Trudno jest podać szczegóły, ale:

Wygląda na to, że masz kilka poważnych problemów z wydajnością, ale prawdopodobnie nie jest to sprzęt. Moją pierwszą sugestią byłoby przetestowanie bazy danych, ale już to zrobiłeś.

Możesz wypróbować inny GIS typu Open Source, jest ich wiele (wiele wymienionych tutaj: Jakie są niektóre darmowe i otwarte pakiety GIS Desktop ), ale oczywistym jest gvSIG . Jeśli cokolwiek użyjesz ma te same problemy z prędkością / wydajnością, problem jest po stronie bazy danych.

Możesz także spróbować wyeksportować dane do bazy danych SpatiaLite i wczytać je.

Ponadto, jeśli chcesz trzymać się QGIS, spróbuj odinstalować go i użyć innej wersji.

GIS-Jonathan
źródło
2

zgaduję, że masz problem z blokowaniem w bazie danych. Jeśli zmiana nazwy tabeli wymaga czasu, nie dzieje się tak, ponieważ zmiana nazwy wymaga czasu, ale db na coś czeka. Czy próbowałeś ponownie uruchomić db?

Nicklas Avén
źródło
To nie jest problem z bazą danych. Próbowałem ładować pliki kształtu lokalnie i jest tak samo źle.
Gregory
3
@pyrogerg - Czy jest szansa na przesłanie plików kształtów?
Simbamangu
1
@Simbamangu - nie sądzę, żebym mógł opublikować je wszystkie; są to 45 plików o łącznej wielkości około 100 MB. Liczba ta jest wyraźnie niezgodna z rozmiarem zestawu danych opisanego w moim oryginalnym poście i sprawia, że ​​powolność jest bardziej zrozumiała.
Gregory
@pyrogerg Z mojego doświadczenia wynika, że ​​przybliżasz mniejszy obszar przed załadowaniem zestawów danych tego rozmiaru z PostGIS. Aby zlokalizować odpowiedni obszar, możesz użyć warstwy OpenLayers lub dowolnego dostępnego zestawu danych.
podmrok
@underdark - Dzięki za sugestię; Spróbuję następnym razem. Zamierzałem, aby 45 plików kształtu, które wczytałem, było początkowym testem wizualizacji znacznie większego zestawu danych, ale nie sądzę, że mój komputer poradzi sobie znacznie więcej!
Gregory
1

Uważam, że rzeczy, które robię w pracy na ArcGIS, działają bardzo wolno z danymi z naszej bazy danych, która znajduje się w odległości 1800 km, ale działa bardzo szybko na QGIS w domu, więc najpierw przyjrzałbym się sieci i zdalnej bazie danych, QGIS wydaje się działać najbardziej przez większość czasu działa z tą samą prędkością lub szybciej niż ArcGIS,

Banger
źródło
Miałem kiedyś problem z arcgis, w którym najpierw pobierał wszystkie dane mapy na komputer lokalny, zanim zrobił cokolwiek, a ponieważ były to 2 lub 3 GB danych, zamknął naszą sieć na około pół dnia ... IT dept nie był zbyt szczęśliwy, ale może QGIS robi coś podobnego
Banger
0

Qgis po prostu działa „ok”, chyba że występuje jedna z poniższych sytuacji:

a) warstwa jest duża .. dla niektórych procesów znaczenie „dużych” może wynosić od 10 Mb do 250 Mb.

b) warstwa ma duże elementy wieloczęściowe (elementy wykonane z „zbyt wielu” części)

c) warstwa ma pewne (nie wieloczęściowe) cechy z „dużą ilością wierzchołków / węzłów”

.. na przykład. „cliping” lub „rozpuszczanie” dla mnie zwykle Qgis nie rób tego lub po prostu ulega awarii .. lub w niektórych przypadkach zajmuje około 36 razy, aby wykonać zadanie .. w porównaniu do tego samego zadania (te same kształty / warstwy wykonują ten sam proces) w ArcGis .. przykład .. 6-godzinny proces rozpuszczania w warstwie funkcji 1330000 (cały kraj .. jak połowa stanów zjednoczonych) na Qgis na nowym ramce Intel i5 + 8Gb + Ubuntu .. który może również ulec awarii w dowolnym momencie .. w porównaniu do rozpuść tę samą warstwę na arcgis na 10-letnim notebooku (core duo) + RAM 2 Gb + Windows XP ... dzięki czemu działa poprawnie po 10 minutach.

lub przycinanie, które nie działa na żadnej „bardzo złożonej” funkcji warstwy podstawowej .. w rezultacie powstaje warstwa klipu, która nigdy nie udoskonaliła klipu na wielokącie, więc klip stracił 30% powierzchni .. więc zwykle najpierw próbuję zrobić to z QGis .. a następnie, jeśli nie zadziałało ... przenieś kształty do mojego bardzo starego notebooka i niech praca zostanie wykonana w prosty i szybki sposób .. Qgis zwykle działa lepiej w środowisku Windows .. ale "warstwa" problem z rozmiarem jest tam również bardzo powszechny. (Używam GIS od 1995 r. od Arcview 3.0 do Arcgis 10.2, a od 2003 r. używam Qgis .. w systemie Windows i teraz w Ubuntu (w pracy))

Pablo
źródło