Mehr Leistung beim Arbeiten mit mehreren Erweiterungen

Aktiviert für Öffentliche Vorschauversion Allgemeine Verfügbarkeit
Administrator*innen, Maker*innen, Marketingspezialist*innen oder Analyst*innen, automatisch 8. Sept. 2023 2. Okt. 2023

Geschäftswert

Die Erhöhung der Geschwindigkeit, mit der Daten auf den Server geladen werden, ist in allen Anwendungsfällen hilfreich, einschließlich der Einbindung von Webdiensten, bei Hintergrundjobs und interaktiven Sitzungen.

Details zur Funktion

Bei dieser Version liegt der Fokus auf der Optimierung eines wichtigen Teils des Datenstacks in Business Central Server: dem Datenmodell für Tabellenerweiterungen.

Wenn eine Entwicklungskraft in früheren Versionen eine Tabelle erweiterte, wurden die Felder aus der Tabellenerweiterung in einer separaten Tabelle namens Begleittabelle in der Datenbank gespeichert. Dieses Design wurde gewählt, um den App-Lebenszyklus (Installation, Aktualisierung, Deinstallation) so zu gestalten, dass die normale Nutzung der Basistabelle nicht unterbrochen wird. Leider wirkte sich dies auch auf die Laufzeitleistung des Systems aus, da der Business Central Server beim Lesen von Daten aus einer Tabelle Daten aus Tabellenerweiterungen zusammenführen musste. Beispielsweise musste der Server für eine Tabelle mit 7 Tabellenerweiterungen möglicherweise einen 7-Wege-Join durchführen.

In dieser Version nun wurde das Datenmodell für Tabellenerweiterungen geändert, sodass hinzugefügte Felder aus allen Erweiterungen einer Tabelle jetzt in derselben Begleittabelle gespeichert werden. In diesem neuen Modell muss der Server nie mehr als einen einzigen Join der Basistabelle mit seiner Begleittabelle durchführen. Wir gehen davon aus, dass dies die Leistungsauswirkungen bedingt durch Tabellenerweiterungen auf Basistabellen drastisch mindert und die Stabilität von App-Lebenszyklusereignissen gewährleistet bleibt. Das Cloud-Migrationstool unterstützt dieses neue Schema bei der Migration von Daten aus älteren Versionen auf Version 23.

Erwartete Leseleistung nach Anzahl der TabellenerweiterungenErwartete Leseleistung nach Anzahl der Tabellenerweiterungen

Beachten Sie, dass sich diese Änderung nicht auf das Tabellenmodell aus der AL-Sprache auswirkt und somit seitens der Herausgeber von Erweiterung/App keine Codeänderungen erforderlich sind. Ein weiterer Vorteil des neuen Datenmodells in der Datenbank besteht darin, dass Entwickler*innen Code mit Tabellenerweiterungen jetzt so verwalten können, wie sie wollen, ohne sich Gedanken über eine Beeinträchtigung der Leistung machen zu müssen, wenn sich Tabellenerweiterungen in Apps befinden.