[MySQL] Streß mit Zeit

Buba235

Erfahrenes Mitglied
Hallo Leute!


Ich hab ein Problem, mit dem ich mich jetzt schon über Wochen hin herumschlage. Ich check einfach nicht wie ich es lösen könnte. Vielleicht habt ihr ja ne Idee oder irgendeinen Ansatz mit dem man was machen kann. Also mal zu meinem Problem: Ich habe eine DB mit vielen Mobilfunkanbietern, in der jede Menge Daten stehen und in die stündlich so ca 1200 Datensätze dazu kommen. Sie werden alle immer durch die ID weitergezählt (natürlich auto_increment). Jetzt soll ich jeden Request mit seinem Response über die ID überkreuz zusammenfügen. Dazu sind noch ein paar Regeln nötig:

1. Bei beiden muss die Packet_ID gleich sein
2. Bei dem Request ist die SRC_IP = DST_IP des Response.
3. Bei dem Request ist die DST_IP = SRC_IP des Response.

und (jetzt kommt mein Problem)

4. Der Request und der zugehörige Response sollen innerhalb eines Stundenfiles liegen.

So hab ich das bis jetzt gelöst:

Code:
UPDATE mydb.test t1 JOIN mydb.test t2 ON t1.Packet_ID = t2.Packet_ID AND
t1.DST_IP = t2.SRC_IP AND t1.SRC_IP = t2.DST_IP AND t1.DATE = t2.DATE
SET t1.ID_Link = t2.ID WHERE (t2.TIME - t1.TIME) AND t1.TYPE = 
"Request" AND t1.ID_Link IS NULL;

Das gleiche noch mal für Response. Lange Rede kurzer Sinn, es wird alles so gemacht wie es sein sollte, nur wenn eine Stunde später die neuen Datensätze dazu kommen, dann werden diese auch mit den älteren verlinkt. Soll heißen, ein Datensatz mit der ID z.B. 2450 hat dann plötzlich den ID_Link 17. Das soll aber nicht sein, da er immer nur die aktuellen Datensätze betrachten soll. Ein weiteres Manko ist ja dass bei jeder Ausführung die Zeit, die das Programm benötigt, viel länger dauert, weil er immer alle Datensätze vom Anfang bis zum letzten eingetragenen miteinander vergleicht.

Ich hoffe ihr könnt mir da helfen. Es wäre echt super wenn ihr ne Idee hättet. Slltet ihr noch Fragen haben, weil etwas unklar ist oder ich was vergessen habe zu erwähnen, dann fragt ruhig nach.
Übrigens gäbe es noch einen TIMESTAMP, aber ich hab keinen Plan wie ich den ins Spiel bekommen soll.


Gruß Buba
 
Gibt es vielleicht so etwas wie: "Nimm die Datensätze immer vom neuesten TIMESTAMP"?

Das wäre sehr sehr hilfreich für mich!
 

Neue Beiträge

Zurück