Moien
Hab’s gerade mit einem komsichen Programm zu tun und wollte fragen ob das Verfahren normal ist:
Das Programm macht die Verwaltung von Läden (Kaufen, verkaufen, Rechnungen. Lieferscheine…). Alles in SQL (MS SQL Server). Natürlich gibts auch eine Lagerverwaltung.
Um nun den aktuellen Lagerbestand eines Artikel zu bekommen ackert das Ding alle Vorgänge die den Artikel betreffen durch und addiert/subtraiert die Mengen. D.h. in der DB steht nirgens die aktuelle Menge. Der arme Server muss jedesmal durch alle Lieferscheine (Kunden und Lieferrantenseite), Inventuren, usw durch.
Ist das normal ? Könnte man da nicht verdammt viel Rechenzeit sparen … ?
Das Programm enthält im Moment die Daten von etwa 18 Monaten (2,5 GB wenn man’s als Backup unter MS SQL Server speichert). Der 1 GHz Dual-Xenon (viel RAM, schnelle SCSI-Platten in RAID… usw) Server im Keller ist mit dem Erstellen einer Rechnung 5-10 Sekunden voll ausgelastet.
Irgendwie seh ich da ein grosses leistungstechnisches Problem auf uns zukommen. Die Datenmenge wird ja sicher nicht kleiner. Im Moment laufen nur 2-3 Posten mit dem Ding, aber wenn da erstmal 20-30 Leute mit arbeiten… ?
Danke.