Saturday, September 18, 2010

Database mania

Somehow about every bigger software package nowadays wants to use a full-scale database backend. Just after I kicked amarok out of my box, now I realized that digikam-1.4.0 actually depends on an existing mysql installation. It's nowhere in the documentations (yet?), but in hindsight the CMakeLists.txt in the main directory is pretty explicit in its wishes. Now what is then the point of using an abstraction layer like qt-sql, you say? Well, surprise, there is another bug where the qsqlite plugin just not seems to suffice. Now at runtime. I shared the resulting fishy feeling with the penguins running my chroot compilers nice and quietly in the background. The hair-rising result is that digikam-1.4.0 only starts up if qt-sql supports both sqlite and mysql...


  1. Yeah, it is one of the things that made me search for a digikam replacement. As it occured, it is not an easy thing when you have quite high demands. Currently I'm carefully watching the development of shotwell, which seems to be very promising (I'm speaking of photo management, not editing!),

  2. And it's even more pain if there's an essential core component like Akonadi depending on MySQL.

    What does the average user Joe do, when there's the 5.0 → 5.1 migration of MySQL?
    On the one hand, it sucks just really bad that MySQL itself isn't able to handle the migration.
    On the other hand, applications like Akonadi which make use of an database like MySQL should handle all this transparent to keep the user out of sys-admin jobs.

    I really dislike the increasing usage of full blown database backends for all kinds of applications, too.

  3. Requiring full-blown databases wouldn't be so bad if those databases weren't so hard to administer as compared to other packages.

    Each on has it's own list of users and passwords that are completely separate from the system username and passwords and its own access controls.

    Remember when you could create a new shell account on a unix machine and that user would automatically get an email address and a directory on the web server without any additional configuration? Why couldn't the database servers be modified to work the same way?

  4. And what happens if you hate RDBMSs ("broken by design" as I call them!)

    Has Amarok gone full-blown SQL-only now? I did an emerge -C amarok because it blocked a mySQL upgrade (and amarok was configured to use sqlite!)

    I had enough trouble configuring postfix/courier-imap, I don't want to have to configure mySQL for every trifling little app on the system!

    Relational (and mySQL in particular) seem according to these posts to be the Windows of databases - popular because of marketing, broken by design, and a nightmare to administer (along with being massive resource hogs). I won't bother you with the maths, but it's pretty easy to prove - reductio ad self-contradictum - that RDBMSs must be overweight resource hogs incapable of optimisation :-(