Let’s fast-forward through the question of when enterprise IT will fully, heatedly embrace cloud computing — the answer, according to analysts, is five years — and get right to the better question: Will they ever trust the cloud with their life-or-death applications? Those big, demanding applications that require what some call extreme transaction processing — trading, reservations, electronic payments, etc. — can you run those in the cloud? Do you want to?
GigaSpaces Technologies specializes in helping companies develop distributed, scalable, on-demand systems that can handle big, honking, rapid-fire enterprise and Web applications. And they intend to help companies run those systems in Amazon’s Elastic Compute Cloud.
But before we go to the cloud, a bit of background about GigaSpaces’ approach to delivering scalable applications. GigaSpaces’s flagship product is an application server built from scratch for intense computing. The name, eXtreme Application Platform (XAP), kind of gives that away. The company describes it as middleware for running high-performance, high-reliability applications on grids and other distributed systems. The biggest challenge that XAP is designed to tackle is scalability now.
“It’s not the constant growth in the amount of data, transactions and service requests. It’s the unpredictable peaks and troughs,” says Geva Perry, chief marketing officer at GigaSpaces. “Like when AT&T had to provision all those iPhones suddenly for more people than expected and had systems crashing.” That might also be a business modeling problem, but the point is those peaks can be erratic, and the one-time events will get you every time. (Nobody expects the Spanish Inquisition.)
“You can throw money at the problem and just buy lots of servers to have on hand,” Perry says. “But a lot of companies do that and realize they’ve overprovisioned and have all that stuff sitting idle.” Underprovisioning can have worse consequences.
“What we have is an application platform that allows you to scale cost-effectively and quickly on demand with no changes to your application,” Perry says. “XAP lets you build a high-throughput application so that as demand grows, it can respond, and you don’t have to use any new APIs or make any architecture changes. Developers can write in their usual Java or .Net or whatever.”
“XAP enables your applications to scale linearly, and that’s the only way to scale effectively,” Perry says. “Add 100 servers, then handle 100 times more transactions. But the reality is most middleware products don’t handle things the way we do and end up with bottlenecks in one system or another. Doubling servers doesn’t double throughput.” In more painful accounting terms, we’re talking about diminishing return on hardware investment.
GigaSpaces says it does a few things differently that avoid dreaded latency. All services reside in the same server, eliminating the usual hops between the messaging system, the database, and so on. “With XAP, a transaction’s data, business logic, and messaging are all completing in the same place,” Perry says. In the GigaSpaces universe, applications travel as self-sufficient “processing units.” When it’s time to scale up to meet demand, you add more processing units. “It’s simple scaling. One click,” Perry says. XAP also executes every transaction in local memory, avoiding a trip to the database server (transactions are archived there later).
GigaSpaces says XAP’s scalability and performance features meet the needs of large-scale applications, including SaaS, financial services, e-commerce, online reservations, telecomm provisioning and gaming, and that it has customers in all those areas. Financial services company Susquehanna International Group, for example, built its distributed trading platform, which relies on multiple low-latency applications, on top of XAP.
With success in on-premise grids and clusters, GigaSpaces is making a more overt push to bring extreme applications to the cloud by offering XAP for use with Amazon’s EC2. The company plans an official announcement for June 25. “Our cloud offering has been in stealth mode, sort of, but people have been coming to us to discuss it,” Perry says. “There are about 14 companies in the pipeline to use XAP with Amazon Web Services.”
Deploying extreme-style apps on EC2 is not trivial. But GigaSpaces says using XAP simplifies building an application for that environment. “It solves the problem of how do you build a powerful app for the cloud,” Perry says. “Our Amazon offering is truly an application server that can grow and shrink in the cloud on demand.” And because the system supports transparent scaling between in-house servers and EC2, applications can run locally and then switch to the cloud for peak loads.
GigaSpaces provides an Amazon Machine Image configured with installation and scripts to run an entire transaction or computation within a single AMI. “You write your application once, deploy it to the number of nodes you need, and scale up by launching additional AMIs, or scale down by killing those instances,” Perry says. GigaSpaces supports all Amazon machine sizes, and “we charge for the software piece by the hour: 20 cents for a small machine, 80 cents for large, and $1.60 for extra large.”
Anyone who’s been around proceeds with the wisdom that everything fails eventually, yet news of Amazon service disruptions, like EC2’s last October, travels fast and lingers. So reliability is one of the first things GigaSpaces talks about when describing what it brings to the cloud. Besides the scalability and throughput that comes with implementing XAP, company officials say its technology adds a layer of failsafe insurance to EC2.
“People naturally wonder ‘What happens to my transaction if EC2 or S3 fails?'” says Dekel Tankel, director of technical alliances at GigaSpaces. “We have built in a reliable data grid so you don’t have to worry if Amazon fails or if specific nodes fail.” Each node, or AMI, has a “hot” synchronous backup running on a separate AMI, and if one fails, “the application instantly fails-over, at in-memory speed, to the backup AMI,” Tankel says. “Once the failed AMI is resumed, GigaSpaces automatically ‘heals’ the cluster and provides another backup.”
Interest in XAP for AWS has come from large and small companies who need a scalable application server that won’t require a big investment of time and money, according to Tankel. “Even if they are not ready to run mission-critical applications on EC2, they need a lot of resources to test their new applications. It’s not easy to get 100 servers in an organization for a testing cycle. With our software and EC2, they can write the application using XAP, then take a hundred servers from Amazon for a few hours, then let them go when done.”
This “first step into the cloud,” Tankel says, will prove to large IT organizations that compute-intense applications can be scaled on demand reliably and cost-effectively in this new environment. “They will still have their concerns, especially about security, but these concerns tend to come and go or be technically resolved. There’s ultimately no reason to think your own datacenter is more reliable” than a properly formed cloud.
“We really have a chance now as an industry to make a tremendous shift in how applications are built,” Perry says. “Too many are still being built for a specific platform or require certain components. With cloud computing and middleware that provides complete abstraction, we can make applications that are truly portable. You should be able to move applications from your own datacenter to the Amazon cloud to another cloud, apps that are movable without recoding. That is one of our goals with XAP.”
“In many cases, the economics of the cloud are compelling enough that it’s inevitable the industry will move to it,” Perry says. “Companies are spending millions on their own datacenters … and they end up having to be in the IT business when they don’t want to be. It makes sense to go to someone with the expertise and the capacity.”
Extreme transaction processing could eventually be commonplace in the cloud, once certain problems are solved, says analyst Massimo Pezzini, a Milan-based vice president at the Gartner research firm who specializes in application development and integration. “GigaSpaces is one of the companies working on those problems. From what I can see, this is one of the first manifestations of an opportunity for customers to take advantage of the cloud to run transactional workloads. Today, most cloud applications are not very demanding in terms of performance, but GigaSpaces could allow people to deploy large and demanding applications in the cloud.” Benefits of that include lower processing costs, huge savings due to no hardware investments, convenience, more innovation in terms of software as a service, and the opportunity to grow new transaction-intensive businesses, Pezzini says.
Bringing the XAP technology to the cloud is definitely a step in the right direction, he says. “But will Bank of America be moving its banking systems into the cloud? Probably not anytime soon. Even when the technical issues and issues of backup and security are resolved, there is still the question of trust. Do you trust storing your critical data in the cloud? You really need to trust your cloud provider.”
For those businesses that depend on transactions at extreme speeds, forging that kind of trust relationship, says Pezzini, “takes about five years.”