Laden...

Adressdaten Cachen oder Datenbank-Paging?

Erstellt von Savage vor 14 Jahren Letzter Beitrag vor 14 Jahren 1.258 Views
S
Savage Themenstarter:in
100 Beiträge seit 2004
vor 14 Jahren
Adressdaten Cachen oder Datenbank-Paging?

Ich habe eine Adressdatenbank (ca. 10.000 Datensätze). Primär blättern mehrere Benutzer durch diese Datensätze bzw. können darin suchen. Insert/Updates sind eher selten.

Derzeit läuft jeder Request über die Datenbank, d.h. das Suchen wird durch ein Where eingegrenzt bzw. es werden immer nur die Datensätze der aktuellen Seite (Von/Bis) geliefert.

Wäre es nun sinnvoller, diese Tabelle (ca. 10k Datensätze) direkt in den ASP.NET Cache zu packen? Sodass die Benutzer nur mehr mit dem Cache sprechen und nicht mehr immer mit der Datenbank? Wenn ja, bis wie viele Datensätze würdet ihr das machen?

Lg Savage

F
10.010 Beiträge seit 2004
vor 14 Jahren

Nein.

Im Gegenteil dadurch würde deine Anweung nur langsamer denn durch das konzept von
ASP.NET würdest Du haufenweise Speicher vergeuden.

Ein Sql-Server ist schon genau für diese Arbeit ausgelegt.

T
433 Beiträge seit 2006
vor 14 Jahren

Also da muss ich FZelle widersprechen.

Es gibt schon Szenarien wo es sinnvoll ist Entitäten in den Cache zu legen.

Solange du aber kein Performance Problem hast, solltest du den 0815 Stil verfolgen und den SQL Server abfragen.

Man muss halt die Vor- und die Nachteile abwägen. Caching heisst das die Daten sehr schnell zur Verfügung stehen. Das geht aber auch zu lasten des Anwendungsservers.
Ferner musst du dich auch noch um die Datensynchronität zwischen dem Anwendungs- und Datenbankservers kümmern.

Aber bei flachen, gut indizierten Tabellen wirst du kaum einen Performanceschub erleben.

Gruß,
Tom

S
Savage Themenstarter:in
100 Beiträge seit 2004
vor 14 Jahren

Danke für eure Anregungen!

T
307 Beiträge seit 2008
vor 14 Jahren

Und ich muss Tom widersprechen!
Es macht überhaupt keinen Sinn 10000 Datensätze irgendwo zu cachen wenn nur 20-50 angezeigt werden, je nach Fall/Option, mal von der Aktualität abgesehen.