While the traditional relational database market has largely resisted open source databases, the database world overall is a dynamic market full of change and opportunity. Berkeley DB and MySQL are notable open source successes in the embedded market and the market for database-backed Web sites. To that mix, db4objects hopes to become the newest success story, with its object database. NewsForge sat down for a Q&A with db4objects CEO Christof Wittig and Chief Software Architect Carl Rosenberger to get an overview of their strategy.
Open an introductory text on object-oriented programming and you'll be told that one of the prime motivations for the invention of object methodology is a mismatch between the way procedural languages handle data and the way we encounter data in the real world. Procedural languages -- and the relational databases that have evolved from them -- understand rows and tables. In the real world we encounter objects, classes of objects, and attributes of objects. If object-oriented programming languages grew from the need to address the object-relational mismatch, why then are there no well-established object-oriented databases?
Timing is everything. Object-oriented programming has reached critical mass. The Internet and telecommunications have opened new application areas for databases, new areas where there is no market leader. In the embedded market, Oracle's market share is less than 1 percent. And db4objects has something its object database predecessors lacked: an open source twist.
NewsForge: Why did the first generation of object databases have such a hard time gaining acceptance?
Christof: There are three major paradigm shifts that we take advantage of. The first is the emergence of open source business models, which allows rapid pervasion of software markets at very low cost. This is a new way to deliver software to market. Second, we target the embedded market, which is really just reaching critical mass. This is a $400 million market and growing. Finally, we're now seeing the widespread acceptance of object methodology in the enterprise.
NewsForge: Can you say a bit about the difference between object and relational approaches?
Christof: The first object databases tried to be enterprise databases. This was a problem for two reasons. First, object-oriented languages were not then widely used in the enterprise. Second, legacy data was in relational form. Switching costs in the database world are very high, which benefits entrenched vendors.
Rosenberger: Also, the relational model serves a real purpose for an enterprise data warehouse. In the enterprise, multiple applications are written against a single database. This is a situation in which many different departments must all have access to the same data, and all be able to use it in different ways. And this is a strength of the relational model. Coming up with an object model to accommodate every department in a large enterprise would be a nightmare. In the embedded market, we only have a single application to deal with, the application within which our database is embedded.
NewsForge: What are some of the changes in market conditions since that time?
Christof: We see a real paradigm shift on the programming side. Java is widely accepted as an enterprise programming language, and now C# really affirms that OOP is the way to go in the enterprise. The whole embedded database market is really quite new also.
Rosenberger: Let me say something about the technology too. Java and C# are the dominant application languages, but SQL is the dominant database language. There's a mismatch there. A lot of complexity comes in because you need a layer to map between relational data types and objects. With db4o, the class model is the same as the storage model. Developers benefit from not having write mapping code.
Christof: The relational storage model is as if your garage stored your car by disassembling your car every night, and then reassembling it every morning. This is not terribly efficient.
Rosenberger: And not a good approach if speed and performance are an issue, as they are for an embedded database.
NewsForge: How would you define an embedded database?
Christof: Quite simply, an embedded database is one that is invisible to the end user. We see them in three areas: in devices, like a cell phone; in real time systems, like in your train control systems; and in Internet applications, where the user doesn't deal with the back-end database directly.
NewsForge: How do the dynamics of the embedded database market create an opportunity for you?
Christof: First, these are new markets, so there isn't a legacy database approach that we have to compete with. More importantly, the embedded market really changes who the buyer is.
NewsForge: In what way?
Christof: For an enterprise relational database, the buyer and the end user are the same person. The CIO is the purchasing decision maker, and also the person who has to be able to use the product. And frankly, CIOs aren't paid to be risk-takers; they are paid to follow the herd. In the embedded market, the decision-maker is not the end user, but someone from engineering who will incorporate the database into the overall product that the end user eventually receives. The engineer doesn't want to see a slick slide presentation from a sales rep; he wants to see code. We don't sell "slide-ware"; we sell software. Thus we get to sell to someone who is making a tech-savvy engineering decision.
Rosenberger: The embedded market is a design win game, and our object approach really helps the engineer achieve better design.
Christof: Another difference between the markets is the margin and the unit volume. Officially we compete with all the big vendors: Sybase has iAnywhere, Microsoft has SQL Server CE, and Oracle has Oracle9i Lite. But these guys all have sales forces that are looking for big dollar amounts on each license sale. An enterprise license for a relational database could easily be $40,000. In the embedded market you might settle for a license fee of a few cents per unit, but then expect high volume in terms of number of units. There just isn't enough margin there to support an expensive sales force, and so the big guys price themselves right out of the market.
NewsForge: But don't you face the same problem? Working with small margins, how do you keep the cost of sales down?
Christof: This is one of the ways we benefit from being an open source company. Open source enables us to have a low cost, in-bound sales model, rather than an expensive out-bound model. Our product is available for free download under the terms of the GPL, and we've had over 100,000 downloads so far. The kind of person who will download db4o is exactly the kind of person we want as a customer: curious, technically savvy, willing to innovate. By the time they come to us we know they like the product, we know they are interested. They're already prequalified as a sales lead. This cuts off the most expensive part of the sales process for us. Open source cuts are sales and marketing costs to essentially nothing.
NewsForge: If it's open source, why wouldn't people just use the product for free? Why do they come to you?
Christof: We have many free riders, and that's fine. We don't get revenue from them, but we do get an installed base at very low cost. But remember, this is the embedded market. The typical user wants to combine our database with some other software to produce an application derived from the whole.
NewsForge: And under the GPL, if they're producing a derived work....
Christof: Exactly. It doesn't work for them. So they come to us and ask if they can relicense the software under commercial terms. And that's what I mean by an in-bound sales model: we don't really incur sales costs until someone has already approached us expressing an interest in the product.
NewsForge: So you use a dual licensing scheme, and the GPL really forces users to come to you for the license they want. That works well from a business and marketing point of view, but what about open source development?
Christof: In order to use a dual licensing scheme, we have to own all the intellectual property. So we really don't use any outside developers.
NewsForge: Are there other ways that you benefit from the open source development model?
Rosenberger: It helps us with recruiting. When we hire a programmer, they've been involved with the open source code already for some time, and we can see that they know their stuff. We also benefit from related open source projects. A scripting language interface to our database, like for Python, helps us out even if it's a separate project.
Christof: That's the free ecosystem of the open source world.
NewsForge: As a new company, and a fairly small company, how do you get customers to take you seriously? One of the key concerns in any software purchase is whether or not the vendor will be around to support the product.
Christof: This is another strength of the open source model. Small vendors are typically required to put their software's source code into escrow just to reassure customers. Open source is effectively escrow for everyone. No matter what happens to our company, the source code will always be out there. But I assure you, we are here for the long term, and we are here to stay.
Mark Stone is a free-lance writer based in Northern California.