[Allegro] werkzeuge fürs erkennen von schäden an datenbanken -eine vorsichtige zusammenfassung-
Fischer, Thomas
fischer at sub.uni-goettingen.de
Fr Nov 7 19:25:17 CET 2014
Hallo Herr Lehmann,
>> Lieber Herr Lehmann,
>> ich schaue mir die Daten mit meinem Texteditor an (auf dem Mac:
>
> verzeihung, DAS ist nicht das, was ich gemeint habe. jetzt haben wir(?)
> schon wieder verständnisprobleme. textedi's gut und schön. ich hab'n
> ganzen strauss davon. mit notepad++ kommen sie z.b. ihn keine großen
> dateien. kann sein, daß bei 100-200 MBN schluss ist. egal. DAS war
> nicht gemeint.
das ist jetzt vielleicht eine andere Frage.
Wenn Sie in die Datendateien von Allegro hineinschauen wollen, so haben sie es typischerweise mit 16 MB zu tun.
Das macht mein Texteditor locker. Für etwas anderes wäre Sniffer.exe auch nicht geeignet.
Mit Regulären Ausdrücken kann ich nach Zeichen oder Zeichenkombinationen suchen etc.
> also: habe ich viele datensätze, habe ich viele felder, da
> kann auch mal ein datensatz bis zu 10.000 bytes lang werden. DAS
> schaut sich KEINER mit nem edi an. KEINER! ;-)
Ich schon. Ich habe als Beispiel eine 250MB-Datei gewählt, sie öffnet bei mir in 10 Sek., längste Zeile über 200.000 Zeichen (allerdings fast alles ASCII 0).
Es geht also und ist manchmal nützlich.
> ich rede/schreibe von werkzeugen, die UNS hinweise bringen:
> s.a. beispiel unten: berger#s schnäuzer: (d.i. "sneezer.pl")
>>> 258 enth. Zeichen 204
> das sind für mich werkzeuge!
>
> die benutze ich, wenn ich weiss/ahne, DA ist was. aber ich weiss
> nicht: WO?
> comprehende senor?
Das Problem ist, dass man wissen muss, wonach man suchen soll.
Manchmal kann ich den Daten etwas entnehmen, wenn ich darauf schaue (ich hatte mal 10.000 ASCII 0 in einer Datenbankdatei, das störte erheblich, war dann aber auch schnell sichtbar).
Was Bergers Sneezer macht, kann man teilweise mit regulären Ausdrücken prüfen, z.B. sich mit
^[^\x01\x08\x09]
die Zeilenanfänge heraussuchen, die nicht wie reguläre Datensätze anfangen, man muss nur beachten, dass bei den 4 Bytes der Datensatznummer auch Zeilenwechsel (ASCII 10 oder 13) dabei sein können.
Vorteil ist, dass man sich das Umfeld ansehen kann, ob irgend etwas nicht richtig aussieht – da alles jenseits der ersten 5 Bytes durch ASCII 0 getrennter Text ist (eventuell gibt es noch Füllzeichen) kann man das ganz gut überblicken.
Man kann mit
^.{10000,}
auch schnell überlange Zeilen finden.
Sie müssen es ja nicht verwenden, ich wollte nur sagen, dass das für mich bis jetzt die effektivste Methode ist, vermurkste Datensätze zu finden.
Mit freundlichen Grüßen
Thomas Fischer
Mehr Informationen über die Mailingliste Allegro