Drei goldene Regeln für die Datenstruktur

Je länger man sich mit der FileMaker-Entwicklung professionell beschäftigt, desto mehr Tipps, Tricks und Ratschläge kommen einem über den Weg. An dieser Stelle möchte ich euch meine drei Regeln auf den Weg zu einem besseren FileMaker-Entwickler geben. Ich gehe so weit und sage, diese Tipps sind keine Ratschläge, nein, in meinen Augen sind es drei FileMaker-Axiome, welche eine normale Datenbank von einer Spitzendatenbank unterscheiden können.

Im Laufe der Jahre wurde FileMaker an vielen Stellen (leider noch nicht an allen) weiterentwickelt. Durch neue Features, wie z.B. Ausschnitte und Script-Trigger, eröffnen sich dem Entwickler ganz neue Möglichkeiten bei der Layoutgestaltung, die eine moderne Interaktion mit Datensätzen erlauben, ohne auf Plugins angewiesen zu sein und nicht zu wissen, ob und wann sie in der nächsten FileMaker-Version einsetzbar sind.

ABER…

Ja, jetzt kommt das große „aber“. Man kann noch so ausgeklügelte und schöne Layouts entwickeln, wenn das Datenmodel nicht stimmt, kann der tägliche Einsatz einer FileMaker-Datenbank (im Grunde genommen jeder Datenbank) schnell zu einem Geduldspiel für die Benutzer werden. Wechselt man zum Beispiel zwischen zwei Layouts und sortiert dabei die Datensätze, so kann es bereits bei wenigen Tausend Datensätzen zu längeren (unfreiwilligen) Pausen im Workflow kommen. Über den Tag gesehen, kann das Warten einen signifikanten Teil der Arbeitszeit ausmachen, in der ein Benutzer nicht produktiv arbeiten kann.

Nun, die richtige Datenstruktur ist das A und O einer performanten FileMaker-Datenbank. Daher sind hier die drei goldenen Regeln für die Datenstruktur:

1. Beziehungsdiagramme immer als Anker-Bojen-Modell aufbauen
2. Als Anker immer nur die automatisch von FileMaker erzeugte Tabelleninstanz benutzen
3. Feldberechnungen immer nur auf dem Anker ausführen

Zu 1. Da FileMaker Layout basiert auf Daten zugreift, ist der Anker-Bojen-Ansatz in meinen Augen der einzige, der die maximale Performance beim Datenzugriff erlaubt, da die Datenmenge, die in den Speicher geladen werden muss, so klein wie Möglich gehalten wird. Für jedes Layout verknüpft man so wenige Tabellen wie möglich und so viele wie nötig. Natürlich kann man einen Anker-Bojen-Baum für viele Layouts nutzen, es werden aber immer nur so viele Daten/Felder geladen, wie in dem Baum vorhanden sind.

Advertisements

6 Gedanken zu „Drei goldene Regeln für die Datenstruktur

  1. Hallo,

    zu 1. Da hab ich ja intuitiv schon einiges richtig gemacht, schon der Übersichtlichkeit halber.

    zu 2. Warum? Hat man einen signifikanten Performance-Verlust, wenn man mit der Kopie der Erst-Instanz arbeitet?

    zusätzlich. Ich lege außerdem immer einen Tabellenbaum an, der den Grundgedanken der Datenbank und die Beziehungen zwischen den Daten in den einzelnen Tabellen darstellt, unabhängig vom Layout.

    Grüße, der Paul

    • Hallo Paul,

      Zu 1: ja, im Beziehungsdiagrmm wird es um einiges übersichtlicher. Um vom Anker-Bojen-Modell noch mehr zu profitieren, sollte man auch eine passende Beschriftung der Tabelleninstanzen wählen. Dazu dann mehr in einem weitern Artikel.

      Zu 2 kann ich leider keine Zahlen in Sekunden angeben. Der Grund, wieso man Punkt 2 befolgen sollte, liegt im internen Aufbau der FileMaker Datei. Bei der Erst-TO sind die Zugriffmuster auf die Daten im Baum am schnellsten.

      Zu zusätzlich: das mach ich manchmal auch, nur wird dieser Baum nie als Grundlange für ein Layout benutzt. Es sei dann man hat Gründe es zu tun.

      Grüße, Adam

  2. nochmal eine Frage zu Punkt 2: Kann man nachträglich feststellen, welches TO das Erst-TO ist (in dem Fall, dass es schon mehrere TOs zu einer Tabelle gibt und diese umbenannt wurden)?

  3. Pingback: Erste Tabelleninstanz im Beziehungsdiagramm finden | The TAO of FileMaker

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s