Memory Management and Configuration
BigMemory manages memory and data for both the Presto Analytics In-Memory Stores and all caches for Presto and the Integrated MashZone Server. The initial configuration for memory when you install Presto uses only heap memory on the local host, as shown in this figure:
Heap memory is configured for the JVM and used by
Presto, the Integrated
MashZone Server, the
Event Service and the application server that hosts
Presto. By default, heap is also used for
In-Memory Stores and
Presto and
MashZone caches.
Off-heap memory is direct memory that is not controlled by the JVM. You can adjust
Presto memory configuration to make use of off-heap memory for both
In-Memory Stores and
Presto caches, as shown in the previous figure.
Note: | Off-heap memory is only accessible if you have installed BigMemory Servers and added the BigMemory license to Presto. |
Remaining direct memory is used by the operating system and other applications running on the local host, such as browsers or other applications.
With BigMemory Servers and optional mirrors, memory is distributed as shown in the following figure:
Presto, the Integrated MashZone Server and the Event Service use heap memory from the local host as usual, as do MashZone caches. Some local host memory is allocated for off-heap which is combined with a much large allocation of off-heap memory from the host for BigMemory.
The data for the Presto Analytics In-Memory Stores and Presto caches are distributed across both local and external off-heap memory both of which are managed by BigMemory. Off-heap memory managed by BigMemory can also contain external In-Memory Stores created by other systems. And of course some memory is allocated for the operating system or other applications on both the Presto and BigMemory hosts.
You can also install
BigMemory in a cluster to provide more memory capacity or support failover and other high availability features.
See Distributed Caching for
Presto
Clusters for more information.
Note: | This is a high-level summary of memory use and storage tiers available with BigMemory. For more detailed information, see the BigMemory documentation. |
How you configure memory depends on how Presto and BigMemory are deployed: