Jest to kontynuacja mojego poprzedniego pytania na temat naszego projektu, jak ekonomicznie uciec od wdrożenia cmentarza w systemie GIS…
Na cmentarzu możemy znaleźć
- Zwykłe groby: do 2 osób
- Groby rodzinne: więcej niż 2, niektóre do 20 (siostry ze zboru katolickiego…)
- Pomnik Wojny: około 30 osób
- Obszar rozproszenia popiołu: nieograniczony, począwszy od 100 osób
- Pola z urnami pogrzebowymi: do 2 na miejsce
- Ściany z urną pogrzebową: do 3 wysokości
Więc jaka jest najlepsza droga, definiując:
- każda osoba jako obiekt PUNKT
- każdy grób jako obiekt PUNKTU, osoby są częścią atrybutów
Dla każdej osoby wybrałbym jako obiekt POINT:
- Jeden prosty plik CSV dla wszystkich osób.
- Kolumny mogą być na przykład: FirstName - FamilyName - YearDeceased
- Niezależny od liczby osób w grobie
- W ten sposób nawet obszar rozproszenia popiołu może przejść do pliku
- W końcu trzeba napisać kod, aby dodać do wyników przeszukania innych osób zakopanych w tym samym grobie
Komplikacje, które widzę z każdym grobem jako obiekt POINT:
- Każdy RZĄD potrzebuje kolumn dla maksymalnej liczby osób w grobie…
- Oznacza to, że wiele komórek będzie pustych z powodu zaledwie kilku grobów z dużą ilością ludzi
- Ale co z OBSZAREM ZAKRESU POPIOŁU? 100 osób wymaga wszystkich dodatkowych kolumn w tabeli…
- Nie ma sensu przechowywać wszystkich danych w jednym pliku CSV, ale posiadanie większej liczby plików bardzo skomplikuje sprawę.
Tak więc komentarze są mile widziane: osoba czy grób jako obiekt POINT? Lub nic z tego i czy muszę to zrobić w inny sposób?
W moim mieście, 3 lata temu, biuro przygotowało dla nich pliki SHP. Przekazano mi te akta i zauważyłem, że groby są narysowane jako POLYGONY. Jest to plik DBF dla „danych grobów”. Normalne groby mają 4 zestawy współrzędnych, wydaje się logiczne. Ale kilka rzeczy wydaje mi się absurdalnych:
- Istnieje „ściana urny” z sześciokątną kolumbarią narysowaną jako zestaw figur heksagonalnych… Oznacza to, że każda figura ma 6 zestawów współrzędnych…
- W „obszarze rozpraszania popiołu” znajduje się filar z małymi prostokątnymi tabliczkami znamionowymi, narysowali prostokątny POLYGON dla każdej tabliczki znamionowej z 4 zestawami współrzędnych… Dla mnie użycie POLYGONÓW w tych przypadkach wydaje się zbyt przesadne w bazie danych.
Poza tym popraw mnie, jeśli się mylę, używając:
- POLYGONS wymaga plików DBF, więc edytor DBF (dodatkowe koszty)
- PUNKTY wymagają tylko plików CSV, więc EXCEL wystarczy (bez dodatkowych kosztów)
W większości miast dane zmarłych pochodzą z pliku CSV:
- wykonane bezpośrednio w EXCEL lub
- wyeksportowane z programu opartego na DOS, stworzonego, gdy WIN95 był jeszcze w pobliżu…
Dalsze zarządzanie „danymi osób” w jednym pliku CSV i EXCEL pozwala uniknąć:
- kupując oprogramowanie, które może edytować pliki DBF
- martwiąc się o zaimportowanie „danych osób” do pliku DBF Wydaje się, że nie zawsze jest bezproblemowe importowanie, edytowanie i zapisywanie danych z CSV do plików DBF i NIE powoduje uszkodzenia danych. Przeczytałem, że może tak być w szczególności podczas pracy z ArcGis (ESRI).
Odpowiedzi:
Postawiłbym skomplikowaną drogę: dwie tabele w relacji 1: n
Możesz zbudować relację między dwiema tabelami, aby wybranie grobu spowodowało zaznaczenie wszystkich rekordów osób w tabeli osób.
Pomysł posiadania tabel z polami takimi jak Person1, Person2 ... jest okropnym i złym projektem.
źródło
Zrobiłbym wielokąt dla grobu, ponieważ sam grób jest działką i miał dla ludzi relację jeden do wielu; jeden grób może mieć zero (niezamieszkany, dostępny lub na sprzedaż?) lub wiele osób. Możesz również użyć punktu zamiast wielokąta. Wieloboki byłyby lepszymi prezentacjami dla sprzedaży i konserwacji.
źródło
Przyjąłbym sugestię DenaliHardtail, aby użyć wielokątów do przedstawienia dokładnych rozmiarów wykresów. Ta warstwa może mieć tabelę z Grave_ID, Grave_Type, Grave_Capacity i Grave_Occupancy_Number. Wtedy możesz mieć warstwę punktową z punktami pokrywającymi odpowiednie wieloboki grobowe. Kolumny dla tabeli warstwy punktowej mogą być Person-ID, First_Name, Family_Name, Birthdate, Deathdate, Graveowner i Grave_status (sprzedane, niezajęte itp.). Następnie możesz dołączyć odpowiedni identyfikator grobu dla każdej osoby, aby później dopasować osobę do grobu i utworzyć później pojedynczy stół excel ze wszystkimi informacjami o grobie i indywidualnej osobie.
źródło
Normalizacja danych prowadzi do niektórych brakujących pomysłów / punktów. Myślę też, że Excel może zrobić wszystko, co chcesz dla „bazy danych”, którą rozważasz. Wskazówka: używaj arkuszy lub wielu plików i używaj odmian funkcji wyszukiwania. Zapisz w plikach przydatnych do importowania / wyszukiwania z QGIS
Widzę te dyskretne tabele [lub arkusze programu Excel] na początek zestawu danych. Każdy arkusz / plik jest łatwo obsługiwany przez początkujących użytkowników, o ile kolumny są wyraźnie podane (i są zamrożone jako górny wiersz ...), a nowicjuszowi przypomina się, że identyfikatory są unikalne i pozostają niezmienione po przypisaniu. Arkusze i kolumny:
Jeśli chodzi o sposób myślenia nowicjusza, nie sugeruję, abyś w pełni znormalizował kwestie tożsamości i ich kolumny, w taki sposób, że pokrywają się one między właścicielami i zmarłymi, i tworzy niepotrzebne 1-wiele pomocniczych tabel z niczym innym, jak tylko różnymi identyfikatorami. Jako kompromis dla prostoty wyobrażam sobie stosunek 1 do 1 między tabelami wykresów i właścicielami
Myślę, że ta uogólniona konfiguracja zajmie się takimi problemami, jak: stosy popiołu, krypty ścienne, śledzenie właściciela / opiekuna, wielu zmarłych na działce i wiele innych.
Na koniec pamiętaj, aby utworzyć kilka stałych wierszy w dwóch tabelach / arkuszach dla właściciela i zmarłego: nieznany właściciel; nieznany zmarły; nieznany wielokrotny zmarły; własnością cmentarza; nie posiadający właściciela; itp.
źródło