Open Source Projects:

Use Case

Hibernate Second-Level Cache

Pricing
Chat
Contact
Back to top
Overview

Hazelcast® smoothly integrates with Hibernate 3 and Hibernate 4, providing distributed caching support based on Hazelcast IMap technology. Features like scalability, in-memory backups, and automatic eviction are fundamentals of the Hazelcast architecture. Hazelcast brings those features to the Hibernate world.

Hibernate and Java

Hibernate is a well-known and commonly used Object-Relational Mapping (ORM) library for the Java language.

As a fully compliant JPA (Java Persistence API) persistence provider, Hibernate integrates seamlessly into both Java Enterprise Edition application servers and pure Java Standard Edition applications. Hibernate lets you easily and quickly access relational data by providing mapping mechanisms from relational database tables, rows, columns, and foreign keys to your annotated Java classes. Hibernate generates your SQL queries with an easy-to-use syntax that queries data based on the Java object-oriented domain model.

First-level Caching

Hibernate ships with a first-level cache associated with the session object to reduce the number of SQL queries directly to the database. Each session object caches data independently of the others, so there is no sharing of cached data across sessions, nor will the cached data remain if the session closes.

Second-level Caching

The Hibernate second-level cache offers the ability to plug in a caching technology to complement the first-level cache. The second-level cache shares cached data across sessions from the Session Factory, which means all users can benefit from the cached data, even if the session that inserted the data into the second-level cache closes. This is especially useful for high-volume web applications that have high commonality across users in terms of SQL queries to the database. And with larger caches, you get more cached data and thus can expect more acceleration.

Using Hazelcast with Hibernate

Hazelcast provides multiple ways for you to use Hibernate, depending on your deployment strategies, security aspects, or usage patterns. You can use Hazelcast as a client-server or a cluster-only architecture.

Hazelcast Hibernate Diagram.

Hazelcast has a built-in integration with Hibernate to easily plug in caching. And it is more than just a simple cache for your Hibernate environment, as it provides capabilities to run a high-volume production web application that has business-critical requirements.

Performance
Performance

Hazelcast is designed to deliver the highest throughput and lowest latencies. Benchmark reports show we are faster than other popular in-memory technologies.

Security
Security

Hazelcast provides authentication, authorization, and encryption capabilities to ensure your data is protected from unauthorized access.

Elasticity/Scalability
Elasticity/Scalability

Hazelcast elastically scales by expanding or shrinking the cache to accommodate your needs. You can grow your Hazelcast cluster to extremely large sizes, so you can use it for multiple purposes at the same time including application caching, batch processing, and stream processing, in addition to the Hibernate second-level cache.

Reliability
Reliability

Hazelcast has built-in replication for high availability as well as disaster recovery to ensure business continuity of the high speed caching layer. Also, you can use the WAN replication feature to distribute cached data across remote locations to put the data near the end users.

Hazelcast In-Memory Computing Platform

Hazelcast In-Memory Computing Platform

The most comprehensive solution for data at rest and data in motion.

Solutions

Hazelcast In-Memory Computing Platform

Hazelcast IMDG

Hazelcast IMDG is the industry’s leading in-memory data grid (IMDG). IMDGs are designed to provide high-availability and scalability by distributing data across multiple machines. Hazelcast IMDG enriches applications by providing capabilities to quickly process, store and access data with the speed of RAM.

Hazelcast Jet

Hazelcast Jet is an application embeddable, distributed stream processing platform for building IoT and microservices-based applications. The Hazelcast Jet architecture is high-performance and low-latency-driven, based on a parallel, distributed core engine enabling data-intensive applications to operate at real-time speeds.

Hazelcast Cloud

The benefits of moving to the cloud are well known and applicable to virtually every industry. Hazelcast offers our customers the flexibility to deploy to the cloud on their terms, whether it's a dedicated cloud, on-premise cloud, hybrid cloud, or private cloud.

In-Memory Store and Cache

High-Density Memory Store adds the ability for Hazelcast Enterprise HD IMDG to store very large amounts of cached data in Hazelcast members (servers) and in the Hazelcast Client (near cache), limited only by available RAM for extreme scale-up.

Stream Processing

Stream processing is how Hazelcast processes data on-the-fly, prior to storage, rather than batch processing, where the data set has to be stored in a database before processing. This approach is vital when the value of the information contained in the data decreases rapidly with age. The faster information is extracted from data, the better.

Free Hazelcast Online Training Center

Whether you're interested in learning the basics of in-memory systems, or you're looking for advanced, real-world production examples and best practices, we've got you covered.