This short video explains why companies use Hazelcast for business-critical applications based on ultra-fast in-memory and/or stream processing technologies.
Stream processing is a hot topic right now, especially for any organization looking to provide insights faster. But what does it mean for users of Java applications, microservices, and in-memory computing?
In this webinar, we will cover the evolution of stream processing and in-memory related to big data technologies and why it is the logical next step for in-memory processing projects.
Now, deploying Hazelcast-powered applications in a cloud-native way becomes even easier with the introduction of Hazelcast Cloud Enterprise, a fully-managed service built on the Enterprise edition of Hazelcast IMDG. Can't attend the live times? You should still register! We'll be sending out the recording after the webinar to all registrants.
Apache Cassandra is one of the most popular NoSQL databases today. It is known especially for high-speed read and write performance. Often used to store huge amounts of tabular, non-relational data, Cassandra is deployed at many organizations for their data storage needs. It features continuous availability, linear scale performance, operational simplicity, and easy data distribution across multiple data centers and cloud availability zones.
Hazelcast IMDG is the leading open source and fastest in-memory data grid, providing fast reads and writes, as well as high-performance data recovery from single node or cluster failures, and parallel processing. Commonly used for large volume, distributed, read-heavy in-memory caches with low, consistent latency requirements, Hazelcast IMDG provides data processing and querying at in-memory speeds. With its built-in high availability, disaster recovery, and security capabilities, it offers reliability and data safety in addition to its performance advantage to power systems in the most demanding environments at leading companies around the world.
Despite its reputation for speed, Cassandra still faces bottlenecks at high loads due to its disk-based architecture. This means read performance is capped by I/O specifications, which restrict application performance. By integrating Hazelcast with Cassandra, you can boost application performance by reducing disk accesses and retrieving data directly from the RAM managed by Hazelcast. This dramatically reduces the latency of read operations, and also allows greater throughput to accommodate your most intensive workloads. And unlike traditional caching technologies, Hazelcast is architected to run as a production, 24/7 system to tolerate node failures and thus avoid significant performance hits.
Without Hazelcast IMDG, Cassandra users that need higher throughput and lower latency have a few suboptimal options:
With Hazelcast IMDG, you set up an intelligent and scalable caching system that can speed up your Cassandra reads and writes. You can achieve new levels of performance without getting burdened with complexity and cost.
Hazelcast IMDG is popular because of its ease of use and low operational overhead. These make it relatively easy to run a Hazelcast cluster alongside a Cassandra cluster to gain a significant performance boost.
Integration is done by leveraging the MapStore and MapLoader interfaces, both parts of the Hazelcast IMDG API. Application developers write the interface code to map the data in Cassandra to Hazelcast and vice versa. Hazelcast then owns the task of automatically synchronizing data between the two systems.
While in operation, Hazelcast acts like a seamless cache in front of Cassandra, where any application-requested data that resides in Hazelcast/RAM is quickly returned. If the data is not found in RAM, then Hazelcast retrieves the data from Cassandra, stores it in RAM, and also returns it to the application. If the application makes an update to data, Hazelcast automatically performs a write-through operation to update the data in Cassandra. No application code is necessary to synchronize the data between Hazelcast and Cassandra.
Use cases for a joint Hazelcast-Cassandra deployment range from caching of product catalogs for online stores, to low-latency write-through caches for user account information, to fast storage of transactional data records. In general, everything that needs to be persistent but quickly accessible is a great fit for a Hazelcast-Cassandra configuration.
Future Grid works with several Australian utility companies to automate the processing of sensor and smart meter data which crosses energy networks. Their customers are collecting approximately 3 billion data points per day. In terms of daily post processing, this equates to 20 billion records as each record has multiple, individual data points --a massive scaling challenge. To make the most of this information, utility organizations need a real-time data aggregation and processing solution which enables them to make complex real-time decisions.
When Future Grid first tried to solve this problem, it used traditional relational databases. However, it soon became apparent traditional databases couldn’t cope with huge volumes of data in real-time, main issue being that they can’t execute algorithms against incoming data fast enough. Future Grid then decided to build its own solution combining Hazelcast IMDG® with Apache Cassandra’s persistence data store capabilities.
Hazelcast Auto Database Integration (Auto DBI) is a highly efficient time-saving tool for working with databases. It streamlines the development of Hazelcast applications by generating a Java domain model representation (POJOs and more) of the database, allowing companies to be productive with Hazelcast in no time
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.