Время от времени в холиварах про KDE и Akonadi разработчиков последнего часто пинают за то, что они заставляют пользователей устанавливать полновесную СУБД, вроде MySQL или PostgreSQL вместо легковесного Sqlite. Virtuoso, который используется начиная с KDE SC 4.4, многие также считают слишком тяжеловесным. Как говорят противники Akonadi, разработчики последнего отмели Sqlite без всяких видимых причин, используя аргументы вроде «мы не умеем работать ни с чем, кроме MySQL» и «не будем и всё». При этом, в частности, упоминается вот этот комментарий в рассылке debian-russian.
Действительно ли разработчики Akonadi даже не рассматривали Sqlite? На странице проекта в Techbase говорится об обратном:
Почему не используется sqlite?
Мы пытались. Правда. Он не очень хорошо обрабатывает параллельный доступ к данным, что в лучшем случае ведёт к медленной работе, но у нас также случались блокировки (deadlocks) и ошибки транзакций. Как только это будет исправлено в sqlite, изменить Akonadi для его использования не составит проблем
Об этом же писал один из разработчиков Akonadi в рассылку kmail-devel ещё в октябре 2006-го года. Лично мне кажется, что за прошедшие с того времени годы им уже банально надоело отвечать на вопросы об SQLite.
Собственно, в разделе часто задаваемых вопросов на сайте Sqlite пишется следующее:
Несколько процессов могут открывать одну и ту же базу данных одновременно. Несколько процессов могут совершать операции SELECT одновременно. Но только один процесс может модифицировать базу данных. [...] Если в вашем приложении часто возникает необходимость в параллельном доступе к базе, вам стоит рассмотреть возможность использования клиент-серверной СУБД.
Akonadi изначально предназначен для того, чтобы предоставлять доступ к данным (в том числе и на запись) нескольким приложениям одновременно, и sqlite просто не проектировался для таких задач.
Конечно, если речь идёт о мобильных системах, то требования к параллельному доступу не такие критичные, в то время как ограниченные ресурсы не позволяют отдать на откуп Virtuoso 80-100 мегабайт памяти. Существует проект мобильного порта Akonadi, в котором как раз и используется sqlite, но он, к сожалению, развивается довольно медленно — последнее изменение датировано июнем 2009-го года.