Beziehungsklassen verwenden oder nicht verwenden?

12

Ich baue eine Regierungsdatenbank aus einer riesigen Datenmenge auf. Jetzt verfolge ich den Standardansatz des ESRI-Datenmodells für Kommunalverwaltungen, das jedoch an die Bedürfnisse und Wünsche einer bestimmten Regierung angepasst wurde.

Ich habe festgestellt, dass ESRI im Datenmodell der Kommunalverwaltung viele Beziehungsklassen verwendet. Ich habe in der Vergangenheit Beziehungsklassen verwendet, aber ich neige dazu, mich von ihnen fernzuhalten. Dies liegt daran, dass ich normalerweise keinen Grund sehe, warum ich Attribute zu einer Form in einer von der Feature-Class getrennten Tabelle haben möchte.

Für fast alle Daten, die ich zusammenstelle, kann ich immer noch keinen Grund dafür erkennen. Für Parcel Fabric sehe ich einige Gründe, aus denen es hilfreich wäre, aber ich glaube trotzdem, dass es am besten ist, die Attribute direkt in der Feature-Class zu behalten.

Um klar zu sein, dass ich Beziehungsklassen verwenden werde, um Feature-Classes auf Feature-Classes zu verweisen, wird diese Frage näher erläutert, warum ich Daten in einer nicht räumlichen Tabelle speichern würde, die genauso einfach in einer Feature-Class gespeichert werden könnte.

Trotzdem vielen Dank für alle Input-Leute!

Cody Brown
quelle

Antworten:

17

Der Grund, warum Personen Daten in separaten Tabellen organisieren, liegt in den Prinzipien der Datenbanknormalisierung (folgen Sie dem Link, alle Gründe sind vorhanden). Davon abgesehen sind ESRI-Beziehungsklassen eine Implementierung dieser Prinzipien auf GeoDatabase-Ebene. Ehrlich gesagt würde ich sie persönlich nur in zwei Fällen verwenden:

Obwohl die Benutzer möglicherweise behaupten, dass die referenzielle Integrität einer der Vorteile ist, besteht die Wahrheit darin, dass sie mit einer SQL-Eingabeaufforderung umgangen werden kann. Der Vorteil hängt also wirklich von dem Workflow ab, den Sie für die Änderung haben (dh verwenden die Benutzer nur ArcMap für?) Bearbeiten oder Bearbeiten mit SQL-Abfragen oder Nicht-ESRI-Tools).

Ragi Yaser Burhum
quelle
2
Wow, tolle Antwort. Die große Welt der Datenbanktheorie hat mich einfach umgehauen. Vielen Dank für die Eingabe!
Cody Brown
8

Denken Sie an das Gesamtbild - GIS-Daten sind für die meisten Menschen nur ein Mittel zum Zweck, insbesondere für staatliche Stellen. Nach meiner Erfahrung sind Beziehungsklassen in erster Linie nützlich (und angemessen), wenn Sie nicht räumliche Daten in eine: viele Beziehungen zu Ihren räumlichen Daten integrieren müssen, insbesondere wenn sie von einer externen Quelle stammen oder sich ständig ändern . Einige Beispiele aus der Praxis, die ich mit Regierungsbehörden erlebt habe, können dies veranschaulichen:

  • Speichern mehrerer nicht räumlicher Aufzeichnungen über ein Merkmal (z. B. monatliche Inspektionsaufzeichnungen für einen Hydranten oder ein Ventil)
  • Verweisen auf verwandte Datensätze aus einer Datenquelle, die Sie nicht steuern (z. B. Lesen von Wartungsdatensätzen aus der Datenbank eines Asset Management-Programms eines Drittanbieters)
Brichins
quelle