SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




SharePoint-Liste lädt sehr langsam wegen Datenbankzugriff

Geprüfte Antwort Dieser Beitrag hat 6 Antworten

Ohne Rang
58 Beiträge
PeterLustig erstellt 3 Jan. 2011 16:33
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Guten Abend und frohes Neues,

ich habe mit Info-Path ein Formular entworfen, über das neue Einträge in einer Liste angelegt werden können. Dieses Formular enthält auch mehrere Datenverbindungen zu anderen SharePoint-Listen und auch zu Datenbanken. Das Formular funktioniert einwandfrei, will ich jedoch ein neues Element anlegen oder bearbeiten, benötigt der SharePoint einige Sekungen bis er das Formular geladen hat. Dektiviere ich die Datenverbindungen zu den Datenbanken geht alles gewohnt schnell -> Problem erkannt! Lösung gesucht!

Kann ich die vom Formular angeforderten Daten irgendwie cachen, damit das Formualr schneller lädt?

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 3 Jan. 2011 16:37
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="PeterLustig"]Kann ich die vom Formular angeforderten Daten irgendwie cachen, damit das Formualr schneller lädt?[/quote]

Das sollte eigntlich automatisch passieren. Geht es denn nicht schneller, wenn Du zweimal hintereinander ein neues Formular anlegst?

Ansonsten kann man noch prüfen, ob man die Abfragen nicht optimieren kann. Stecken da vielleicht komplizierte Queries dahinter? Oder Filter auf nicht indizierte Spalten?

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
58 Beiträge
PeterLustig Als Antwort am 4 Jan. 2011 13:50
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="Andi Fandrich"] Das sollte eigntlich automatisch passieren. Geht es denn nicht schneller, wenn Du zweimal hintereinander ein neues Formular anlegst? [/quote]

Also merkbar schneller wird es nicht, wenn ich mehrere Elemente nacheinander anlege.

[quote user="Andi Fandrich"] Ansonsten kann man noch prüfen, ob man die Abfragen nicht optimieren kann. Stecken da vielleicht komplizierte Queries dahinter? Oder Filter auf nicht indizierte Spalten? [/quote]

Die Abfragen an die Datenbank ist ziemlich simpel. Ich hole mir ausschließlich die Inhalte aus 3-4 Spalten (von ca 15) einer Tabellen. Die Tabelle enthält allerdings eine Große Anzahl an Datensätzen. Die Daten werden dann innerhalb des Formulars weiter gefiltert, nachdem der User eine Wort oder eine Wortgruppe eingibt, das geht dann auch schnell. Mir würde es auch reichen, wenn das Formualr sich die Daten erst dann aus der Datenbank zieht, wenn der Filter durch den User gesetzt wird, aber im Moment scheint er beinm Laden des Formualrs schon alle Daten zu laden.

Oder ist meine Methode eventuell falsch/optimierungsfähig, die Datenverbindungsdatei in einer Datenverbindungs-Bibliothek im SharePoint zu hinterlegen und darüber auf die Datenbank zuzugreifen?

 

 

 

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 5 Jan. 2011 08:53
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="PeterLustig"]Die Abfragen an die Datenbank ist ziemlich simpel. Ich hole mir ausschließlich die Inhalte aus 3-4 Spalten (von ca 15) einer Tabellen. Die Tabelle enthält allerdings eine Große Anzahl an Datensätzen. Die Daten werden dann innerhalb des Formulars weiter gefiltert, nachdem der User eine Wort oder eine Wortgruppe eingibt, das geht dann auch schnell. Mir würde es auch reichen, wenn das Formualr sich die Daten erst dann aus der Datenbank zieht, wenn der Filter durch den User gesetzt wird, aber im Moment scheint er beinm Laden des Formualrs schon alle Daten zu laden.[/quote]

Hier liegt dann wohl das Problem. Bei der Datenverbindung kann man einstellen, ob beim Laden des Formulars bereits alle Datensätze geholt werden sollen. Gib der Abfrage einen zusätzlichen Filter (WHERE-Bedingung) und lade die Daten per Regel wenn das entsprechende Feld gesetzt wurde.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
58 Beiträge
PeterLustig Als Antwort am 5 Jan. 2011 09:49
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Danke Andi,

ich habe deinen Rat befolgt und das Formular lädt jetzt "normal" schnell. Jetzt muss der User nach der Eingabe des Filterwertes zwar dennoch ein paar Sekunden warten, bis die Daten verfügbar sind, aber insgesamt ist er auch hier schonmal schneller geworden.

Ohne Rang
391 Beiträge
Frank Daske Als Antwort am 3 Jan. 2011 16:52
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Man könnte die Daten aus der Datenbank in SharePoint Listen cachen, z.B. mit dieser Lösung:
http://www.layer2.de/de/produkte/Seiten/SharePoint-Business-Data-List-Connector.aspx

Die Daten sind dann immer performant verfügbar und man hat dazu auch noch alle Leistungsmerkmale von SharePoint Listen für die jeweiligen Abfragen verfügbar. Übrigens ggf. auch write-back bzw. Neuanlage in der Datenbank - ohne Programmierung.

Ohne Rang
58 Beiträge
PeterLustig Als Antwort am 4 Jan. 2011 15:18
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Frank,

diese Variante ist sicher eine gute Möglichkeit, um das Problem zu lösen. Leider aber nicht kostenfrei und demnach keine Lösung für mich.