In computing, Hazelcast IMDG is an open source in-memory data grid based on Java. It is also the name of the company developing the product. The Hazelcast company is funded by venture capital and headquartered in Palo Alto, California.
In a Hazelcast grid, data is evenly distributed among the nodes of a computer cluster, allowing for horizontal scaling of processing and available storage. Backups are also distributed among nodes to protect against failure of any single node. Hazelcast provides central, predictable scaling of applications through in-memory access to frequently used data and across an elastically scalable data grid. These techniques reduce the query load on databases and improve speed.
Hazelcast can run on-premises, in the cloud (Amazon Web Services, Microsoft Azure, Cloud Foundry, OpenShift), virtually (VMware), and in Docker containers. Hazelcast offers technology integrations for multiple cloud configuration and deployment technologies, including Apache jclouds, Consul, etcd, Eureka, Kubernetes, and Zookeeper. The Hazelcast Cloud Discovery Service Provider Interface (SPI) enables cloud-based or on-premises nodes to auto-discover each other.
The Hazelcast platform can manage memory for many different types of applications. It offers an Open Binary Client Protocol to support APIs for any binary programming language. The Hazelcast and open source community members have created client APIs for programming languages that include Java, .NET, C++, Python, Node.js and Go.
Typical use-cases for Hazelcast include:
Application scaling
Cache-as-a-service
Cross-JVM communication and shared storage
Distributed cache, often in front of a database
In-memory processing and Analytics
In-memory computing
Internet of Things infrastructure
Key-value database
Memcached alternative with a protocol compatible interface
Microservices infrastructure
NoSQL data store
Spring Cache
Web Session clustering
Vert.x utilizes it for shared storage.
Hazelcast is also used in academia and research as a framework for distributed execution and storage.