Seite 1 von 1

Objektdatenbank

Verfasst: 19. Dezember 2007 23:22
von marco
Hallo!

Ich arbeite recht häufig mit Datenbanken. Für einige Projekte wäre es mir zumindest ein "Segen", wenn eine Objektdatenbank existierte, die sich ganz nach dem Beispiel db4o (http://de.wikipedia.org/wiki/Db4o) in Qt oder zumindest C++ einfügt.
Hab lange gesucht, aber nichts in der Richtung gefunden... Vielleicht kennt jemand was? Ansonsten...

Wer wünscht sich ebenfalls eine Objektdatenbank für Qt? Ich denke, dass Objektdatenbanken noch eine größere Zukunft haben und werde ein paar Stunden pro Woche locker machen, um mal ein paar Anfänge für ein solches Projekt zu wagen.
Wer hat vielleicht Interesse ernsthaft an einem freien Projekt mitzuwirken?

Frohe Weihnachten!

Verfasst: 20. Dezember 2007 12:26
von upsala
Was willst du genau machen? Einen eigenen Objektdatenbankserver aufsetzen oder Objeckte serialisieren und in eine SQL-Datenbank einfügen.

Das ganze auf Qt aufzusetzen dürfte jetzt dank der Properties usw. nicht so schwer sein (bei reinem C++ denke ich, wird das ganze nicht mehr so leicht sein).

Verfasst: 20. Dezember 2007 15:20
von marco
Was willst du genau machen?
Eine Klasse(n-Bibliothek) erstellen, die in einem Rutsch ganze Objektstrukturen effizient speichert und Abfragen ermöglicht, die direkt entsprechende Objektlisten zurückgibt. Auf eine Abfragesprache will ich erstmal verzichten, sondern das ganze schon aus Performance-Gründen mit "Native Queries" realisieren.
Wichtig sind mir dann noch die Möglichkeit von Replikationen und Transaktionen (ACID).

Wenn man mal einen komplexen Sachverhalt in Klassenstrukturen abgebildet hat (Kundenbeziehungen bei Versicherungen mit Schadensfalldatenbank z.b.) und dann anfängt das ganze in relationale Datenbank-Modelle zu "pressen" hat man bei 20 und mehr zeiligen SQL-Abfragen irgendwann keine Nerven mehr.
Mag ja sein, dass es Leute gibt denen das Spaß macht. Mir jedenfalls nicht.
Einen eigenen Objektdatenbankserver
Ähnlich wie bei db4o könnte ich mir das auch gut vorstellen, ja.
Das ganze auf Qt aufzusetzen dürfte jetzt dank der Properties
Richtig. Wenn man sich exakt an den Qt-style hält...
bei reinem C++ denke ich, wird das ganze nicht mehr so leicht sein
Auch richtig. Nach allem was ich an der Uni über C++ gelernt habe, sogar unmöglich.
Objeckte serialisieren und in eine SQL-Datenbank einfügen
Eine Hybridlösung... Ja, mit den Objekten als XML-Strings bestimmt sogar elegant. Aber effizient??

Verfasst: 29. Februar 2008 20:39
von VuuRWerK
Gerade beim durchstöbern diese Interessante Thematik gefunden.

Meinst Du eventuell auch sowas wie Hibernate oder iBates in Java? Welche auch nichts anderes machen als die Datenbankstruktur in Form von Objekten und Interfaces bereitstellen? Hört sich interessant an und gibt es so glaube ich nocht nicht in C++/Qt, oder?

Wie weit bist Du denn schon mit diesem Projekt?

Gut Schuß
VuuRWerK ;)

Verfasst: 3. März 2008 08:19
von RHBaum
Problem allegemein was ich sehe: So richtig objectorientiert wirds erst, mit polymorphie und zugriff ueber reinen interface klassen.
Die in ner datenbank zu serialisieren geht ohne insiderwissen ja nicht, das insiderwissen wird ja hinter den interfaces versteckt ...
Also wird der "Anwender" der DB wieder selber code in seine objecte einfuegen muessen um die ordentlich serialisieren zu koennen.

Um flache Object-strukturen abzubilden, weiss ned, waer mir der aufwand zu gross. solche objecte in ner herkoemmlich relationalen DB abzuspeichern iss auch nurn paarzeiler ...

Ciao ...

Verfasst: 18. April 2008 10:13
von moviemax
Idee finde ich sehr gut. Was mir bei einigen OpenSource
implemenierungen aufffält ist, dass scheinbar aus einer
"Fixen Idee" herraus schnell ein "Proof of Concept" Programm
geschrieben wird und dann zahlreiche neue Features drumrumgebastelt
wirderden. Wäre schön wen man bei einem solchen Projekt eine
erstellt FeatureListe/Roadmap gibt, und dann - vielleicht hier?
sich über die Architektur/Design diskutiert.

moviemax

Verfasst: 19. Mai 2008 21:40
von marco
Hallo!

Ich muss zugeben, das Projekt "schlief" in der letzten Zeit. Ich habe daher leider aus Zeitmangel nicht mehr als ein paar 100 Zeilen undokumentierten Code hervorgebracht.

Da ich jetzt aber KDE4 was zurückfahre, habe ich wieder etwas mehr Zeit mich um das hier zu kümmern, den Stand zu sondieren und vielleicht eine FeatureList/Roadmap zu erstellen.

Ich habe zwar in der letzten Zeit keine Aufträge im Zusammenhang mit Datenbanken gehabt, aber ich bin mir sicher, dass sich der Wunsch nach einer Objektdatenbank in Qt4 wieder manifestieren wird, sobald sich das ändert!