Hi, this is Max Herrmann from GridGain Systems, and today is a big day as in-memory computing as you know it is about to be redefined. Sure, in-memory computing technologies have been around for many years in one form or another. First there was caching, which graduated to distributed caching over time by affording itself a scale-out architecture. Then came in-memory databases which, it turns out…
In this blog we cover a very important optimization that can be utilized for in-memory caches, specifically for cases where data is partitioned across the network.
In this blog we will cover a case when an in-memory cache serves as a layer on top of a persistent database. In this case the database serves as a primary system of records, and distributed in-memory cache is added for performance and scalability reasons to accelerate reads and (sometimes) writes to the data.
2-Phase-Commit is probably one of the oldest consensus protocols and is known for its deficiencies when it comes to handling failures, as it may indefinitely block the servers waiting in prepare state. To mitigate this, a 3-Phase-Commit protocol was introduced which adds better fault tolerance at the expense of extra network round-trip message and higher latencies.