Storing Personal Information Management data Akonadi - unifying PIM data for KDE Robert Zwerus (
[email protected]) Graduation committee: dr. ir. Djoerd Hiemstra University of Twente Pavel V. Serdyukov, M.Sc. University of Twente prof. dr. Peter M.G. Apers University of Twente Till Adam KDE Volker Krause KDE Copyright c 2007 Robert Zwerus. Permission is granted to copy, distribute and /or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled “GNU Free Documentation License”. Abstract Storing Personal Information Management (PIM) data is not trivial, because of the variety in content types. Existing PIM storage systems have shortcomings in performance, data concistency and/or concurrency. In this thesis, we propose several optimisations and test them in Akonadi, KDE’s new central PIM data access manager. The optimisations include using the D-Bus protocol for trans- mitting short commands and notifications and an IMAP-compatible protocol for data access and modification. The PIM data is kept in its native format, but compressed and split up into separate, frequently-used parts for increased per- formance. Both the synthetic and use case based evaluation results show that the proposed modifications perform well and help maintain data consistency in Akonadi. i Preface Welcome to the thesis belonging to the final project that concludes my studies of Computer Science at the University of Twente! The final project is overseen by the Database group, with Djoerd Hiemstra and Pavel Serdyukov as mentors.