Allgemeine Hinweise zu Datenquellen

Hintergrund

Als Integrationssystem werden in cardo beliebige Datenquellen angebunden. Dabei handelt es sich sowohl um Datenbanken als auch Quellen aus bspw. Geodatendiensten.

Die Funktionen in cardo verhalten sich i.d.R. identisch, egal welche Quelle zum Einsatz kommt.

Durch diese Breite an verfügbaren Datenquellen, kann nicht auf jede mögliche Spezialisierung eingegangen werden.

Es gibt einige generelle Hinweise, die beachtet werden sollten:

Aufbau der Daten

Generell werden alle Datenquellen als Struktur abgebildet, die einer Tabelle entspricht. D.h. die Daten sind in Zeilen und Spalten einfacher Typen organisiert.

  1. Der Umgang mit Spalten komplexer Strukturen ist im System (derzeit) nicht optimal abgedeckt.

    Hierbei handelt es sich z.B. um Objekte in Datenbanken, die per JSON oder XML repräsentiert werden, oder Daten aus GML Dateien u.ä..

    Versuchen Sie die Quelle normalisiert anzubieten. Lösen Sie Objekte durch geeignete Abfragen auf. Die meisten Datenbanken bieten inzwischen umfangreiche Möglichkeiten für JSON Abfragen.

  2. Der Umgang mit Datenquellen die eine exakte Schreibweise der Objektnamen voraussetzen ist nicht unterstützt

    Hierbei geht es darum, dass einige Datenquellen erlauben entweder für Objektnamen (Tabellennamen, Spaltenname etc.) die korrekte Groß/Kleinschreibung zu erzwingen (bspw. CI-Collaction in MsSQL Server), oder Spaltennamen mit Sonderzeichen, Umlauten, Leerzeichen usw. zu verwenden. In PostgreSQL bspw. durch das Angeben von Objektbezeichnern im doppelten Anführungszeichen.

    Verzichten Sie auf den Einsatz der hier genannten Funktionen der Datenbanken. Wenn Sie keine Zugriff auf die Quelldefinition haben oder diese nicht beeinflussen können (bspw. durch einen Import via GeoTools.Net, dann können Sie über eine Abfrage die Datenquelle so definieren, dass die Objektnamen dort wieder in einfacher Form bereitgestellt werden.

  3. Verzichten Sie auf die Verwendung spezieller Spaltentypen

    Jede Datenbank hat eine Menge von Spaltentypen. Dabei sind auch einige "Exoten" die nur für ein bestimmtes System verfügbar sind. Das sind bspw. die oben bereits genannten komplexen Datentypen wie JSON oder XML, Arrays in PostgreSQL, Domain-Typen usw.

    Neben diesen eher seltenen Typen gibt es zudem z.Z. Einschränkungen bei der Nutzung der Datentypen "Time" und "Date". Speziell für den Datentyp "Time" gibt es z.Z. keine optimale Unterstützung in cardo bezüglich Bearbeitung und Abfrage (Hintergrund ist hier, dass es diesen Datentyp in der genutzten Programmierumgebung nicht wirklich gibt).

    Verwenden Sie allgemein verfügbare Datentypen. Informieren Sie sich auch über da Type-Mapping der Iwan7 Datenquellen. Verzichten Sie auf den Datentyp Time oder Date in Datenquellen, die im AnySourceEditor verwendet werden sollen.

  4. Vermeiden Sie sehr lange Objektnamen oder sehr viele Spalten

    Die Limitierung für die maximale Länge von Objektbezeichnern (Spaltennamen, Objektnamen etc.) ist je nach Datenquelle unterschiedlich. Ebenso die maximale Anzahl an Spalten. Beim Export/Import solcher Daten sind damit Probleme vorprogrammiert.

    Reizen Sie die möglichen Limits nicht aus. Versuchen Sie die Anzahl der Spalten auf 50 Spalten zu begrenzen. Objektbezeichner sollten eine Länge von 30 Zeichen nicht überschreiten.


Zuletzt geändert: 21.03.2024 09:46:21 (erstmals erstellt 22.05.2023)