Often when a new technology comes into makret, there are groups that resist the change and others look for the new bright sides. The case is no different for what Terracotta is doing to databases : It’s killing them.
With the right vision, you can understand why you may no longer need a RDBMS database for 80% of your business solutions. Companies in the new world of distributed data environments have an increasingly important role in the cloud computing universe.
Today, the company announced its new version of Ehcache 2.2, which can store a Terabyte of data and 100 million objects in a single cache bundle. And the changes come with good news of being fully backward compatible, out of the box. Its way more flexible than anything we heard of : It allows Java applications (of any size) to be handled and executed totally in-memory.
By having this large in-memory database storage, need for companies to buy additional RDBMS database becomes irrelevant. All their data upto terabytes can now be stored and fetched at much faster speeds and they reside in the heart of the system in the form of caches.
It doesn’t take much to have a vision similar to Terracotta’s . You write your code (business logic) in Object oriented languages, and store them in a non-hierarchical, non-object oriented, relational database. Several hours are spent in writing the logic to bridge this gap. Isn’t there something wrong with this ? Is it really worth the extra effort, everytime, everywhere?
Data scales in the cloud but the traditional database does not without a lot of tuning. Distributed stores provide elasticity. It’s why NoSQL is gaining popularity.
Terracotta now also provides visibility and control in the Ehcache management console, with the addition of the Quartz Scheduler and Web Sessions open-source job scheduling services. The console also provides a single view of cluster-wide events to help operators identify problem nodes and diagnose performance problems.
The move also favors multiple data centers by enabling cache replication among clusters in disparate geographic areas.
There are a large niumber of new optimizations that using a common runtime library which reduces memory usage and network connections. The integrated API gives programmers power to perform complex inter-process coordination tasks across multiple machines with just a few lines of code.