Czy PostGIS i QGIS zapewniają niezawodną edycję dla wielu użytkowników?

21

Po rozważeniu kilku opcji, staram się dać moim 15-20 użytkownikom QGIS 2.2 możliwość jednoczesnego przeglądania / edycji jednej lub dwóch podstawowych warstw punktowych PostGIS, największa z nich ma tylko 16 000 rekordów. Zainstalowałem PostgreSQL 9.1 / PostGIS 2.0 i podstawowe testy wydają się działać dobrze, ale nie wypuściłem ich jeszcze na masę.

Zwykle będziemy mieć tylko 2-3 redaktorów naraz, ale być może 15 osób. Wszystkie zmiany będą w QGIS, przeglądający to QGIS i ArcGIS (ale nie mamy SDE).

Jak powiedziałem, są to tylko podstawowe pliki punktów, a zmiany będą tylko dodawaniem / usuwaniem punktów i niektórymi edycjami tabel. Nie martwię się o edycję tych samych funkcji w tym samym czasie.

Czy połączenie może zapewnić niezawodną edycję dla wielu użytkowników dla dwóch podstawowych plików punktów?

mikrofon
źródło

Odpowiedzi:

15

Ponieważ nie martwisz się jednoczesnymi edycjami funkcji, powiedziałbym, że teoretycznie nie masz się o co martwić. Głównym zagrożeniem związanym z QGIS jest to, że jednoczesni redaktorzy mogą na siebie nawzajem naciskać bez zauważenia („ostatnia edycja wygrywa”).

W przypadku danych w trakcie aktywnej edycji z wieloma użytkownikami możesz przynajmniej śledzić historię, co możesz zrobić bez zmieniania czegokolwiek o QGIS, po prostu dodając wyzwalacze i tabelę historii do aktywnych tabel.

http://postgis.net/workshop/postgis-intro/history_tracking.html

W ten sposób, jeśli kiedykolwiek będziesz chciał cofnąć zmiany, będziesz miał łatwiejszy dostęp do miejsca, w którym można wykonać kopie zapasowe bazy danych i odzyskiwanie w określonym momencie.

Paul Ramsey
źródło
Dzięki za odpowiedź @Paul, wygląda na to, że jednoczesna edycja wielu użytkowników PostGIS za pośrednictwem QGIS jest bezpieczna do dokonywania aktualizacji tabel i przenoszenia istniejących punktów. Moje główne obawy dotyczą WSTAWEK i USUWANIA. Jeśli dwóch użytkowników ma otwarte sesje edycji, użytkownik A dodaje punkt, a użytkownik B usuwa punkt. Użytkownik A najpierw zapisuje. Kiedy użytkownik B zapisuje, czy punkt użytkownika A zostanie usunięty, ponieważ nie był częścią bazy danych, gdy użytkownik B rozpoczął edycję? Dzisiaj przeprowadzę kilka testów, ale to moja główna troska (utrata edycji).
Mike
Testuj, ale rozumiem, że edycja QGIS polega na tym, że jest ona funkcja po funkcji, więc będzie zapisywać tylko określone działania użytkownika, a nie cały stan widoku danych, gdy klikną Zapisz. Więc w twoim przykładzie punkt A zostanie dodany, a punkt B zostanie usunięty, tak jak chcesz.
Paul Ramsey
3
Spędziłem dziś kilka godzin na testach. Masz rację, robi to, co miałem nadzieję. Jedyną rzeczą do obejrzenia jest to, że użytkownik usuwa rekord i zapisuje go, nie ma go, niezależnie od otwartych sesji innych użytkowników. Dzięki za pomoc @Paul! Teraz muszę skonfigurować śledzenie historii .....
Mike,