Thread LogDB Entwurfshilfe (3 answers)
Opened by leo11 at 2010-12-05 10:01

leo11
 2010-12-05 10:01
#143323 #143323
User since
2008-08-14
250 Artikel
BenutzerIn
[default_avatar]
Eine Rechnung durchläuft einen defnierten Prozess. Dabei soll bspw. an 6 Stellen in eine Log-DB geschrieben werden.
ReceiveDateiname - Archived - DocNr - Converted - Mail to test@test.de - ProcessEndsOk

Eine weitere Rechnung durchläuft einen leicht abgewandelten Prozess:
ReceiveDateiname - DocNr - Converted - SendPerMail to test@test.de - ProcessEndsNotOk

Die Datenbank soll so konzipiert sein, dass die Reihenfolge der Einträge pro Prozess wiederherstellbar ist. D.h. die Chronolgie ist wichtig. Des Weiteren soll jeder Eintrag mit seiner Eintragungszeit in die DB gespeichert werden.
Außerdem soll in der Spalte DocNr stets auch nur die DocNr stehen, um bspw Sortierungen zu gewährleisten. Daher war mein Gedanke jeden Logeintrag als Tripel zu sehen: Eintrag, Datum, Counter des Eintrags für diesen Prozess.
Bspw. hat DocNr in meinen 2 Beispielen einmal den Counter 3 und einmal 2.

Veranschaulichung: (erste Zeile = Spaltenname)
Code: (dl )
1
2
3
PROZESS_ID STEP_COL1 DATE_COL1     FILENAME STEP_COL2 DATE_COL2     ARCHIVE STEP_COL3 DATE_COL3    DOCNR      .... ProcessEndsOk
qwewr3_ew 1 201003021012 a.txt 2 201003021013 CORON 3 201003021014 43554667 .... 1
edfddd_re 1 201004021016 b.txt 2 201004021017 43554668 .... 0

Der Counter gewährleistet, dass die Chronologie wiederhergestellt werden kann.

Eine ganz andere Konzeptionsmöglichkeit wäre die Einträge in einer Spalte untereinander zu schreiben:
Veranschaulichung:
Code: (dl )
1
2
3
4
5
6
PROZESS_ID STEP_COL  DATE          DESCRIPTION CONTENT
qwewr3_ew 1 201003021012 FILENAME a.txt
qwewr3_ew 2 201003021013 ARCHIVE CORON
qwewr3_ew 3 201003021014 DOCNR 43554667
edfddd_re 1 201004021016 FILENAME b.txt
edfddd_re 2 201004021017 DOCNR 43554668


Bei diesem Ansatz ist die Chronologie leichter herzustellen, aber man kann nicht mal eben nach der DocNr sortieren, oder Teilmengen heraussuchen. Eine Teilmenge ist z.B. "Nur die erfolgreich beendeten Prozesse". Letzlich brauche ich ein Konzept, dass
leicht das Finden von Teilmengen erlaubt.

Ihr könnt mir gern widersprechen, einen ganz anderen Weg zeigen.... . Mir geht es in erster Linie um Entwurfshilfe.

Die auftretenden Prozessmengen können 7 stellig werden, bevor zum ersten mal eine zeitgesteuerte Rotation in Kraft tritt.

View full thread LogDB Entwurfshilfe