Skip the navigation

How to turbocharge your Web site by dumping your database

Possible? Not quite yet, but Terracotta takes a step in that direction

By Eric Lai
April 21, 2008 12:00 PM ET

Computerworld - Databases are getting faster every day. But they're still a significant bottleneck for many Web applications or Web sites.

Why? Mechanical hard drives, impeded by the laws of physics, bog down the relational databases that read and write to them.

What are the solutions? Speeding up I/O by reading and writing to a faster solid-state disk rather than a spinning one can help. So can using an in-memory database to cache heavily accessed data in RAM.

Another solution combines a little of both, its backers say, allowing Java-based Web apps and sites to scale their performance while avoiding expensive and possibly less effective database upgrades.

Terracotta Inc.'s namesake software is an open-source Java clustering solution.

According to CEO Amit Pandey, the software ties multiple Java virtual machines (JVM) underpinning Java-based Web applications into one big cluster. That allows users to add more app servers to scale out at the application level. It caches all of the transactions going through the Java app while writing them to disk separate from the database.

This way, data generated during a transaction can be quickly stored and, if an app server fails, just as quickly recalled, without having to write each intermediate result to the database itself.

That's perfect for data that is vital during a transaction -- say, the items in your shopping cart -- but that does not necessarily need to be written to disk until the transaction (i.e. the purchase) is finished.

Terracotta has about 50 paying customers -- mostly enterprises -- with more than twice that number using it for free, Pandey said. Customers include Adobe Systems, Comcast, JP Morgan and MapQuest.

The largest group of those customers is using Terracotta with Oracle databases. According to Pandey, one company that does online testing was able to double the number of students it served from 10,000 to 20,000 by using Terracotta and adding 10 free open-source application servers. The company spent about $300,000 on Terracotta and the servers, he said, in contrast to the $2.1 million price tag the firm was quoted if it added more Oracle databases instead.

But doesn't Oracle Corp. offer a cheaper solution in the form of the TimesTen in-memory database that can serve as a front-end cache for the Oracle database?

Yes, said Pandey, though he claimed that using TimesTen is "a little bit more disruptive. It doesn't give you the same [data] persistence as we would, since we are writing to disk in parallel." Also, Terracotta works in Java, meaning that there is no performance loss in translating data from Java objects to relational data formats, he said.

Our Commenting Policies
Internet of Things: Get the latest!
Internet of Things

Our new bimonthly Internet of Things newsletter helps you keep pace with the rapidly evolving technologies, trends and developments related to the IoT. Subscribe now and stay up to date!