[Kde-pim] Akonadi datamodel questions

Volker Krause vkrause at kde.org
Mon May 21 17:00:39 BST 2007


On Friday 18 May 2007 19:38:36 Christian Schaarschmidt wrote:
> I have attached a modified model to show an alternative to the current
> model.

I've updated the API docs to actually show the database model we really use 
currently, auto-generated from the XML definition:
http://www.englishbreakfastnetwork.org/apidocs/apidox-kde-4.0/kdepim-apidocs/akonadi/server/html/akonadi_server_database.html

The main difference to your attached file seems to be the use of SQL triggers 
to keep the modification/access time fields up-to-date, right?
Since this would considereably reduce the risk of having code paths missing 
these updates, it looks like a good idea to me.

> BTW, would it be possible to use factory pattern for the storage? It could
> help if we decide to replace the db backend in the future or if someone
> wants to have his/her preferred db instead of mysql.

well, there are basically two kinds of abstractions we could have there: on a 
SQL database level or on an completely storage-neutral level. We more or less 
have the first thanks to QSQL with some conditional code for generating the 
tables, but most of the code deals directly with objects representing records 
in the database. We intentionally didn't introduce any higher level of 
abstraction to reduce the work. Is there any non-sql backend that would be 
interesting to support?

BTW: with most work currently going into libakonadi and the resources, some 
help with the server is really appreciated :)

regards
Volker
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-pim/attachments/20070521/0252cdd1/attachment.sig>
-------------- next part --------------
_______________________________________________
kde-pim mailing list
kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
kde-pim home page at http://pim.kde.org/


More information about the kde-pim mailing list