Hallo zusammen,
ich arbeite gerade an einem B-Tree Index für Datensätze in einem speziellen Format. Vorab: ja, ich weiss, müsste ich nicht machen, es gibt genug fertiges. Aber: es macht mir spaß mich damit zu beschäftigen; deshalb mache ich es. Es geht hier nicht um Code, der produktiv sein soll.
Der Index an sich funktioniert nun auch so, wie ich mir es vorstelle. Aber der Punkt ist: einen Index nutzt man der Performance wegen. Also denke ich, dass es Sinn macht, performance tests zu automatisieren.
Was das lesen aus dem Index angeht meine ich auch schon einen guten Ansatz gefunden zu haben: ich vergleiche die Performance vom lesen aus den Datensätzen für jeweils mit und ohne Index. Mithilfe des Index muss es dann um den Faktor XY schneller sein; dadurch sollte der Test auch auf unterschiedlichster Hardware aussagekräftig sein. (Den Faktor habe ich auf versch. Hardware gemessen und einen realistischen Wert in den Test geschrieben). Ist das eurer Meinung nach ein sinnvolles vorgehen?
Nun möchte ich aber testen, wie die Schreib-Performance ist. Erwartungsgemäß nimmt der Zeitaufwand pro geschriebenem Datensatz mit der Größe des Index exponentiell zu. Wie teste ich das am besten automatisiert? Meine Messwerte haben leider zu viel Varianz; wenn ich prüfen möchte ob meine gemessenen Schreib-Zeiten exponentiell zunehmen gibt es immer ein paar Ausreisser nach oben oder unten, welche den Test fehlschlagen lassen. Ich habe probiert, immer 50 oder 100 Schreibvorgänge als ganzes zu messen (also + overhead für die Schleife).
Grüße und schönes WE
ich arbeite gerade an einem B-Tree Index für Datensätze in einem speziellen Format. Vorab: ja, ich weiss, müsste ich nicht machen, es gibt genug fertiges. Aber: es macht mir spaß mich damit zu beschäftigen; deshalb mache ich es. Es geht hier nicht um Code, der produktiv sein soll.
Der Index an sich funktioniert nun auch so, wie ich mir es vorstelle. Aber der Punkt ist: einen Index nutzt man der Performance wegen. Also denke ich, dass es Sinn macht, performance tests zu automatisieren.
Was das lesen aus dem Index angeht meine ich auch schon einen guten Ansatz gefunden zu haben: ich vergleiche die Performance vom lesen aus den Datensätzen für jeweils mit und ohne Index. Mithilfe des Index muss es dann um den Faktor XY schneller sein; dadurch sollte der Test auch auf unterschiedlichster Hardware aussagekräftig sein. (Den Faktor habe ich auf versch. Hardware gemessen und einen realistischen Wert in den Test geschrieben). Ist das eurer Meinung nach ein sinnvolles vorgehen?
Nun möchte ich aber testen, wie die Schreib-Performance ist. Erwartungsgemäß nimmt der Zeitaufwand pro geschriebenem Datensatz mit der Größe des Index exponentiell zu. Wie teste ich das am besten automatisiert? Meine Messwerte haben leider zu viel Varianz; wenn ich prüfen möchte ob meine gemessenen Schreib-Zeiten exponentiell zunehmen gibt es immer ein paar Ausreisser nach oben oder unten, welche den Test fehlschlagen lassen. Ich habe probiert, immer 50 oder 100 Schreibvorgänge als ganzes zu messen (also + overhead für die Schleife).
Grüße und schönes WE