Friday, January 29, 2010

What is Cloud Computing? A Brief Answer

At the Oracle-Sun merger coming-out party, Larry Ellison asked “what is cloud computing?” suggesting it is the same old stuff of hardware, software and the Internet. Let me try to answer this question from various perspectives.

Cloud computing is an umbrella term that describes:
• Provisioning of compute services;
• Billing of the compute services

Provisioning of Compute Services:
Compute services are provisioned from a pool of hardware/networking/power. In other words you don’t buy or lease individual hardware and accoutrements; you simply use what you need from a pool of such resources.

The above describes the hardware layer; the software layer can also be shared or sandboxed. For example, Google offers a shared software layer, they provide the file system, key-value store, operating system, etc. Each of these are designed for multi-tenancy and all users run on this same shared software layer. Amazon provides a sandboxed approach. You get your own sandbox with your choice of software (including their options like SimpleDB and RDS, or your own like loading MySQL).

Billing of Computer Services:
There are two primary ways to pay for cloud computing: utility and subscription. Utility means you only pay for what you use. Subscription means you pay a recurring amount for the right to use something. Amazon provides examples of both. You can pay a subscription fee for an instance of a computer, regardless of how much you utilize it. But when paying for storage, you pay for usage only in a utility model. Private clouds might use chargeback billing, charging the departments that use their services according to utility or subscription models.

Definition:
Cloud computing is an umbrella term that addresses the provisioning—ideally on demand—of compute resources, where the hardware layer supports multi-tenancy and the software layer can be shared or sandboxed. Cloud computing is usually billed, or charged back, according to a pay-as-you go or utility model, a subscription model, or a hybrid of the two.


Definition by Perspective (Consumer):

Cloud consumer: I only pay for what I need at the time in small increments (e.g. hourly or GB transferred) and many annoying things like automated back-ups are automatically handled for me. I have no fixed costs (hardware, software, switches), just variable costs.

Definition by Contrast:
Traditional (dare I say legacy) computing relies on dedicated resources. You might share the networking, but you have a dedicated computer and probably dedicated storage, not to mention dedicated software. Your average utilization of the system might be 10%, with the excess capacity waiting for spikes in usage or allocated for future growth. In other words, you are paying 10X more than you should.

If you have a better definition of cloud computing please provide it in the comments.

Monday, January 25, 2010

Oracle, MySQL, the EU and Wayne Gretzky

“A good hockey player plays where the puck is. A great hockey player plays where the puck is going to be” -- Wayne Gretzky

Technically speaking the EU did a good job. They recognized that, in its current state, there is little market overlap between MySQL and Oracle products. Sure, there was some overlap and some Oracle customers would use the competitive threat of MySQL to extract lower pricing from Oracle. But looking at what the current installed bases are doing, they are not too competitive. And as the EU points out, Postgres and Ingres provide open source alternatives to Oracle’s high-end products.

Oracle, on the other hand did a great job. They saw where the puck was heading—namely that MySQL had their sights set on the Enterprise market—and Oracle intercepted the pass.

The most telling story was what happened at the MySQL partners meeting at the 2009 MySQL conference in April. Oracle had just announced that they were acquiring Sun/MySQL. The partner meeting was kicked off by a presentation on MySQL’s future where every other word was scalable or enterprise. They clearly had their sights set on the enterprise market. Obviously, this presentation was created before the acquisition announcement.

Then came the QA period. Of course, the first question was “What does this acquisition mean to MySQL?” The answer went on about how Oracle was a scalable enterprise database and MySQL is really focused on smaller web applications. It was a very telling 180-degree strategic pivot.

Was this a good thing, a bad thing…that question is now moot. It is what it is. The EU did a good job—based upon the current status—while Oracle did a great job of seeing the future direction.

Does Drizzle now skate to where the puck is going in the cloud? Does MariaDB make a run at the Enterprise by itself? Does MySQL drive forward into the enterprise market with Oracle’s support, or in spite of Oracle? Do Postgres and Ingres get a lift from this, as the only viable open source enterprise databases? Will we see the rise of other competitive threats in the enterprise database market? I’m happy to hear your comments, but ultimately time will tell.

Friday, January 22, 2010

Your Opinion Please: Did Oracle Make Concessions to the EU?

Back when the EU started the investigation of the Oracle-Sun deal, I made a bet. The bet hinged on whether Oracle would make concessions to get the EU’s approval. Please review the arguments, pro and con, and help us settle the bet.

Issue #1: The 10-Point Commitment to Customers Developers & Users of MySQL:
PRO CONCESSIONS: After meeting with the EU, Oracle issues this list of 10 concessions. Oracle prefaces the 10 points with the line: “In order further to reassure the Commission, Oracle hereby publicly commits to the following:” It then goes on to make certain commitments including #2 the non-assertion policy where is says “Oracle will change Sun’s current policy” and commit not to assert their copyright against storage engine vendors for 5 years. And continues to say: “Oracle shall reproduce this commitment in contractual commitments to storage vendors who at present have a commercial license with Sun.” Why would ANY company give up their legal rights without pressure. Clearly they made a concession. The press release includes other commitments and then closes with “The geographic scope of these commitments shall be worldwide and these commitments shall continue until the fifth anniversary of the closing of the transaction.”

CON CONCESSIONS: This is a press release and nothing more. There is no binding legal agreement. At the bottom of this simple press release it says: “When used in this press release, the words “shall,” “plans,” “commits” and “will” and other similar expressions and any other statements that are not historical facts are intended to identify those assertions as forward-looking statements. Any such statement is subject to a number of potential risks and uncertainties…”

Issue #2: Oracle’s Press Release About EU Approval
CON CONCESSIONS: It is very clear in the title “European Commission Unconditionally Approves Oracle’s Acquisition of Sun” It is unconditional, case closed, no conditions.

PRO CONCESSIONS: Of course Oracle will say unconditional. This is tantamount to person #1 suing person #2 for $10M. Instead of taking it to court, they settle where neither person admits or denies guilt, but person #2 pays person #1 $5M. Just because it settled out of court, and they “agree” that nobody is guilty, it is pretty clear that if there was no guilt, person #2 wouldn’t have paid $5M. This face-saving way that Oracle presents the approval to the world is meaningless.

Issue #3: The EU’s Press Release About Approval of the Deal
PRO CONCESSIONS: “The Commission also took into account Oracle's public announcement of 14 December 2009 of a series of pledges to customers, users and developers of MySQL concerning issues such as the continued release of future versions of MySQL under the GPL (General Public License) open source license. Oracle has already taken action to implement some of its pledges by making binding offers to third parties who currently have a licensing contract for MySQL with Sun to amend contracts.” The EU took into account “pledges” by Oracle and the fact that Oracle is already changing binding agreements. These steps were clearly a concession and the binding legal agreements that have been fixed are legal and binding proof of these concessions.

CON CONCESSIONS: Oracle did NOT enter into any binding agreement with the EU, therefore they made no concessions to get the deal done. Any flimsy pledges in a press release are not enforceable and therefore, no concessions were made. The fact that they changed individual agreements does not mean that they made a concession to the EU at all.

We have a lunch bet riding on the argument. Did Oracle make concessions under pressure from the EU in order to close the deal to acquire Sun? Please vote in the comments section, leading with YES (Oracle made concessions) or NO (Oracle did not make concessions). Feel free to elaborate on why ;-).

Please vote on the facts, not on your opinion about whether it was sufficient or not ;-)

Thank you for helping us settle this bet.

Wednesday, January 13, 2010

HP Needs a Linux OLTP Database...FAST

Oracle, after dating HP, Dell, Netapp and EMC has found its mate in Sun. Oracle is now becoming a systems company, and unceremoniously dumping these former paramours. These leaves the spurned lovers to find alternate accommodations, especially in the area of the database.

As I have stated previously on this blog, the clear partner of choice on the Windows front is Microsoft. This is demonstrated by today’s partner announcement around MS SQL Server for OLTP. But who is their partner in the Linux segment?

The following are contenders:
* Postgres (HP rolls their own)
* EnterpriseDB (pre-rolled Postgres)
* Ingres or Sybase—Oracle has felled them both in the past, but they are hoping for new life with a big sugar daddy like HP.
* ScaleDB, If HP is going after the cloud and the MySQL market

I don’t see them going for a NoSQL solution because NoSQL = NoEnterprise, making it a non-starter for HP. One way or the other, HP needs a solution for OLTP on Linux and they are on the clock.

For OLAP, HP has NeoView. If they felt the need, there are a number of OLAP solutions out there such a Greenplum, Netizza, Asterdata, Paraccel, Ingres/Vectorwise and others. That said, I think HP feels that they are holding a good hand on in the OLAP space, but Linux-based OLTP just became a gaping hole in their product suite. Today's partnership with Microsoft confirms this problem, but only solves the Windows half not the Linux half.

Monday, January 4, 2010

VMWare, Zimbra and the Virtualized Software Stack

VMWare appears to be positioning itself to provide the virtualized or cloud-based alternative to Oracle, Microsoft and IBM. This is a very interesting approach, and it will be interesting to see it play out over time. With Oracle and IBM taking a more systems-centric approach, meaning they are both providing the storage, computing and software stacks in the form of a system, this leaves Oracle’s traditional hardware partners out in the cold (HP, Dell, EMC, Netapp, etc.) along with budding potential partner Cisco. VMWare may envision themselves providing the Linux-based alternative to Microsoft in this game of strategic positioning. VMWare’s strategic advantage is that their entire stack is virtualization- and cloud-friendly. That would make sense given Maritz's Microsoft experience.

This diagram compares the various stacks from VMWare's perspective (e.g. they are all on top of VMWare instead of their own respective virtualization offerings). It compares Microsoft (orange), Oracle (red), VMWare (green) and IBM (wait or it....blue).

If that is the case, there are some open holes and some questions.
1. Does VMWare need their own flavor of Linux (a la Novell’s Suse)?

2. What database does VMWare include? There are open source alternatives such as MySQL, Postgres and the recently wounded Ingres. The problem is that these all employ a shared-nothing architecture which doesn’t fit the virtualization model. They could look at some of the NoSQL alternatives, but NoSQL = NoEnterprise and the enterprise is where VMWare makes their money. (shameless plug) They could look at using ScaleDB’s shared-disk storage engine for MySQL, which is virtualization friendly.

3. Does VMWare go after higher-level applications like Zoho, SugarCRM, etc.?

4. Does VMWare partner with SAP to provide the applications layer and would that work in a virtualized stack? Certainly the proximity of their Menlo Park campi is convenient.

The opportunity for VMWare to partner with HP, Dell, Cisco, and obviously EMC but probably not Netapp, seems very compelling. Combine this with a built-in cloud play for these potential partners and it makes a lot of sense. Oracle is enamored with Sun and their systems strategy. They are walking away from HP and Dell. It would be interesting to see VMWare walk into those companies with the grand partnering strategy and a complete cloud stack ready to go. It would then increase the stakes for Oracle’s systems play, because it would cut-off their fallback position.

It is always interesting to watch the industry giants try to out flank each other.

Monday, December 21, 2009

Oracle/Sun vs. The Cloud

Larry Ellison makes it very clear that Oracle believes in a back to the future model where software and hardware meld together into “systems”, purpose-built, integrated solutions. In other words you won’t buy an Oracle database and a server and configure it to run a data warehouse, instead you’ll buy the “Oracle Data Warehouse Server.” The first such system is Exadata, which is apparently doing quite well, according to Ellison.

This is a classic bundling, although some may call it a tying strategy. Microsoft, seeing that they couldn’t win each office productivity segment individually—including word processing, spreadsheet and presentations—decided to play to their strength and bundle them into a solution that no individual company could compete with. This is bundling. The tying strategy is where Microsoft used their dominance in the operating system to tie the browser to the OS, thereby owning the browser market. In the case of Oracle, one could make a case either bundling or tying. I’m making neither a value, nor a legal judgment about Oracle’s strategy; I am just providing historical context.

Ellison points to Cisco and IBM, under T.J. Watson Jr., as examples of successful systems companies. But my question is simple: Will this back to the future strategy work against the cloud? Assembling solutions with pre-packaged systems is certainly easier than starting with more granular components like hardware and software. But does it really stack up against today’s benchmark, the cloud.

Let me use a transportation analogy:

Assembling all of the components (hardware, software, etc.): Like building a car piece by piece

Assembling systems (a la Oracle's Exadata and Cisco): Like building a car by installing large grain items, the chassis, wheels, engine, etc.

Using the cloud: Like buying a pre-built car off the lot

SaaS Applications: Like riding the subway

Most people are perfectly happy either buying a car or riding the subway. For really high-end performance, some may want to build their own car with components or by hand, but it’s a relatively small market.

I don’t expect any public cloud offerings to satisfy high-end enterprise demands…yet. But I have to admit, the cloud is evolving quite rapidly. Just look at Amazon and their introduction of Virtual Private Clouds, Elastic Block Services (a SAN in the sky), Boot from EBS, etc. I can launch an entire cluster with a mouse-click, without talking to IT. How can you beat that? Historical precedence is also on the side of commodity technologies, like the cloud, growing up to cannibalize the high-end. The PC cannibalized the workstation, which cannibalized the mini, which cannibalized the mainframe. From the clou's perspective, the trend is their friend.

The cloud won’t seriously threaten large enterprise systems for quite some time, but I believe it is just a matter of time. Oracle can certainly ride a strong wave of current demand for systems. I expect that in time they will also provide a compelling suite of solutions in the cloud. But if I were a bettin’ man I’d have to bet on the cloud; they have simplicity and history on their side. On the other hand, it is hard to bet against Ellison.

Monday, December 14, 2009

We Really Need TPC Benchmarks for the Cloud

TPC database benchmarks—which database vendors tune specifically for—are a useful objective comparison for buyers of databases. Unfortunately, there is no such comparison in the cloud, and the current cost/comparison approach used by TPC doesn’t fit the cloud.


Here are the problems:


1. TPC doesn’t include costs that are included in the cloud: Public cloud services bundle the costs of everything into their pricing. TPC eliminates things like: electricity, network connectivity, people to run the service, networking equipment (e.g. switches, cables, internet connectivity, etc.), load balancers, modems, Ethernet cards, etc. The public cloud is really a total cost of ownership, while TPC costs are not. So any cost/performance between onsite and cloud solutions compares apples to oranges.


2. TPC assumes that the expenses included above are paid in advance for three full years. Public clouds use a pay-as-you-go model. To compare apples-to-apples here, you would need to do a net present value (NPV) calculation to account for the time-value of money.


3. And this is the BIGGEST issue. TPC tests assume full utilization of the computer. Everyone knows that in the real world you (a) only use at most 80% of the CPU to accommodate usage growth and extreme peaks in performance; (b) between typical peaks and valleys in the remaining 80% your average usage in the real world is typically 10%-20% of the server’s capacity. The cloud, on the other hand, provides an elastic environment where you only pay for what you use. If you use a cloud-ready database that scales elastically, an average load factor of 10%-20% per server translates into saving 80%-90% of the costs versus a dedicated machine. In other words, an elastic cloud environment should reduce cost/transaction by 80%-90%, relative to a dedicated machine.


The cloud provides a normalized cost structure that reflects a more realistic total cost of ownership (TCO). It bundles costs like networking, personnel, electricity, internet access, and more, all in a pay-per-use model. But most importantly, we can get a transactions/instance, and then we elastically scale the instances as needed. This elastic pricing model gives us a real world cost scenario, instead of assuming that a single server is utilized at 100% capacity, which never happens in the real world.


For these reasons, I would like to see TPC create a category of benchmarks that measure cost/performance on standard cloud infrastructures.


Here is a link to Nobu, who ran TPC-C on Amazon’s RDS.