Apache Ignite Documentation

GridGain Developer Hub - Apache Ignitetm

Welcome to the Apache Ignite developer hub run by GridGain. Here you'll find comprehensive guides and documentation to help you start working with Apache Ignite as quickly as possible, as well as support if you get stuck.

 

GridGain also provides Community Edition which is a distribution of Apache Ignite made available by GridGain. It is the fastest and easiest way to get started with Apache Ignite. The Community Edition is generally more stable than the Apache Ignite release available from the Apache Ignite website and may contain extra bug fixes and features that have not made it yet into the release on the Apache website.

 

Let's jump right in!

 

Documentation     Ask a Question     Download

 

Javadoc     Scaladoc     Examples

Maven Setup

Apache Ignite is composed of multiple maven modules.

Overview

If you are using Maven to manage dependencies of your project, you can import individual Ignite modules a la carte.

In the examples below, please replace ${ignite.version} with actual Apache Ignite version you are interested in.

Common Dependencies

Ignite data fabric comes with one mandatory dependency on ignite-core.jar.

<dependency>
    <groupId>org.apache.ignite</groupId>
    <artifactId>ignite-core</artifactId>
    <version>${ignite.version}</version>
</dependency>

However, in many cases, you may wish to have more dependencies, for example, if you want to use Spring configuration or SQL queries.

Here are the most commonly used optional modules:

  • ignite-indexing (optional, add if you need SQL indexing)
  • ignite-spring (optional, add if you plan to use Spring configuration)
<dependency>
    <groupId>org.apache.ignite</groupId>
    <artifactId>ignite-core</artifactId>
    <version>${ignite.version}</version>
</dependency>
<dependency>
    <groupId>org.apache.ignite</groupId>
    <artifactId>ignite-spring</artifactId>
    <version>${ignite.version}</version>
</dependency>
<dependency>
    <groupId>org.apache.ignite</groupId>
    <artifactId>ignite-indexing</artifactId>
    <version>${ignite.version}</version>
</dependency>

Importing Individual Modules A La Carte

You can import Ignite modules a la carte, one by one. The only required module is ignite-core, all others are optional. All optional modules can be imported just like the core module, but with different artifact IDs.

The following modules are available:

  • ignite-spring (for Spring-based configuration support)
  • ignite-indexing (for SQL querying and indexing)
  • ignite-geospatial (for geospatial indexing)
  • ignite-hibernate (for Hibernate integration)
  • ignite-web (for Web Sessions Clustering)
  • ignite-schedule (for Cron-based task scheduling)
  • ignite-logj4 (for Log4j logging)
  • ignite-jcl (for Apache Commons logging)
  • ignite-jta (for XA integration)
  • ignite-hadoop2-integration (Integration with HDFS 2.0)
  • ignite-rest-http (for HTTP REST messages)
  • ignite-scalar (for Ignite Scala API)
  • ignite-slf4j (for SLF4J logging)
  • ignite-ssh (for starting grid nodes on remote machines)
  • ignite-urideploy (for URI-based deployment)
  • ignite-aws (for seamless cluster discovery on AWS S3)
  • ignite-aop (for AOP-based grid-enabling)
  • ignite-visor-console (open source command line management and monitoring tool)

Artifact versions

Note that when importing several Ignite module, the version has to the same for all of them. E.g., if you're using ignite-core 1.7, all other modules must be imported with the version 1.7 as well.

LGPL Dependencies

The following Ignite modules have LGPL dependencies and therefore can't be deployed on Maven Central repository:

  • ignite-hibernate
  • ignite-geospatial
  • ignite-schedule

To use these modules, you will need to build them from sources manually and add them to your project. For example, to install ignite-hibernate into your local repository, run this command in the Ignite source package:

mvn clean install -DskipTests -Plgpl -pl modules/hibernate -am

3rd party repositories

GridGain provides its own Maven repository containing Apache Ignite LGPL artifacts such as ignite-hibernate.
Please note that artifacts located at GridGain Maven repository provided for convenience and are NOT official Apache Ignite artifacts.