SQL: Datenbankabfragen beschleunigen

Backend verknüpfen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Da die Tabellen sinnvollerweise in einer getrennten Datenbank, dem so genannten Backend, gespeichert werden, sollte auf jeden Fall geprüft werden, ob dies möglicherweise zu Zeitverlusten führt.

Transkript

Wenn so eine Access-Datenbank fertig entwickelt ist und zum Kunden kommt, ist es eigentlich fast selbstverständlich, dass Sie die aufteilen, in ein so genanntes Frontend und Backend. Das Backend ist die Datenbank, die ausschließlich die Tabellen enthält, und das Frontend den ganzen Rest, so wie Verknüpfungen zu diesen Tabellen. Und früher oder später fragt mach sich: Ist das eigentlich sinnvoll? Da müssen doch die Daten dauernd hin und her bewegen werden. Wäre es nicht bequemer und schneller vor allem, die Tabellen in einem einzigen Frontend zu belassen? Und es gibt sogar verschiedene Varianten. Ich habe hier einmal ein paar Verknüpfungen angelegt zu Datenbanken, die sich an unterschiedlichen Stellen befindet und auch unterschiedlich heißen. Das ist deutlich zu sehen, wenn ich jetzt hier einmal den Tabellen-Verknüpfungs-Maneger aufmache. Das ist das Backend, welches sich im gleichen Pfad wie das Frontend, was Sie hier gerade sehen, befindet. Und zwar mit einem einmal kurzem Namen. Das ist natürlich eine Datei, aber die Daten sind die gleichen. Und einmal einem langen Namen. Und einem richtig langen Namen. Ich habe das als weit weg bezeichnet. Denn das passiert sehr schnell in solchen Netzwerkumgebungen, dass Sie in irgendeiner Form einen sehr komplizierten Pfad angeben. Und je länger der Pfad, desto mehr muss natürlich das Betriebssystem dahin finden. Es gibt noch mehr Sachen, um die man sich kümmern müsste. Also ganz klar, wenn Ihr Netzwerk langsam ist, können Sie den Pfad so kurz benennen wie Sie wollen. Das hat massiven Einfluss. Aber auch die anderen Sachen könnten Einfluss haben. Da gibt es immer wieder Diskussionen. Da entdeckt immer wieder einer, wo Probleme verursacht werden könnten. Das können wir vielleicht eben angucken. Also die erste Frage lautet: Sollen die Tabellen im Frontend verbleiben, weil das da, so zu sagen, dichter dabei ist, oder in ein Backend verschoben werden? Und die erfreuliche Erkenntnis lautet, der Zugriff, die Geschwindigkeit im Frontend ist 140 ms, im Backend 141 ms. Das heißt auf Deutsch - kein Unterschied - wenn das Backend im gleichen Pfad ist nicht irgendwo weit weg im Netzwerk. Also so lange Sie einfach nur die Tabellen vom Frontend zum Backend verschieben, gibt es keinen ernsthaft messbaren Unterschied. Die Frage ist, was passiert, wenn es woanders liegt? Denn typischerweise ist der Speicherort des Backends nicht bei Ihnen auf Ihrem lokalen Rechner, sondern irgendwo auf einem Gruppenlaufwerk, oder so. Also der Unterschied zwischen einem Backend im gleichen Pfad oder in einem anderen Laufwerk. Da muss man ganz deutlich dazu sagen, da kommt jetzt eine Zeitgeschwindigkeit dazu. Wenn Ihr Netzwerk die Daten nur so durch tröpfeln lässt und nicht wirklich schneller Zugriff Geschwindigkeiten hat, dann haben Sie ein richtiges Problem. Aber wenn Ihr Netzwerk in Ordnung ist, dann werden Sie feststellen: - Im gleichen Pfad 141 ms - In einem anderen Laufwerk 140 ms Super! Macht keinen wirklichen Unterschied. Es ist also so hinzukriegen, sage ich mal vorsichtig, dass man keinen Unterschied merkt, wo sich die Daten befinden. Und auch die Namenslänge hat nicht zwingend einen Einfluss, wenn Sie den Pfad und den Dateinamen kurz wählen oder länger. Sie haben dieses Monster vorhin gesehen, dann ist der Unterschied nicht mehr wirklich schlimm: - Kurze Namen 140 ms - Lange Namen sogar ein bisschen schneller 89 % Aber das liegt alles im Bereich dessen, was ich als Messungenauigkeit bezeichnen würde. Microsoft weist allerdings darauf hin, dass sehr lange Pfadnamen dazu führen könnten, und vor allem Pfadnamen, die nicht den alten 8.3 Konventionen entsprechen - also 8 Zeichen ein Punkt, 3 Zeichen Endung oder sowas - die müssen immer wieder übersetzt werden. Und das würde länger dauern. Wenn Sie also den Verdacht haben, da ist irgendwas nicht schnell genug, dann sollten Sie kurze Namen wählen. Es ist nicht zwingend ein Problem, wie Sie hier sehen, sondern es ist ein Kandidat für ein mögliches Problem. Insgesamt kann man ganz klar sagen, die Daten aus den Tabellen gehören in ein Backend und dieses Backend darf ein bisschen entfernt stehen. Wenn Sie es wirklich weit in einem schwierigen Netzwerk unterbringen, dann mag es Probleme geben, aber das muss nicht sein. Es ist so hinzukriegen, dass Sie genau so schnellen Zugriff haben, als ob es in Ihrer Frontend-Datei enthalten wäre. Und der zweite Punkt betrifft wieder inhaltlich die Daten. Es geht eigentlich gar nicht, dass Ihre Daten im Frontend sind. Dann könnten Sie nämlich nie wieder, sobald Sie beim Kunden ausgeliefert haben, nachbessern an Ihren Macros, an Ihren Formularen, weil der Kunde Ihre Daten in der gleichen Datei via Frontend hat. Und wenn mehrere darauf zugreifen, kann sich das auch kaum am gleichen Ort befinden. Dann brauchen Sie ein Netzwerk und ein Gruppenlaufwerk oder Ähnliches. Also es spricht alles dafür, die Daten in ein Backend zu schieben und fast nichts dagegen, ein bisschen entfernt liegt. dass dieses Backend irgendwo

SQL: Datenbankabfragen beschleunigen

Entdecken Sie, wo das Beschleunigungspotenzial für SQL-Datenbanken liegt und lernen Sie die Rezepte für bessere Performance.

2 Std. 15 min (39 Videos)
Derzeit sind keine Feedbacks vorhanden...
Exklusiv für Abo-Kunden
Erscheinungsdatum:25.03.2015

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!