May 26, 2009

Language, evolution and business intelligence

Last month, I was fortunate to hear Dr. Stephen Pinker speak at a symposium at Arizona State University. (You can watch a video of the presentation here). One of the ideas proposed by Pinker was the incredible power of language in terms of evolutionary development of our species.

In biological evolution, new capabilities are introduced through mutation, but even the most powerful new feature will take generations to assert itself in a species. Pinker describes language as a way to implement evolution in near-real time.

By this, he means that language allows a species to transmit ideas, or memes, from one individual to another very rapidly, providing a short cut to the manifestation of evolutionary development. In fact, our ability to use language gives us a clear-cut evolutionary advantage over most all other species – it’s like our evolutionary cycles are moving way faster than other animals. This rapidity is why humans came to dominate the planet, despite our rather puny size and relatively weak biological weapons and defenses.

With language, we can quickly change our behaviors to adjust to new situations, and even pass this learning on to our fellow species members.

Pinker goes even farther than this, though. He points out that our speech is unique, in that it has a grammatical structure to it. This structure allows us to understand complex and unnatural topics like historical time. Even more importantly, grammatical language allows us to understand metaphors, with which we can take knowledge gained in a single situation and transform it into more generalized wisdom.

Pretty cool stuff. And, like much always, I began thinking about analogies in the world of data. It struck me that this same type of evolutionary advantage accrues to organizations that use data warehouses and business intelligence to extend the value of their data.

Think of it this way. Keeping data for operational purposes is a bit like living in a constant present. Even though our databases can capture, store and reproduce this data flawlessly, using data for only this purpose is like depending on biological evolution. You can change over time, based on your operational understanding, but the time may very well be slower than rate of change in your market.

Using business intelligence to recognize and refine data gives you the sort of advantage that language, by itself, delivered to humans. We can not only see the operational data from the past, but we can see how this data forms trends extending into the future.

To take this a step farther, we can come to understand these trends as not only directions, but as ways to learn more about our customers, the appeal of our products, and the market in general. And, just as metaphor extends language into wisdom, we can use our powers of analysis on the information produced by business intelligence to gain real competitive advantage in the always-ferocious marketplace.

Or maybe not. Your counter opinions or amplifications welcome below.

March 22, 2009

10 things to know about databases?

I tend to take magazine articles about technology with a grain of salt. The journalists who write these articles are not typically technology experts, so their reporting tends to be less than insightful. But every once in a while, I come across a piece that makes my blood boil. A recent article in the March 16, 2009 eWeek grabbed my attention in this way.

eWeek usually includes a page near the back of the magazine titled “10 Things”, which is designed to give readers a concise summary about a technology topic. In this issue, the article focuses on things that people should know now about databases. Of the points in the article that follow, I have some pretty significant issues with, oh, 8 of them. So please bear with me as I attempt to straighten out these misguided assumptions, in order of increasing cluelessness –

  • Point 1 – In this initial point, the author lays out his core belief that database storage will be moving to the cloud. This point is not essentially wrong, but as the subsequent discussion will show, this broad brush assertion, by itself, is not that illuminating.

  • Point 2 – This point calls out the role that database appliances will have in the cloud. The author is correct that these appliances deliver good performance, but these machines accomplish this with a singular focus on a particular problem, an approach that calls for a lot of customization based on the specifics of user scenarios. This focus means that these appliances are not typically capable of being used in a general-purpose manner – which is apparently what the author is suggesting.

  • Point 4 – The author lets the cat out of the bag as to his overall orientation. This point calls out that database servers will be accessible from a desktop. Hmm, sounds suspiciously like client-server to me. Someone who thinks this is something that readers have to know “now” is someone who believes that the leading database in the world is, I don’t know, maybe Microsoft Access.

  • Points 9 and 10 – Both of these points make reference to the fact that many popular cloud databases are not relational. The author points out that these databases can be very fast, but doesn’t seem aware of why this is. A non-relational database, like a database appliance, can frequently be faster for the simple reason that it does less, which also applies to the database appliances discussed above. But relational databases have plenty of go-fast tricks, like query result caching in Oracle 11g, and good database design and configuration can deliver very high performance for read-intensive operations, like the lookups called out in Point 9.

  • Points 3 and 6 – The author talks about how Facebook, in Point 6, supporting thousands of MySQL installations with only a couple of administrators. Although the point seems to be about getting performance over the Web by having dedicated databases, the callout of the number of administrators seems to indicate that the author doesn’t realize that simple databases require much less administration than more robust enterprise databases, since these simple installations can use many more default configuration options.

    The author compounds this misunderstanding in Point 3, where he claims that “one- and two-person shops will be able to have massive applications that rival those of Amazon”. Whew. First of all, databases are separate from applications, a fact that is a pre-requisite for taking Database 101. But the sheer inanity of this claim is even more stunning. Is the author claiming that Amazon, arguably the most successful e-business site in the world, could be supporting their massive applications with a two person shop – that their staff is too large by three (or four) orders of magnitude? I hope not.

  • Point 7 – On this point, the author both goes out on a limb and reveals his lack of experience with real databases. The author cites the great performance of that well-known enterprise database company, Facebook, in retrieving images. Although I am not a Facebook user myself, I can state an essential truism about database performance that applies here – talented database implementers can deliver fantastic performance for any ONE operation. If Facebook wants to bring up images quickly, they can (and did) certainly design and implement their underlying database to do that. But, almost inevitably, there are compromises that come out in reduced performance for other types of database operations. I am not familiar enough with Facebook to definitively call these out, but I am pretty sure that Facebook could not scale anything remotely transactional like an established database.
    The author finishes the point by stating “Facebook is pioneering the future”. Uh, maybe – if, in the future, the only type of high performance data retrieval we need is getting images on line.

There, I feel much better. But even after all this venting, I am still amazed. The author is not mistaken on some directional aspects of the story – he seems to have virtually no understanding of what a database actually does. To accept his contentions, a reader would have to have been almost completely ignorant of database technology. The author is not just off base - he is not even wrong.

March 6, 2009

Pure-play SaaS - promise and reality

A recent piece in eWeek by Brian P. Watson caught my eye, as the numbers reported in the piece seemed to confirm something I have suspected for a while.

The numbers in question came from the CIO Insight IT Spending study. Watson noted how expenditures for some categories did not meet the levels predicted from the previous year’s survey. CIOs spent less than expected in a number of categories, including the super-hyped areas of Software-as-a-Service (SaaS) and on-demand computing.

At the same time, some areas ended up with more spending than predicted, including Web hosting and storage and remote backup.

To me, these two results highlight one of the overlooked foundations of many SaaS platforms. Web hosting, like SaaS, delivers near universal access to information. Remote backup provides an alternative to in-house data center services, as well as an extra degree of protection by being off-premise, just like SaaS.

But why did these technologies succeed beyond expectations, while SaaS, which is all this and a bag of chips? For one simple reason – many of the currently popular platforms, such as Force.com from salesforce.com, are profoundly proprietary. The platforms offer you a one-size-fits-all proposition – not because it’s best for their customers, but because it is all that is available.

To understand this better, consider one of the prime virtues touted for SaaS platforms, multitenancy. Multitenancy is the ability to support multiple user organizations in a single environment. Now, there is nothing wrong with multitenancy for some scenarios, such as hosting many small to medium companies on a server. But you can get the same effect in any number of ways with the Oracle platform.

For instance, you could use multiple schemas in a single database to pretty much replicate the advantages of a multitenant environment. But that’s not all. You have a number of other options, such as multiple virtual machines on a single hardware platform, multiple application services defined for service by a RAC (Real Application Clusters), or actually devoting a specific piece of hardware for a customer or application.

The Oracle database includes Application Express, which provides the same sort of declarative development environment touted by most SaaS vendors.

Best of all, any one of these solutions can run either in the cloud or in-house, protecting your development investment. If you leave a proprietary cloud platform, like Force.com, all you take is your data.

The press loves the prospect of new technology – it gives them something to write about. But when companies went to make actual purchase decisions in 2008, they seem to have found the promise of pure play SaaS missing the expected mark. Companies went for the virtues provided by SaaS – universal access and offloading data center operations – without having to accept the limitations imposed by proprietary SaaS platforms.

With even tighter times ahead, expect greater aversion to the risk of a new proprietary platform to act to retard the growth of pure-play SaaS, especially when Oracle’s solution can deliver all the benefits of those platforms with more flexibility and proven scaleability and reliability.

Welcome to From The Core

Hello World!

My name is Rick Greenwald, and I have been hanging around the Oracle universe for a couple of decades, both as an Oracle employee and an independent author. Currently, I am working on enabling Oracle partners - helping to educate and excite that community to the wonders of Oracle's core technology..

I am usually inspired to blog by some event, which leads me to thinking about technical features and how they enter into our lives and thinking. Hopefully, these blogs will encourage you all to think (and comment) on these same topics.

More to come . . .