BLOBS und DBMS - exteren Zugriffsmöglichkeiten(?)
-
Guten Tag.
Ich bin jetzt nicht der Große DB-Spezialist und würde gerne wissen ob mein Vorhaben überhaupt erstmal so möglich ist.Und zwar habe eine Datenbank die irgendwelche Messdaten speichert die von irgend einer Maschienensteuerungssoftware(testXpert2 für Zugversuche aus dem Maschienenbau usw.) gemessen werden. Zu dieser software gibt es eine Art Projektdatei in der alle mölgichken Konfigurationen, Einstellungen und anderes Programminternes Kram im binärformat gespeichert werden. Damit diese nicht so lose irgendwo auf der Festplatte umher fleuchen, wurden diese zur eindeutigen Zuordnung zu bestimmten Mess-serien als Blob in eine Datenbank gespeichert (MySQL) bzw. soll so gemacht werden.
Da dies so geschene soll wäre mein Ansatzt jetzt ein Programm zu schreiben das auf die DB zugreift und nach einer Auswahl der entsprechenden Mess-Serie die zugehörige Projektdatei in ein vorgegebenes Verzeichnis kopirt und später wieder in der DB einträgt.
Doch empfinde ich das als ziemlich umständlich.
Gibt es irgendwie eine Möglichkeit mit der ich dise Dateien direkt in das Programm laden kann und viel wichtiger auch speicher kann ohne diese Datei wirklich zu entblobben?
Vielleicht über eine Art virtuelle Datei welche INtern dann das auslesen und zurückspeichern erledigt?Oder muss ich jetzt damit leben dass ich das Ding jedes mal Entblobben muss wenn man diese Datei verwenden möchte?
cu
-
Interessante Fragen in dem Zusammenhang:
* Welches OS?
* Kann das Programm welches die Projektdateien verwendet evtl. verändert werden (Source-Code vorhanden) oder nicht?
* Kann das Programm welches die Projektdateien verwendet diese von HTTP/WebDAV/FTP/... laden? Und ... gespeichert werden müssen die auch wieder?
-
Das OS ist WindowsXP. Lizenzen für Wiondows7 sind soweit ich informiert bin auch vorhanden, würde aber glaub ich nicht zum Einsatz kommen.
Linux oder dergleichen kommt nicht in Frage u.A. weil die Software nur unter Windows verfügbar ist.Bei der Software selbst handelt es sich um TestXPert 2 von der gleichen Firma welche auch die entsprechenden Maschienen verkauft von der TestXPert die Messdaten erhält.
Quellcode zum Programm ist nicht vorhanden. Die Software ist wie iches mitbekommen habe durch Scripte programmierbar, jedoch bezieht sich das nur auf die Art und Weise welche Messdaten auf Welche Weise exportiert werden sollen.
Der Frage ob man die Daten auch über HTTP oder sowas laden kann werde ich mal nachgehen, habe jedoch nicht uneingeschränkten zuggriff auf die Software und die Doku hab ich nicht da. Glaube jedoch nicht dass die Maschiene dies unterstützt. Klingt jedoch interessant.
Das wäre eine gute Möglichkeit die Datei zumindesteinmal zu öffnen ohne dass ein Anwender der Software manuell ein weiteres Programm bemühen muss um die Projektdatei verfügbar zu machen.Und ja, gespeichert werden müsste der Kram dann auch noch
-
Sieht dann wohl eher finster aus.
Über HTTP kann kaum eine Software speichern (weiss nichtmal ob's da einen Standard gibt, ausser WebDAV).Und in Windows etwas als "virtuelles File" (bzw. "virtuelles Laufwerk") Verfügbar zu machen ist alles andere als einfach. Daher gibt's da leider auch sehr sehr wenig Projekte in diese Richtung.
Was mit Windows geht ist ein Verzeichnis auf einem WebDAV Server als "Laufwerk" zu mounten:
http://smallvoid.com/article/winnt-webdav-network-drive.htmlNur bräuchtest du dann einen WebDAV Server den man mit vertretbarem Aufwand so anpassen kann, dass er die "Files" aus den BLOBs in der Datenbank holt, und bei Schreibzugriffen auch entsprechend wieder zurückschreibt.
Aber... wenn die Software scriptbar ist... vielleicht könnte man es ja auch einfach über ein Script lösen. Quasi ein kleines Hilfsprogramm vor Öffnen des Projekts rausstarten das den BLOB als Datei auf die Platte legt, und nach dem schliessen ein kleines Hilfsprogramm das die Datei wieder als BLOB in die DB zurückschiebt.
-
Danke erstmal für die Antwort, werde mir WebDAV mal näher anschauen und gucken in wie weit ich damit was anstellen kann. Inwieweit sich die Software scripten lässt kann ich ja nochmla nachhaken wenn ich die nächste gelegeneheit dazu habe.
So weit ich informiert bin gilt das jedoch nur zur Gestaltung des Softwareoutputs. Die Software ist halt für eine Menge Arten von Maschienen und Anwendungszwecken entwickelt worden.