This tutorial walks you through the process of creating a Spring Cloud-based RESTful web service that uses Apache Ignite as a high-performance, in-memory database. The service is a containerized application that uses HashiCorp Consul for service discovery and interacts with an Apache Ignite cluster via Spring Data repository abstraction. For containerization, we use 🐋 Docker. Apache® Ignite™ is an in-memory computing platform for developing scalable, real-time applications. We can use Ignite as a database, a caching platform that accelerates data processing. For example, you can use Ignite to save data in high-performance storage and then stream and process the data. Configuration and Setup Configuring Consul Service Registry For your convenience, you can use Consul's official docker image (be sure to install Docker first). Start the Consul docker image:

Previous Entries

How to Fast Load Large Datasets into Apache Ignite by Using a Key-Value API Now, in-memory cache technology is becoming popular, motivating companies to experiment with distributed systems. The technology is advertised to be fast, and data-load speed is often critical for building a successful solution prototype. This blog post provides a technical tutorial on how to populate a distributed Apache Ignite cluster with values that originate from large relational tables. All… read more

Event Stream Processing with Apache Ignite - Part 3 Using the initial-query, listener, and remote-filter features of Ignite continuous queries to detect, filter, process, and dispatch real-time events (Note that this is Part 3 of a three-part series on Event Stream Processing. Here are the links for Part 1 and Part 2.) Real-time handling of streams of business events is a critical part of modern information-management systems, including online… read more

Event Stream Processing with Apache Ignite - Part 2 Building an Event Stream Processing Solution With Apache Ignite (Note that this is Part 2 of a three-part series on Event Stream Processing. Here are the links for Part 1 and Part 3.) In the first article of this three part series, we talked about streaming systems, the associated event paradigm inherent in streams and how these concepts are seen at different levels of abstraction, the… read more

Event Stream Processing with Apache Ignite - Part 1 Characteristics, Types & Components of an Event Stream Processing System (Note that this is Part 1 of a three-part series on Event Stream Processing. Here are the links for Part 2 and Part 3.) Like many technology-related concepts, Streams or “Event Streaming” is understood in many different contexts and in many different ways such that expectations for Event Stream Processing (ESP) vary… read more

Getting Started with Ignite Data Loading: Ignite Data Streamer Loading In this third article of the three-part series “Getting Started with Ignite Data Loading,” we continue to review data loading into Ignite tables and caches, but now we focus on using the Ignite Data Streamer facility to load data in large volume and with highest speed. Apache Ignite Data-Loading Facilities In the first article of this series, we discussed the facilities that are available to… read more

Getting Started with Ignite Data Loading: Ignite CacheStore Loading In this second article of the three-part “Getting Started with Ignite Data Loading” series, we continue our review of data loading into Ignite tables and caches. However, we now focus on Ignite CacheStore. CacheStore Load Facility Background Let’s review what was discussed about CacheStore in “Article 1: Loading Facilities.” The CacheStore interface of Ignite is the primary vehicle used in… read more

Getting Started with Ignite Data Loading: Loading Facilities With this first part of “Getting Started with Ignite Data Loading” series we will review facilities available to developers, analysts and administrators for data loading with Apache Ignite. The subsequent two parts will walk through the two core Apache Ignite data loading techniques, the CacheStore and the Ignite Data Streamer. We are going to review these facilities in relation to specific… read more

Architects’ Guide to Hadoop Data Lake Acceleration with GridGain Hadoop Data Lakes are an excellent choice for analytics and reporting at scale. Hadoop scales horizontally and cost-effectively and performs long-running operations spanning big data sets. GridGain, in its turn, enables real-time analytics across operational and historical data silos by offloading Hadoop for those operations that need to be completed in a matter of seconds or milliseconds. In… read more

Techniques to Follow If Your Apache Ignite Cluster Is Running Out of Memory Space Apache Ignite can scale horizontally to accommodate the data that your applications and services generate. If your in-memory cluster is about to run out of memory space, you can take advantage of horizontal scaling, which is one of Ignite’s foundational architectural capabilities. The “throw more resources into the cluster” approach is an often-heard piece of advice. However, in practice, most of… read more