In computing, Hazelcast 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.
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 programing language. The Hazelcast and open source community members have created client APIs for programming languages that include Java, Scala, .NET Framework, C++, Python, Node.js, Golang and Clojure. Java and Scala can be used for both clients and embedded members.
Video Hazelcast
Usage
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
Hazelcast is often used as an underlying library or system onto which other higher level features are built, with examples including:
- Alfresco
- Apache Camel
- Apache Gora
- Apache Shiro
- Apache TomEE
- Esper (software)
- JHipster
- Liferay
- Underlying MapReduce framework/executor
- MapR
- Mindjet
- Openfire
- OrientDB
- Payara Server
- Pentaho
- Talend
- Twilio
- Vert.x utilizes it for shared storage
- WSO2
Hazelcast is also used in academia and research as a framework for distributed execution and storage.
- Cloud2Sim leverages Hazelcast as a distributed execution framework for CloudSim cloud simulations.
- ElastiCon distributed SDN controller uses Hazelcast as its distributed data store.
- ?u?u exploits Hazelcast as its distributed execution framework for near duplicate detection in enterprise data solutions.
Maps Hazelcast
Timeline
- July 4, 2017: release of Hazelcast 3.9
- March 14, 2017: release of Hazelcast 3.8
- August 23, 2016: release of Hazelcast 3.7
- January 21, 2016: release of Hazelcast 3.6
- June 17, 2015: release of Hazelcast 3.5
- August 2, 2013: release of Hazelcast 3.0
- March 2, 2012: release of Hazelcast 2.0
- March 1, 2009: release of Hazelcast 1.5
See also
- Complex event processing
- Distributed computing
- Distributed data store
- Distributed hash table
- Distributed transaction processing
- Extreme Transaction Processing
- Grid computing
- Infinispan
- In-memory processing
- Oracle Coherence
- Transaction processing
- Ehcache
- Memcached
- Couchbase Server
References
External links
- Hazelcast company page
- Hazelcast GitHub page
Source of the article : Wikipedia