Posts Tagged ‘WebDB’

Endlich geschafft

Samstag, April 25th, 2015

So lange wie dieses mal habe ich noch nie gebraucht, um wieder eine stabile Softwareversion fertigzustellen. Aber jetzt ist es endlich soweit: die Umstellung auf die generalisierten Datenbankkomponenten ist fertig und die Demo-Datenbank ist einsatzbereit. Ehrlich gesagt ist die Freude bei mir gerade groß, aber Einhundert prozentig zufrieden bin ich trotzdem nicht. Durch die zusätzlichen Codierungen ist die Demo-Datenbank nun deutlich langsamer als eine richtige Datenbankverbindung. Dies fällt gerade beim Import von neuen Fotos auf. Zum Glück lies sich das Problem entschärfen, indem einfach nur kleine Bilder in der Testdatenbank gespeichert werden dürfen.

Trotzdem hat sich der Aufwand für mich aber gelohnt: Der Quelltext ist nun deutlich übersichtlicher, ich habe eine Menge Fehler gefunden und natürlich auch beseitigt. Das beste für mich ist allerdings, das ich nun alle Datenbankfunktionen auch für die angedachte lokale SQLLite-Datenbank nutzen kann. Dort muss ich mich „nur“ darum kümmern, das die Fotos nicht direkt in der Datenbank gespeichert werden dürfen. Genug der Vorrede: nun wird es Zeit für die übliche Zusammenfassung der Änderungen, die seit der letzten stabilen Softwareversion umgesetzt wurden:

Demo-Datenbank zum Testen des Programmes

Die wichtigste Änderung, die sich durch die ganze Arbeit der letzten Monate ergeben hat, ist definitiv die Demo-Datenbank, welche ich hier auf der Homepage installiert habe. Wenn ihr das BVASystem testen wollt, müsst ihr ab jetzt nicht mehr ein eigenes Datenbanksystem aufsetzen. Ihr könnt euch hier einfach und natürlich kostenlos ein Login zur Demo-Datenbank anlegen.

Im Unterschied zu einem normalen Datenbanksystem ist die Demo-Datenbank komplett über HTTP-Anfragen realisiert. Für jeden SQL-Befehl wird eine Anfrage in Form einer XML-Datei erstellt und an ein Script auf dieser Homepage übertragen. Dieses führt den Befehl aus, nachdem geprüft wurde ob der Befehl ausgeführt werden darf. Das Ergebnis wird dann wieder in eine XML-Datei überführt und an das BVASystem übertragen. Durch die Überführung in ein XML-Format ist die Demo-Datenbank natürlich langsamer als ein direkter Datenbankzugriff. Gerade bei großen Binär-Datenfeldern, die auch noch BASE64-Codiert werden müssen, ist die Demo-Datenbank deutlich langsamer. Daher habe ich das BVASystem so modifiziert, das die Bilder in der Testdatenbank möglichst klein werden. Wundert euch also nicht, wenn die Bildqualität nach dem Speichern in der Datenbank schlechter ist als vorher.

Filter und Ansichtseinschränkungen

Neben den ganzen Änderungen, die ich für die Demo-Datenbank gebraucht habe, habe ich in den letzten Monaten eine Menge neuer Filterkriterien und Ansichtseinschränkungen implementiert. Außerdem habe ich die Kriterien neu sortiert, so das sie nun überall gleich gruppiert werden. Folgende Kriterien wurden umgesetzt:

Screenshot BVASystem Version 2.2.2

Screenshot BVASystem Version 2.2.2

Ausblick

Eigentlich hatte ich ja vor, direkt mit der Implementation der lokalen SQLite-Datenbank weiterzumachen. Aber ehrlich gesagt habe ich aktuell nicht die Lust dazu, wieder mit einem so großen Projekt anzufangen. Auch wenn ich bei den generalisierten Datenbankkomponenten, SQLLite bereits vorbereitet habe, wird es wieder zu lange dauern, bis man Ergebnisse sehen kann. Daher werde ich mich in den nächsten Monaten wieder mit Dingen beschäftigen, die sich schneller umsetzten lassen. Welche dies genau sein werden, weiß ich aktuell noch nicht. Fest steht allerdings, das es zeitnah eine Datenbank-Änderung geben wird, da ich Ideen habe, die sich mit der jetzigen Struktur nicht umsetzen lassen.

Die Entscheidung ist gefallen

Dienstag, Dezember 2nd, 2014

Eigentlich dachte ich, das mir die Entscheidung, wie es mit dem BVASystem jetzt weitergehen wird, beim Schreiben des letzten Blogs quasi vor den Füßen lag. Dem war dann aber doch nicht so und ich tat mich relativ schwer, die endgültige Entscheidung zu fällen. Ich machte mich zuerst an die „leichten Änderungen“ und zögerte so die Entscheidung möglichst lange heraus. Nun steht aber fest, das ich die internen Änderungen soweit vorantreiben werde, bis ich eine öffentliche Testdatenbank für das BVASystem anbieten kann. Nach vorsichtigen Schätzungen werde ich dafür ungefähr bis Ende Februar/Anfang März brauchen. Es macht einfach keinen Sinn, vorher noch eine stabile Softwareversion mit halbfertigen Funktionen zu veröffentlichen. Wie auch bisher werde ich versuchen, mich in der Zeit mit neuen Filterkriterien zu motivieren, so dass es auch für euch immer wieder kleinere sichtbare Änderungen gibt.

Apropos Änderungen“:  Wie seit einiger Zeit, habe ich auch in der jetzt zum Download bereitstehenden Version ein weiteres Kriterium zur Ansichtseinschränkung implementiert. Dieses mal neu ist die Ansichtseinschränkung nach dem Bildtitel. Diese ist  genauso wie das bereits bestehende Filterkriterium umgesetzt. In dem Eingabefeld des Kriteriums kann eine beliebige Zeichenfolge eingegeben werden. Dabei steht ein * für eine beliebige Zeichenkette und ein ? für ein beliebiges Zeichen. Wollt Ihr zum Beispiel nach Fotos filtern, die irgendwo im Bildtitel „Hund“ enthalten, so müsst ihr „*Hund*“ als Filterkriterium eingeben. Soll „Hund“ am Anfang des Bildtitels stehen ist „Hund*“ das notwendige Filterkriterium.

Ansichtseinschränkung Bildtitel

Ansichtseinschränkung Bildtitel

Die zweite kleine Änderung war mir persönlich allerdings wichtiger. Beim Umsetzen der neuen Kriterien ist mir nämlich aufgefallen, das ich die Kriterien bei der Ansichtseinschränkung, der Bildfilterung und bei der Definition von automatischen Zuordnungen unterschiedlich gruppiert habe. Daher war es mir nun wichtig, die Gruppierung überall zu vereinheitlichen. Die Kriterien sind nun immer in die 3 Gruppen: Metadaten, Nutzerdaten und Programmdaten aufgeteilt.

Über die Feiertage stehen für mich nun wichtige Änderungen an dem WebDB-Modul an. Ich konnte zwar bereits eine Verbindung zur zukünftigen Testdatenbank herstellen, allerdings ist diese Datenbank aber noch leer und lässt sich nicht verändern und zum zweiten fehlt noch eine Bereich auf dieser Homepage, wo man sich einen Zugang zur Testdatenbank anlegen kann. Ich hoffe, das ich nach Weihnachten soweit bin, das ihr einen ersten Blick auf die Testdatenbank werfen könnt.