Pages

Monday, April 9, 2012

Speeding up

I've recently reviewed a paper called Accelerating the Speed of Intelligence for Fast and Flexible Forecasting, put out by CFO Research Services* and it really got me thinking about how quickly do people really need their data and whether I'd want to speed mine up. Based on the observations of myself and others, I think it's pretty clear that at least some of our data does need to be real-time (and having the rest of it real-time would, at the very least, not be a bad thing). The questions left on the table then -- assuming you don't already have a rock-solid use case -- are what does super-fast data look like, and how do we reasonably get there?

What does the real-time enterprise look like?

It looks like HANA, obviously. :)

While that answer is half-tongue in cheek, half-serious, and half-covered in Kool-Aid (being in-memory allows 3 halves to be processed simultaneously -- that's just good science) HANA (or at least something like it) really does need to be the answer going forward if a truly real-time enterprise is ever going to happen on a massive scale.

Existing relational database providers can't support real-time reporting because even in very small deployments people don't want to run reports (especially non-operational analytical reports). They don't want anything to impact the performance of their transactional systems.

Existing data warehouse appliances can get you (at least very close to) real-time, but without a specific use case they are out of reach for small to medium enterprises who can't afford the licensing, hardware, and expertise required of having multiple database technologies. These systems can't support OLTP so they are and will remain a luxury of sorts for most customers.

Some applications (think Workday) are doing great things with in-memory technology, allowing reporting and transactions to occur on the same system. Unfortunately, those great things are largely limited in what data you can pull, how you can pull it, and what you can do with it once it is pulled. It's just too proprietary and silo-ed to branch out beyond its own application.

That leaves us looking for something like HANA, and once it becomes an actual database option for building applications (and some think it is already there), there won't be a reason to not choose it over an existing competitor. It runs on (admittedly beefy) commodity hardware, it will be application agnostic, and it is very reasonably priced (Seriously, pay attention to this announcement and then ask your account rep. You'll be shocked.). If someone were starting truly carte blanche, why wouldn't they pick a database like HANA?

How do we get there?

Assuming you can't start carte blanche, the path to HANA isn't necessarily easy. You've got legacy systems you still need to pay maintenance on, a couple of DBAs who will fight tooth and nail to keep whatever you've got, and a host of applications that you aren't quite ready to rewrite to take advantage of HANA, regardless of your tolerance for pain. So how do we get started?

Small. If you feel like going the very reasonable route, I'd recommend inquiring with some of the hardware partners about "borrowing" a box for a POC (if that hardware partner is also a services provider, even better). Because of the way the software is licensed, you can buy a tiny little chunk to get started. The size of that tiny little chunk is relative to your organization, but you can always add more. Next, buy an appliance that can hold at least twice the storage capability you've licensed software for (and maybe more). Why buy more hardware than software? Because the transaction cost of the hardware is higher, silly, and because the price doesn't grow linearly like it does with the software. As a bonus? With compression, you'll still be able to put more in there than you ever thought.

Once you've made your purchase you'll want to start chucking some "fun" data in there to practice on. This would be a very good time to get some of your other "nice-to-have" initiatives rolling. Exception based reporting? HANA can support that. Predictive Analytics? SAP will sell you that. Mobile? These technologies were meant for each other. Build your next small in-house app with HANA as the database. Once you start using it, you'll see the potential beyond a data warehouse appliance.

Where are we?

Assuming you don't have a full-fledged, custom built HANA use case and you are willing to follow the plan I've just outlined for you, you are still way ahead of the game. Some swaths of your reporting will hum, you'll be able to do things in your applications that you've never done, and you will have spent a bunch of money (that you would have spent on extra CPUs of a relational database anyway) on something far newer, sexier, and ultimately better than the old tech.

Are any of these "fun" use cases "game-changing"? Probably not on their own. But the next time your current DB vendor shows up with their hand out, you may just be comfortable enough with the technology to tell them you don't need to expand their footprint in your organization. And you'll be ahead of your competition in taking advantage of the next paradigm shift in enterprise computing.

* Thanks to the SAP Office of the Finance team for providing this report to me as a member of their CFO Intellectual Exchange Network program. To learn more about improving financial performance, efficiency and overall financial transformation visit their CFO and Finance Leadership Center. **I feel compelled to say "like HANA" because someone will eventually compete with SAP on an in-memory database that can support operations and analytics once they understand the vision***. *** Sorry Oracle, but your Exa-... series is just an appliance at this point, and, as far as I can tell, has no interest in being anything else.