IMDGs provide a lightweight, distributed, scale-out in-memory object store — the data grid. Multiple applications can concurrently perform transactional and/or analytical operations in the low-latency data grid, thus minimizing access to high-latency, hard-disk-drive-based or solid-state-drive-based data storage. IMDGs maintain data grid durability across physical or virtual servers via replication, partitioning and on-disk persistence. Objects in the data grid are uniquely identified through a primary key, but can also be retrieved via other attributes. The most typical use of IMDGs is for web-scale transaction processing applications. However, adoption for analytics, often in combination with Apache Spark and Hadoop or stream analytics platforms, is growing fast — for example, for fraud detection, risk management, operation monitoring, dynamic pricing and real-time recommendation management.