Hazelcast
Developer(s) | Hazelcast (company) |
---|---|
Stable release |
3.7
/ August 22, 2016 |
Written in | Java |
Website |
hazelcast |
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.[1][2]
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-premise, 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-premise 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 and Clojure. Java and Scala can be used for both clients and embedded members.
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[3]
- 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 Shiro
- Apache TomEE
- Esper (software)
- JHipster
- Liferay
- Underlying MapReduce framework/executor[4]
- MapR
- Mindjet
- Openfire
- OrientDB
- Payara Server
- Pentaho
- Talend
- Twilio
- Vert.x utilizes it for shared storage[5]
- WSO2
Hazelcast is also used in academia and research as a framework for distributed execution and storage.
- Cloud2Sim[6][7] leverages Hazelcast as a distributed execution framework for CloudSim cloud simulations.
- ElastiCon[8] distributed SDN controller uses Hazelcast as its distributed data store.
- ∂u∂u[9] exploits Hazelcast as its distributed execution framework for near duplicate detection in enterprise data solutions.
Timeline
- 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
References
- ↑ "Java In-Memory Grid Hazelcast gets venture capital funding from Bain Capital". Infoq.com. 2013-09-18. Retrieved 2013-12-11.
- ↑ "Hazelcast adds $11M to grow its business based on an open-source in-memory data grid".
- ↑ Hazelcast. "Memcache Client". Retrieved 2015-08-06.
- ↑ Christoph Engelbert (2013-12-04). "Hazelcast MapReduce Avg Example". Retrieved 2013-12-24.
- ↑ Jaehong Kim. "Understanding Vert.x Architecture - Part II". CUBRID. Retrieved 2012-12-16.
- ↑ Kathiravelu, Pradeeban; Veiga, Luís (9 September 2014). Concurrent and Distributed CloudSim Simulations (PDF). IEEE 22nd International Symposium on Modelling, Analysis & Simulation of Computer and Telecommunication Systems (MASCOTS). Paris. pp. 490–493. Archived from the original (pdf) on 9 September 2014. Retrieved 2 January 2016.
- ↑ Kathiravelu, Pradeeban; Veiga, Luís (8 December 2014). An Adaptive Distributed Simulator for Cloud and MapReduce Algorithms and Architectures (PDF). IEEE/ACM 7th International Conference on Utility and Cloud Computing (UCC), 2014. London. pp. 79–88. Archived from the original (pdf) on 8 December 2014. Retrieved 2 January 2016.
- ↑ Dixit, Advait Abhay; Hao, Fang; Mukherjee, Sarit; Lakshman, TV; Kompella, Ramana (20 October 2014). ElastiCon: an elastic distributed sdn controller (PDF). Tenth ACM/IEEE symposium on Architectures for networking and communications systems. pp. 17–28. Archived from the original (pdf) on 20 October 2014. Retrieved 2 January 2016.
- ↑ Kathiravelu, Pradeeban; Galhardas, Helena; Veiga, Luís (28 October 2015). ∂u∂u Multi-Tenanted Framework: Distributed Near Duplicate Detection for Big Data (pdf). On the Move to Meaningful Internet Systems: OTM 2015 Conferences. Rhodes, Greece. pp. 237–256. Retrieved 2 January 2016.