Old cars and data warehouses
I read a post the other day involving two people arguing about which one of their boxes was better. Teradata this. Exadata that. They spent all their time “working” on their system so they had a lot of ammunition for their argument.
I suppose if you want to spend your days tuning your system to work around your vendor and their technological problems, then arguing is a great way to let off some steam. Trying to keep a legacy database technology performing is no different in that regard to trying to keep a legacy car on the road. Sure a Pontiac Fiero will get you to the office, but it would take so much time to keep it going that you wouldn’t have much time left to get actual work done once you finally got there.
That’s why I drive a modern car. I get in, turn it on, and go.
Legacy vendors worry about this so they try to come up with ways to get their systems to perform. Keeping with the car metaphor, they sell insanely expensive rockets to strap onto the roof and tell you they’ll run as fast as a modern engine. Frankly, the idea of a Pontiac Fiero with a rocket strapped to it scares me — the poor old thing is barely staying in one piece as it is.
If costs are no object, if time to market doesn’t matter, and if your data types, attributes, and analytic requirements never change, then I suppose it could work.
But we don’t live in such a world. We live in a world where the bottom line does matter, where data types like Twitter, Facebook, NFC, location, mobile apps, etc. are growing, and where analytic requirements are changing faster than ever — as is the competitive landscape.
A Fiero, no matter how many rockets are strapped to its rickety old shell, isn’t going to keep up with a modern car, much less the Reventon or Veyron-class hypercars some of us have purpose-built for analytics.
I have been in software for over 20 years. I stay in it because I love the innovation. I love the great ideas and inspired executions that provide meaningful, reusable solutions. I know that may sound a little esoteric, but it is what gets me out of bed in the morning. I think it’s exciting to watch smart people come up with smart software.
But embracing innovation means letting go of legacy. We build on the foundations of the past but we should never become trapped by them.
There was a time when traditional transactional data warehouses were all that were needed, just like there was a time when the Fiero was one of the newest cars on the road. But time has passed and the target has moved. Applying yesterday’s technology to today’s challenges just won’t work.
Now before someone at Oracle flames me, perhaps they want to dig up an Oracle presentation from the 80′s where they talked endlessly about how flat files were just not suitable for the future of agile applications. They pointed out that the quantity of data had changed, that what you wanted to do with it had changed, that you needed a new approach — that taking the old approach and architecture was no longer adequate. Times had changed.
And they’ve changed again.
What was true then is still true now — new challenges require new, innovative software. If you want a multi-terabyte solution that’s up and running in under a day, that supports thousands of users both connected and unconnected, that works all the time every time without tuning; well good luck with the legacy vendors and their strap-on rockets. If you even let them in the door, be sure to call me — I would love to come watch. It should be almost as funny as the Top Gear episode where they tried to build
the Reliant Robin Space Shuttle…