Hazelcast
This article needs additional citations for verification. (March 2019) |
| Hazelcast | |
|---|---|
| File:Hazelcast-logo-color.png | |
| Developer | Hazelcast |
| Stable release | 5.5.0
/ July 26, 2024[1] |
| Repository |
|
| Written in | Java |
| Engine | |
| Type | in-memory data grid, Data structure store |
| License | Hazelcast: Apache-2.0,[2] Hazelcast Enterprise: Proprietary |
| Website | hazelcast |
In computing, Hazelcast is a unified real-time data platform[3] implemented in Java that combines a fast data store with stream processing. It is also the name of the company that develops the product. The Hazelcast company is funded by venture capital and headquartered in Palo Alto, California.[4][5][6]
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 can run on-premises, in the cloud (Amazon Web Services, Microsoft Azure, Cloud Foundry, OpenShift), virtually (VMware), and in Docker containers. 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 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.[7]
Usage
[edit | edit source]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[8]
- Microservices infrastructure
- NoSQL data store
- Spring Cache
- Web Session clustering
Vert.x utilizes it for shared storage.[9]
Hazelcast is also used in academia and research as a framework for distributed execution and storage.
- Cloud2Sim[10][11] leverages Hazelcast as a distributed execution framework for CloudSim cloud simulations.
- ElastiCon[12] distributed SDN controller uses Hazelcast as its distributed data store.
- ∂u∂u[13] uses Hazelcast as its distributed execution framework for near duplicate detection in enterprise data solutions.
See also
[edit | edit source]- Complex event processing
- Distributed data store
- Distributed transaction processing
- Infinispan
- Oracle Coherence
- Ehcache
- Couchbase Server
- Apache Ignite
- Redis
References
[edit | edit source]- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).