Friday, March 6, 2009

Does you car need different engines? (XML Storage)

Today I plan to talk about cars and XML storage, two seemingly different topics.

Cars have an engine, the engine is used to move the car with slow, middle, or high speeds, on flat roads, up and down hills or mountains, with light or heavy load. You don't need a different engine for different terrains. It's great because you can go where you need to go without too much pre-planning - flexibility you love. You don't need to select and put in a different engine for the next task ahead. There are more benefits because service technicians know how to deal with that single engine, car manufacturers can put their development budget into improving that single engine, and you know how the engine is behaving in different situations. It's not always optimal, but you are prepared to take the roads ahead because you don't need to change engines. You are prepared for unexpected detours ahead. Watch out if someone tries to sell you a car where you need to change engines!

BTW: With automatic transmissions you don't need to shift gears, with newer automatic transmissions there isn't even any gear shifting. Cars have evolved to turn on lights automatically, even to watch out for and assist in critical or complex situations (ESP, ABS, etc.). It takes stress from you and let's you reach your destinations safely.

Coming to the topic of XML storage, I want to emphasize that XML is about flexibility. DB2 pureXML only has a single XML type, a single XML storage engine. You don't need to choose a different XML storage option if your requirements change. You don't need to decide (and know) upfront which road to take, no issue dealing with an unexpected detour because your DB2 engine is suited to handle it. This is flexibility you love (or will learn to love)! Combine that with automatic storage, self-tuning memory management, and other autonomics and life is less stressful.

What a perspective for the weekend. And remember to watch out...


Craig S Mullins said...

Interesting analogy, but it doesn't hold 100%. For example, if I want to tow another vehicle, my car's engine might not be sufficient and I might need to switch to a truck or a more powerful car... and, if I need to haul more than 5 people I would need to change to a van, or maybe even a bus...

That said, I agree that pureXML is a nice addition to DB2 and that for most users it will be better than if they acquired a separate XML DBMS.

Henrik Loeser said...

A larger car or a tow truck still only has a single engine. You could compare that to a different machine/hardware. What's interesting is that there are database systems other than DB2 where you need to decide based on the expected type of usage whether to store the XML type as binary type, as O/R mapping, or CLOB, or whatever is available. It's always called XML storage (car engine), but always for a different purpose. You have to pick the engine for the anticipated road.

Rafael said...

DB2's Relational and XML single engine even provides more flexibility. Do you need to store XML data? What about all the relational data you have? Do you need to mix and match them? Not only does DB2 provide a single engine for XML but you also get to keep that same engine you love for relational data.


Related Posts with Thumbnails