Gwibber with SQLite and Midgard2

Posted on 2010-05-21 17:45:13 EEST.

After reading this article about Gwibber and CouchDB, I thought about real numbers. What is the real difference between CouchDb and SQLite performance? I decided to measure it and - as an addition - also created Gwibber "fork" with Midgard2 as backend. Gwibber with Midgard2 support is very initial, but I managed to create Qaiku account for Gwibber, get new messages, store it in database (via Gwibber service), and finally use all messages in Gwibber itself.

Creating new messages in storage:

  • SQLite - 0,150382
  • Midgard - 0,082126
  • CouchDB - unknown

I wasn't able to check average time of bulk Gwibber inserts, cause of its implementation of distributed Gwibber. For Midgard it seems very intereting that it's been faster than SQLite itself, but all Midgard operations wrapped in one transaction might explain this.

Fetching messages:

  • SQLite - 0,004016
  • Midgard - 0,021287
  • CouchDB - 0,03808

It's very important to mention that Midgard implementation used its slowest way to fetch data from database. MidgardQueryBuilder which just fetches the whole objects from database and was designed for data availability could be easily replaced with new MidgardQuerySelect or with MidgardCollector, increasing performance at least twice.

Back

Layout Copyright © 2006 Finnish Teleservice Center Ltd Oy - Site Powered by Midgard CMS