Einzelnen Beitrag anzeigen

alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#22

Re: ADO Command mit mehreren Inserts

  Alt 15. Jan 2006, 15:10
Ich hatte mir die Eckdaten (#Messdaten, #Messpunkte) nicht angeschaut, aber mit BCP oder egal welchem System wird das wirklich auf Dauer Nichts.
Ich habe zwar eine DB, die das kann (Schreiben mit 80.000 - 500.000 Messpunkte pro Sekunde), aber das ist doch nicht die Lösung.

Wir müssen vorher nochmal die o.g. Diskussion aufwärmen. Hier stimmt wirklich etwas nicht. Ich kann mir kein Szenario vorstellen, bei dem man alle 10.000 Messunkte jede Sekunde speichern muss. Die Granularität, also das je Sekunde gemessen wird, kann ich mir gut vorstellen, i.a. ist es aber so, das nur besondere Ereignisse (Statuswechsel) geloggt werden müssen. Insofern wäre es ratsam, je Datentabelle (oder alles in Eine, eigentlich wurscht) eine Spalte 'DateTime' (auf die Sekunde genau) anzulegen und nur diese 'besonderen Ereignisse' abzulegen.

Hier oder im DF hatte ich vor einigen Monaten ein Problem, bei dem *zu Verifizierungszwecken* mal ALLE Messwerte gespeichert werden mussten (20GB pro Tag). Einfach, um die Verdichtungsheuristik, die dann zum Einsatz kommen soll, zu testen. Da waren es knapp 200.000 Daten pro Sekunde. Das bekommt man mit einem schnellen Rechner, B-Baum, Cache und Speicherung in 8k-Blöcken (System page) ganz gut hin. Über den B-Baum hat man dann auch eine schnelle Recherchemöglichkeit. Aber hier sehe ich das nicht. Hier sollte verdichtet und nur Veränderungen gespeichert werden. Alles Andere ist falsches Design (oder man erklärt nochmal kurz, WARUM wirklich ALLE Daten gespeichert werden müssen).
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat