Skip navigation

Terracotta Virtual Heap for Large Datasets

With Terracotta, Java applications can address heap in excess of one machine's physical RAM. Your JVM can spill data to the Terracotta Server Cluster. The Terracotta Servers can, in turn, spill data to disk. This two-tier system ensures high performance by keeping data as close to the processing context as possible. It also makes it possible for 32 bit systems to access terabytes of data.


Simple - Lowest "clustering" development impact, straightforward configuration, use inexpensive hardware

Low Impact

  • Works with the POJOs and collections already in your application
  • Does not require java.io.Serializable or proprietary APIs
  • Transparent flushing / faulting of fields to Java heap

Configure virtual heap behavior in the Terracotta configuration file

  • Flag the objects by name that you want to spill to Terracotta
  • Then set the watermark for free java heap you want to maintain
  • Last, set the watermark for data sizes at which Terracotta should spill to disk

Use inexpensive hardware

  • Use 32-bit hardware in cases where heap size would otherwise require more expensive 64-bit gear
  • Keep 64-bit heaps as small as possible to minimize GC pauses

Fast – Terracotta Cluster keeps track of heap usage statistics

  • Terracotta seamlessly determines when to page portions of object graphs in or out
  • Only field level changes are sent, and only to nodes that need the changes

    (click to enlarge)

Reliable - stable, scalable runtime platform

  • Reduced risk of out of memory exceptions (OOME's) causing application outages
  • Build HA infrastructure on inexpensive hardware

Adaptavist Theme Builder Powered by Atlassian Confluence