Jan Hagemeister stellte seine Erkenntnisse für die Suche in grossen Datenmengen vor. Anhand einer Beispieldatei demonstrierte er unterschiedliche Herangehensweisen und die Auswirkungen auf die Performance, wenn in einer Tabelle mit mehreren Millionen Einträgen z.B. bestimmte Zeiträume eingegrenzt werden sollen.

Es wurde schnell deutlich, wo die Flaschenhälse bei konventioneller Herangehensweise bei der Suche von Datumsbereichen und der anschließenden Auswertung von Summen in der Ergebnismenge liegen. Durch geschickte Kombination von Optimierungen war es am Ende möglich, auch große Datenbestände schnell zu filtern und auszuwerten.

Beeindruckend war u.a. die Verwendung einer Custom-Function zum erzeugen von optimierten Sub-Strings für einen Datumsbereich. Zum einen konnte so per String-Suche sehr schnell in einem Timestamp gesucht werden. Zum anderen gelang es, nach einigen Optimierungsschritten die Custom-Function von einem mehrseitigen Formel-Monster auf wenige Zeilen zu reduzieren. Mit Hilfe der in FileMaker 18 neu eingeführten While-Funktion konnte die Performance der Custom-Function nochmals deutlich gesteigert werden. Das Ergebnis war beeindruckend: Benötigte die ursprüngliche Funktion noch mehrere hundert Millisekunden, war die finale Fassung in der Lage, das gleiche Ergebnis in nur 4 Millisekunden zu erzeugen!

Für die Berechnung von Summen wurden statt der üblichen Statistikfelder entweder Script-Schleifen bzw. die Ersetzen-Funktion verwendet. Auch hier wurden deutliche Performance-Steigerungen sichtbar.

Insgesamt eine anschauliche Lektion, wie sich Optimierungen bei der Herangehensweise an alltägliche Aufgabenstellungen in einer FileMaker-Lösung geschickt lösen lassen.