Continuous Integration: Automated database setup with Doctrine on Travis-CI

Testing is important — most people understand that by now. A lot of people write tests for their open source code already, but in-house testing is still hard. For example, many of us had an encounter with Jenkins: it runs well to a point where it becomes harder to maintain the Jenkins than it is to write tests. Another obstacle is test setup and environments: When I write and run tests, there is sometimes only so much I can do to mock and avoid actual calls to my storage backend....

August 13, 2012 · 4 min

Hosted MySQL: Amazon RDS (and backups)

Among all the different technologies in our stack, we also use MySQL. While we still run MySQL (or Percona-Server) ourselves, we selected a managed solution to power parts of our production infrastructure: a Multi-AZ setup with Amazon’s RDS. AZ is Amazon-speak for “availability zone”, essentially a datacenter. RDS stands for: Relational Database Service. Judging from my experience with our own setups where EBS is in the mix, I have to say that Amazon does an outstanding job hiding these potential issues with RDS from us....

March 17, 2012 · 8 min

Zend Framework: Writing an IN-Clause with Zend_Db

I’m currently running a little database analysis to see how many of our users might be affected by Gawker’s breach of security the other week. Since we use Zend Framework, Zend_Db is our weapon of choice. Running the queries I noticed, that Zend_Db doesn’t seem to support an IN-clause with a straight fetchAll(). The IN-clause is only supported when I wrap my statement with Zend_Db_Select, which is something I rarely do....

December 19, 2010 · 2 min

My Berlin Buzzwords 2010 recap

I attended Berlin Buzzwords 2010 for the last two days and aside from meeting a bunch of great people during talks, here are some take away notes from this conference: I got introduced to new stuff — such as HyperTable (c++ bigtable implementation), which I had never heard of before. I actually know a lot more about hadoop, HDFS and tika now than I did before — though I won’t be able to use any a lot of it soon....

June 9, 2010 · 3 min

A toolchain for CouchDB Lounge

One of our biggest issues with CouchDB is currently the lack of compaction of our database, and by lack of, I don’t mean that CouchDB doesn’t support it, I mean that we are unable to actually run it. Compaction in a nutshell Compaction in a nutshell is pretty cool. As you know, CouchDB is not very space-efficient. For once, CouchDB saves revisions of all documents. Which means, whenever you update a document a new revision is saved....

February 26, 2010 · 2 min