I'm just back from SNAP Innovation, the developers of the Primebase XT (PBXT) storage engine, here in Hamburg / Altona. What a pleasure to visit a company that, despite its closed-source roots, has understood and embraced what Open Source is all about and how it can open up business possibilities!
Left: Paul McCullagh
PBXT is a pluggable storage engine that fits in with MySQL 5.1. It is fully transactional, and supports MVCC. That makes it a good fit for many purposes, but the area where it is an especially good fit is for the industry that SNAP has been serving for the past decades: the publishing industry. No matter whether print or web, they have fairly similar needs, where BLOBs are a common denominator.
While MyISAM has supported BLOBs since the 1990s, and while the inventor of the concept of BLOB is Jim Starkey developing the Falcon engine, I can see PBXT satisfying needs beyond the mere moving the storage of pictures, films, MP3 files and other such data off the file system, into the database. Although PBXT isn't there yet, Paul McCullagh (the PBXT author and SNAP CTO), Ulrich Zimmer (their CEO) and Volker Oboda (their director of Mktg & Sales) presented an interesting vision of PBXT as the engine for scalable BLOB streaming. While most access to the PBXT based data will be through MySQL, SNAP seeks to develop a dedicated API (over a separate protocol) accessing the streaming aspects of the BLOBs more efficiently than can be made through a SQL constrained interface.
I'm happy to note that Paul McCullagh will present at the MySQL Conference & Expo 23-26 April 2007, with a session PrimeBase XT: Design and Implementation of a Transactional Storage Engine (Wednesday 10:45-11:45 in Ballroom F), and on the panel in Lightning Rounds: State of the Partner Engines (Thursday 10:45-11:45, Ballroom H). I'm sure Paul will take advantage of the opportunity to integrate with not just MySQLers but also top PHP & Ruby developers, since I think there are some joint interests between PBXT and several development environments.
We talked about various aspects of better integrating PBXT into MySQL and our community activities. Let's see if Paul manages to put up a task for MySQL's Summer of Code page, for benchmarking of the PBXT engine.
Read more about PBXT in Robin Schumacher's article "A look at the PBXT Storage Engine". If you want to follow the ongoing development of PBXT, consider reading Paul's blog (which is also aggregated on Planet MySQL) and take PBXT for a test drive yourself by downloading it from http://www.primebase.com/xt/.
It seems to me that SNAP intends to build up a sizable community of users of the PBXT storage engine under MySQL, and that they're in it for the long run, aiming for their scalable BLOB streaming backend.