„Navision kann auch Kaffee kochen“ – Oder warum SQL-Optimierung?
„Navision kann auch Kaffee kochen.“ So lautet manchmal die scherzhafte Antwort unserer Entwickler, wenn es darum geht, ob sich bestimmte Anforderungen im Programm umsetzen lassen oder nicht. Auch wenn Kaffee kochen vielleicht nicht zu den Anforderungen gehört, die häufig gestellt werden, soll damit nur zum Ausdruck gebracht werden, dass sich nahezu jede Anforderung umsetzen lässt. Viele Dinge sind ja auch bereits im Standard gelöst. Oft enthält der Standard auch Funktionen, die in Ihrer konkreten Installation nicht genutzt werden, da sie für die Abwicklung Ihres Geschäftes nicht notwendig sind.
In der Regel ist es für Sie nicht störend, dass diese Funktionen im Hintergrund vorhanden sind und nicht verwendet werden. Dies ändert sich jedoch, wenn sich über die Zeit eine große Menge Daten in Ihrer Datenbank angesammelt haben, da in diesen Daten auch Informationen enthalten sind, die nur für die Verwendung in den nicht genutzten Funktionen vorgesehen sind. Diese zusätzlichen Informationen stellen bei großen Datenmengen eine unnötige Last für das System dar und können bei einzelnen Prozessen zu einer erheblichen Einschränkung in der Performance des Systems führen. Spätestens dann wird es Zeit für eine „SQL- Optimierung“.
Im Rahmen dieser Optimierung prüfen unsere Experten, welche Daten der SQL-Server für Navision bereitstellt und ob diese überhaupt genutzt werden. Mit Hilfe SQL-interner und selbst entwickelter Werkzeuge wird dabei analysiert, welche Indizes im Server verwaltet werden und wie diese aufgebaut sind und genutzt werden. Darum ist es für eine solche Optimierung immer Grundvoraussetzung, dass schon eine Zeitlang mit dem System gearbeitet wurde, um überhaupt Informationen über die Nutzung erhalten zu können. Indizes, deren Erstellung bei Veränderung oder Neuerstellung von Daten zwar vom Server erstellt, später jedoch nie oder selten Verwendung finden, werden abgeschaltet. Dies beschleunigt das System beim Schreiben von Daten, z. B. beim Buchen. Häufiger verwendete Indizes können untersucht und optimiert werden. Dies beschleunigt das System beim Lesen von Daten, z. B. beim Öffnen der Auftragsübersicht.
Im Rahmen umfangreicherer Optimierungen besteht auch die Möglichkeit, das exakte Verhalten der Anwendung bei bestimmten Prozessen zu protokollieren und gegebenenfalls solche Programmcodes zu optimieren, die nicht optimal für Ihre individuelle Nutzung der Anwendung gestaltet sind. Der daraus resultierende Geschwindigkeitszuwachs ist teilweise enorm.
Unsere Empfehlung ist daher: Lassen Sie eine SQL Optimierung von uns durchführen bevor Sie ein Nachlassen der Arbeitsgeschwindigkeit des Systems feststellen. Bei Neukunden, bei denen mit großen Datenmengen zu rechnen ist, gehört die SQL-Optimierung, welche in der Regel zwei Monate nach dem Echtstart stattfindet, bereits von Anfang an zum Projektvertrag.