<!--
 ▄▄▄       ██▓███   ▄▄▄       ▄████▄   ██░ ██ ▓█████     ██▓  ▄████  ███▄    █  ██▓▄▄▄█████▓▓█████
▒████▄    ▓██░  ██▒▒████▄    ▒██▀ ▀█  ▓██░ ██▒▓█   ▀    ▓██▒ ██▒ ▀█▒ ██ ▀█   █ ▓██▒▓  ██▒ ▓▒▓█   ▀
▒██  ▀█▄  ▓██░ ██▓▒▒██  ▀█▄  ▒▓█    ▄ ▒██▀▀██░▒███      ▒██▒▒██░▄▄▄░▓██  ▀█ ██▒▒██▒▒ ▓██░ ▒░▒███
░██▄▄▄▄██ ▒██▄█▓▒ ▒░██▄▄▄▄██ ▒▓▓▄ ▄██▒░▓█ ░██ ▒▓█  ▄    ░██░░▓█  ██▓▓██▒  ▐▌██▒░██░░ ▓██▓ ░ ▒▓█  ▄
 ▓█   ▓██▒▒██▒ ░  ░ ▓█   ▓██▒▒ ▓███▀ ░░▓█▒░██▓░▒████▒   ░██░░▒▓███▀▒▒██░   ▓██░░██░  ▒██▒ ░ ░▒████▒
 ▒▒   ▓▒█░▒▓▒░ ░  ░ ▒▒   ▓▒█░░ ░▒ ▒  ░ ▒ ░░▒░▒░░ ▒░ ░   ░▓   ░▒   ▒ ░ ▒░   ▒ ▒ ░▓    ▒ ░░   ░░ ▒░ ░
  ▒   ▒▒ ░░▒ ░       ▒   ▒▒ ░  ░  ▒    ▒ ░▒░ ░ ░ ░  ░    ▒ ░  ░   ░ ░ ░░   ░ ▒░ ▒ ░    ░     ░ ░  ░
  ░   ▒   ░░         ░   ▒   ░         ░  ░░ ░   ░       ▒ ░░ ░   ░    ░   ░ ░  ▒ ░  ░         ░
      ░  ░               ░  ░░ ░       ░  ░  ░   ░  ░    ░        ░          ░  ░              ░  ░
-->

<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied.  See the License for the
specific language governing permissions and limitations
under the License.
-->

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">

    <link rel="canonical" href="https://ignite.apache.org/download.html"/>

    <link rel="dns-prefetch" href="//ajax.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    
    <link rel="preload" as="style" href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700&display=swap" />
    <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700&display=swap" media="print" onload="this.media='all'">
    <noscript>
      <link href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;600;700&display=swap" rel="stylesheet">
    </noscript>
    
    <!-- Global site tag (gtag.js) - Google Analytics -->
    <script async src="https://www.googletagmanager.com/gtag/js?id=UA-61232409-1"></script>
    <script>
      window.dataLayer = window.dataLayer || [];
      function gtag(){dataLayer.push(arguments);}
      gtag('js', new Date());
    
      gtag('config', 'UA-61232409-1');
    </script>
    <style>/** do not delete the following styles. It fixes odds issues when using the critical css above in firefox */
      body {opacity: 0;}.fa{display: none;}</style>

<!-- Yandex.Metrika counter -->
<script type="text/javascript" >
    (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
    m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
    (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");

    ym(72949126, "init", {
        clickmap:true,
        trackLinks:true,
        accurateTrackBounce:true,
        webvisor:true
    });
  </script>
  <noscript><div><img src="https://mc.yandex.ru/watch/72949126" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
  <!-- /Yandex.Metrika counter -->

  <!-- LuckyOrange code -->
  <script type='text/javascript'>
    window.__lo_site_id = 284467;
  
    (function() {
      var wa = document.createElement('script'); wa.type = 'text/javascript'; wa.async = true;
      wa.src = 'https://d10lpsik1i8c69.cloudfront.net/w.js';
      var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(wa, s);
      })();
    </script>
    <!-- /LuckyOrange code -->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"/>
    <meta http-equiv="Pragma" content="no-cache"/>
    <meta http-equiv="Expires" content="0"/>
    <title>Downloads - Apache Ignite</title>


    <!-- begin include include of "/includes/styles.html" -->
    <!-- remember to copy this content to downloads.html --><style>@charset "UTF-8";
    :root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#055799;--secondary:#b02032;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--gray:#e9e9e9;--shadow-gray:#d5d5d5;--ignite-red:#f20025;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%}article,header,nav{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}h1,h2{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}ul{margin-top:0;margin-bottom:1rem}ul ul{margin-bottom:0}strong{font-weight:bolder}a{color:#055799;text-decoration:none;background-color:transparent}a:not([href]){color:inherit;text-decoration:none}img{vertical-align:middle;border-style:none}button{border-radius:0}button{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button{overflow:visible}button{text-transform:none}[type=button],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}h1,h2{margin-bottom:.5rem;font-weight:500;line-height:1.2}h1{font-size:2.5rem}h2{font-size:2rem}.img-fluid{max-width:100%;height:auto}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}@media (min-width:576px){.container{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;background-color:transparent;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem}.btn-secondary{color:#fff;background-color:#b02032;border-color:#b02032}.collapse:not(.show){display:none}.dropdown{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.nav-link{display:block;padding:.5rem 1rem}.navbar{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:.5rem 1rem}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (min-width:992px){.navbar-expand-lg{flex-flow:row nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}.d-flex{display:flex!important}.mb-3{margin-bottom:1rem!important}.p-2{padding:.5rem!important}.mr-auto{margin-right:auto!important}body{font-family:'Open Sans',sans-serif;font-size:14px;margin:0;padding:0;opacity:1}strong{font-weight:600}.fa-external-link-alt{color:#aaa}#header{position:sticky;top:0;z-index:2;box-shadow:0 8px 8px -10px #d5d5d5;background-color:#fff}#header #nav{padding:.5rem 0;margin-bottom:0!important}#header #nav .navbar-brand img{width:120px}#header #nav .navbar-nav{position:absolute;right:0}#header #nav .navbar-nav>li.nav-item{font-size:16px;width:130px}#header #nav .navbar-nav li.nav-item a{display:inline-block;padding-right:1.3em;padding-left:1.3em;color:#000}#header #nav .navbar-nav li.nav-item .btn-secondary{padding:.3rem 1.2rem .4rem!important;color:#fff}#header #nav .navbar-nav li.nav-item .dropdown-toggle:after{display:none}#header #nav .navbar-nav li.nav-item ul.dropdown-menu{padding:.5em 0 0 1.3em;box-shadow:0 5px 8px 0 #d5d5d5,0 -5px 8px 0 #d5d5d5;border-bottom:5px solid #f20025;border-radius:0}#header #nav .navbar-nav li.nav-item ul.dropdown-menu .dropdown-subtitle{font-weight:400;font-size:16px;margin-top:.6em;border-bottom:3px solid #e9e9e9;margin-bottom:.5em;padding-bottom:.5em}#header #nav .navbar-nav li.nav-item ul.dropdown-menu .dropdown-item{padding:0}#header #nav .navbar-nav li.nav-item ul.dropdown-menu .dropdown-item a{padding:.4em 1.5em .4em 1em;color:#000;font-size:14px;display:block}#header #nav .navbar-nav li.nav-item ul.dropdown-menu .dropdown-item:last-child{border-bottom:5px solid #b02032;padding-bottom:1em;margin-bottom:-5px}#header.shrink #nav .navbar-nav>li.nav-item{width:120px}@media (max-width:991.98px){#header #nav .navbar-nav{position:relative}#header #nav .navbar-nav li.nav-item a.btn{margin-left:1.3em}#header #nav .navbar-nav li.nav-item ul.dropdown-menu{border:0;box-shadow:none;margin-bottom:2rem;margin-left:2rem;border-left:5px solid #b02032}#header #nav .navbar-nav li.nav-item ul.dropdown-menu .dropdown-item:last-child{border-bottom:none}#header #nav .navbar-brand img{width:9rem}#header #nav .navbar-toggler-icon i{font-size:2rem}#header.shrink #nav .navbar-nav>li.nav-item{width:100%}}article{padding:0 0 80px;font-size:16px;line-height:2em;min-height:calc(100vh - 380px)}article header{background:-moz-linear-gradient(45deg,rgba(242,242,242,0) 91%,#0a5a9a 91%,#187ccc 100%);background:-webkit-linear-gradient(45deg,rgba(242,242,242,0) 91%,#0a5a9a 91%,#187ccc 100%);background:linear-gradient(45deg,rgba(242,242,242,0) 91%,#0a5a9a 91%,#187ccc 100%);background-color:#e9e9e9;box-shadow:0 14px 30px 10px #e9e9e9;padding:4rem 0 1rem;margin-bottom:5rem}article header h1{color:#000}article h1,article h2{font-size:36px;font-weight:300;text-transform:uppercase;margin-bottom:0}article h1 strong{font-weight:700;color:#055799}article h2{font-size:26px;margin-top:50px;margin-bottom:30px}article img.diagram-right{max-width:50%;float:right;margin:0 0 2rem 2rem;max-height:600px}@media (max-width:991.98px){article header{padding-top:3rem}article header h1{font-size:32px}}@media (max-width:767.98px){article img.diagram-right{max-width:100%;float:right;margin:1rem}}@media (max-width:575.98px){article header{margin-bottom:2rem;padding-top:2.5rem}article header h1{font-size:28px}article img.diagram-right{float:none;margin:1rem auto;max-width:100%!important}}.fa,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-bars:before{content:"\f0c9"}.fa-external-link-alt:before{content:"\f35d"}.fa-github:before{content:"\f09b"}.fa,.fas{font-family:"Font Awesome 5 Free"}.fa,.fas{font-weight:900}body {opacity: 0;}.fa{display: none;}</style>

    <!-- ***NOTICE***
         As of 2015-08-31, SSI does not work with the "virtual"
         downloads.cgi hack. Therefore, we're including the banners,
         navbars and notices explicitly. -->

</head>
<body class="line-numbers">
<!-- begin include of "/includes/header.html" -->


<header id="header" class="affix header sticky-top shrink" data-spy="affix" data-offset-top="0">
    <div id="promotion-bar" style="background-color: #333333; padding: 8px;">
        <p style="font-size: 14px; line-height: 1.4em; font-weight: 600; padding: 0; margin: 0; color: #f0f0f0; text-align: center;">
            April 13, 2021: 
              <a href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/events/276693067/"
                 rel="noopener" target="_blank"
                 onclick="gtag('event',  'banner_click', { 'event_category': 'ignite_tech_talk', 'event_label': 'ignite-jboss-drools-implement-complex-event-processing'});"
                 style="color: #FCB903;">
                 Using Ignite and JBoss Drools to Implement a Complex Event Processing Solution
              </a>
          </p>
    </div>
    
    <div class="container">
        <nav id="nav" class=" navbar navbar-expand-lg d-flex bd-highlight mb-3 " role="navigation">
            <a href="/" class="mr-auto p-2 bd-highlight navbar-brand" aria-label="Ignite Homepage"><img
                    src="/images/ignite_logo_full.svg" alt="Apache Ignite Logo" width="128" height="53"></a>


            <button aria-label="Main Menu" type="button" class="navbar-toggler" data-toggle="collapse"
                    data-target="#navbar">
                        <span class="navbar-toggler-icon"><i class="fas fa-bars" aria-hidden="true"></i>
                        </span>
            </button>

            <div class="collapse navbar-collapse p-2 bd-highlight" id="navbar">
                <ul class="navbar-nav ">
                    <li class="nav-item dropdown" style="width: 90px;">
                        <a class="nav-link dropdown-toggle" role="button" data-toggle="dropdown" aria-haspopup="true"
                           aira-expanded="false" id="navbarDocs" aria-label="Docs">Docs</a>
                        <ul class="dropdown-menu" role="menu">
                            <li class="dropdown-item">
                                <a href="/docs/latest"
                                   onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_docs', 'event_label': 'technical_docs'});">
                                    Developer's Guide
                                </a>
                            </li>

                            <li class="dropdown-item">
                                <a href="/releases/latest/javadoc/index.html"
                                   onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_docs', 'event_label': 'java_api'});">
                                    Java API
                                </a>
                            </li>

                            <li class="dropdown-item">
                                <a href="/releases/latest/dotnetdoc/api/"
                                   onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_docs', 'event_label': 'dotnet_apis'});">
                                    .NET API
                                </a>
                            </li>

                            <li class="dropdown-item">
                                <a href="/releases/latest/cppdoc/index.html"
                                   onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_docs', 'event_label': 'cplusplus_apis'});">
                                    C++ API
                                </a>
                            </li>

                            <li class="dropdown-item"><a
                                    href="/releases/latest/scaladoc/scalar/index.html#org.apache.ignite.scalar.scalar$"
                                    onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_docs', 'event_label': 'scala_apis'});">
                                Scala API
                            </a>
                            </li>
                        </ul>
                    </li>

                    <li class="nav-item dropdown">
                        <a class="nav-link dropdown-toggle" role="button" data-toggle="dropdown" aria-haspopup="true"
                           aira-expanded="false" aria-label="Features" id="navbarFeatures">Features</a>
                        <ul class="dropdown-menu" aria-labelledby="navbarFeatures">
                            <li class="dropdown-subtitle">Features</li>

                            <li class="dropdown-item"><a href="/arch/multi-tier-storage.html"
                                                         aria-label="Memory Centric Storage"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_features', 'event_label': 'memory_centric'});">
                                Multi-Tier Storage</a>
                            </li>
                            <li class="dropdown-item"><a href="/arch/native-persistence.html"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_features', 'event_label': 'persistence'});">
                                Native Persistence</a>
                            </li>
                            <li class="dropdown-item"><a href="/features/sql.html" aria-label="Features"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_features', 'event_label': 'distributed_sql'});">
                                Distributed SQL</a>
                            </li>
                            <li class="dropdown-item"><a href="/use-cases/key-value-store.html" aria-label="DataGrid"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_features', 'event_label': 'distributed_key_value'});">
                                Distributed Key-Value</a>
                            </li>
                            <li class="dropdown-item"><a href="/features/acid-transactions.html"
                                                         aria-label="Transactions"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_features', 'event_label': 'acid_transactions'});">
                                ACID Transactions</a>
                            </li>
                            <li class="dropdown-item"><a href="/features/collocated-processing.html"
                                                         aria-label="Collocated Processing"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_features', 'event_label': 'collocated_processing'});">
                                Co-located Processing</a>
                            </li>
                            <li class="dropdown-item"><a href="/features/machinelearning.html"
                                                         aria-label="Machine Learning"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_features', 'event_label': 'machine_learning'});">
                                Machine Learning</a>
                            </li>
                            <li class="dropdown-item"><a href="/features.html"><i>More Features</i></a></li>


                            <!-- Ignite tooling. -->
                            <li role="presentation" class="dropdown-subtitle">Tooling</li>
                            <li class="dropdown-item"><a href="/features/management-and-monitoring.html"
                                                         aria-label="Ignite Management & Monitoring"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_features', 'event_label': 'ignite_manage_monitor'});">
                                Management & Monitoring</a>
                            </li>
                        </ul>
                    </li>


                    <li class="nav-item dropdown">
                        <a class="nav-link dropdown-toggle" role="button" data-toggle="dropdown" aria-haspopup="true"
                           aira-expanded="false" id="navbarUseCases" aria-label="Use Cases">Use Cases</a>
                        <ul class="dropdown-menu" role="menu">
                            <li class="dropdown-subtitle" role="presentation">Caching & Database</li>
                            <li class="dropdown-item"><a href="/use-cases/in-memory-cache.html"
                                                         aria-label="In-Memory Cache"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_usecases', 'event_label': 'in_memory_cache'});">
                                In-Memory Cache</a>
                            </li>
                            <li class="dropdown-item"><a href="/use-cases/in-memory-data-grid.html"
                                                         aria-label="In-Memory Data Grid"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_usecases', 'event_label': 'data_grid'});">
                                In-Memory Data Grid</a>
                            </li>
                            <li class="dropdown-item"><a href="/use-cases/in-memory-database.html"
                                                         aria-label="In-Memory Database"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_usecases', 'event_label': 'distributed-database'});">
                                In-Memory Database</a>
                            </li>
                            <li class="dropdown-item"><a href="/use-cases/key-value-store.html"
                                                         aria-label="Key-Value Store"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_usecases', 'event_label': 'key_value_store'});">
                                Key-Value Store</a>
                            </li>


                            <li class="dropdown-subtitle" role="presentation">Data & Compute Hubs</li>
                            <li class="dropdown-item"><a href="/use-cases/high-performance-computing.html"
                                                         aria-label="High-Performance Computing"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_usecases', 'event_label': 'massive_parallel_processing'});">
                                High-Performance Computing</a>
                            </li>
                            <li class="dropdown-item"><a href="/use-cases/digital-integration-hub.html"
                                                         aria-label="Digital Integration Hub"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_usecases', 'event_label': 'digital_integration_hub'});">
                                Digital Integration Hub</a>
                            </li>


                            <li class="dropdown-subtitle" role="presentation">Faster Analytics</li>
                            <li class="dropdown-item"><a href="/use-cases/spark-acceleration.html"
                                                         aria-label="Apache Spark Acceleration"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_usecases', 'event_label': 'apache_spark_acceleration'});">
                                Apache Spark Acceleration</a>
                            </li>
                            <li class="dropdown-item"><a href="/use-cases/hadoop-acceleration.html"
                                                         aria-label="Hadoop Acceleration"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_usecases', 'event_label': 'hadoop_acceleration'});">
                                Apache Hadoop Acceleration</a>
                            </li>


                            <li class="dropdown-subtitle" role="presentation">Ignite in Production</li>
                            <li class="dropdown-item"><a href="/use-cases/provenusecases.html"
                                                         aria-label="Powered by Ignite"
                                                         onclick="gtag('event',  'menu_click', { 'event_category': 'apache_ignite_usecases', 'event_label': 'proven_usecases'});">
                                Powered by Ignite</a>
                            </li>
                        </ul>
                    </li>
                    <li class="nav-item dropdown">
                        <a class="nav-link dropdown-toggle" role="button" data-toggle="dropdown" aria-haspopup="true"
                           aira-expanded="false" aria-label="Resources" id="navbarResources">Learn More</a>
                        <ul class="dropdown-menu" role="menu">
                            <li class="dropdown-subtitle" role="presentation">Resources</li>

                            <li class="dropdown-item"><a href="https://cwiki.apache.org/confluence/display/IGNITE/"
                                                         target="_blank" rel="noopener">
                                Ignite Wiki <i class="fas fa-external-link-alt" style="padding-left:5px;"></i></a></li>
                            <li class="dropdown-item"><a href="/screencasts.html">Videos</a></li>
                            <li class="dropdown-item"><a href="https://github.com/apache/ignite/tree/master/examples"
                                                         target="_blank" rel="noopener">
                                Examples <i class="fas fa-external-link-alt" style="padding-left:5px;"></i></a></li>
                            <li class="dropdown-item"><a href="https://www.shamimbhuiyan.com/ignitebook" target="_blank"
                                                         rel="noopener">Ignite Book<i
                                    class="fas fa-external-link-alt" style="padding-left:5px;"></i></a></li>

                            <li class="dropdown-subtitle" role="presentation">Events</li>
                            <li class="dropdown-item"><a href="/events.html">Events Schedule</a></li>
                            <li class="dropdown-item"><a href="/meetup-groups.html">Ignite Meetups</a></li>

                            <li class="dropdown-subtitle" role="presentation">FAQ & Assets</li>
                            <li class="dropdown-item">
                                <a href="/in-memory-computing.html" aria-label="whats-imc"
                                   onclick="gtag('event', 'menu_click', { 'event_category': 'whats-imc', 'event_label': 'whats-imc'});">
                                    What's In-Memory Computing?</a>
                            </li>
                            <li class="dropdown-item">
                                <a href="/whatisignite.html" aria-label="whats-ignite"
                                   onclick="gtag('event',  'menu_click', { 'event_category': 'whatisignite', 'event_label': 'whatisignite_page'});">
                                    What's Apache Ignite?</a>
                            </li>
                            <li class="dropdown-item">
                                <a href="https://github.com/apache/ignite-website/tree/master/images/png-diagrams"
                                   aria-label="ignite-assets"
                                   onclick="gtag('event',  'menu_click', { 'event_category': 'ignite_assets', 'event_label': 'ignite_assets'});"
                                   rel="noopener" target="_blank">
                                    Ignite Assets<i
                                        class="fas fa-external-link-alt" style="padding-left:5px;"></i></a>
                            </li>
                        </ul>
                    </li>
                    <li class="nav-item dropdown" style="margin-right: 2rem;">
                        <a class="nav-link dropdown-toggle" role="button" data-toggle="dropdown" aria-haspopup="true"
                           aira-expanded="false" aria-label="Community" id="navbarCommunity">Community</a>
                        <ul class="dropdown-menu" role="menu">
                            <li class="dropdown-subtitle" role="presentation">Questions & Issues</li>
                            <li class="dropdown-item"><a href="/community/resources.html">Mailing Lists & Forums</a>
                            </li>
                            <li class="dropdown-item"><a href="https://issues.apache.org/jira/browse/IGNITE"
                                                         target="_blank" rel="noopener">
                                Ignite Jira <i class="fas fa-external-link-alt" style="padding-left:5px;"></i></a></li>
                            <li class="dropdown-item">
                                <a href="https://cwiki.apache.org/confluence/display/IGNITE/Third+Party+Support+and+Employment"
                                   target="_blank" rel="noopener">
                                    Production Support <i class="fas fa-external-link-alt"
                                                          style="padding-left:5px;"></i></a>
                            </li>

                            <li class="dropdown-subtitle" role="presentation">Contributions</li>
                            <li class="dropdown-item"><a href="/community/contribute.html">Start Contributing</a></li>
                            <li class="dropdown-item"><a href="/community/resources.html#people">Committers and PMC</a>
                            </li>
                            <li class="dropdown-item"><a href="/community/resources.html#git">GitHub Repo <i
                                    class="fa fa-github fa-lg" style="padding-left:5px;"></i></a></li>

                            </li>
                        </ul>
                    </li>


                    <li class="nav-item">
                        <a class="btn btn-secondary" href="/download.cgi">Download</a>
                    </li>
                </ul>
            </div>
        </nav>
    </div>
</header>



<!-- end include of "/includes/header.html" -->

<!-- START OF MAIN SITE BODY -->
<article>
    <header>
        <div class="container">

            <h1>Apache Ignite <strong>Downloads</strong></h1>
        </div>
    </header>
    <div class="container" id="downloads-page">

        <!-- Update the following template variables for every release -->
        [define distdir]ignite[end]
        [define disturl]https://www.apache.org/dist[end]

        <p>Download Apache Ignite&reg; and install in your environment. Select from one of the available options.</p>

        <section id="toc" class="page-section">
            <div class="jumbotron jumbotron-fluid">
                <div class="container">
                    <div class="row">
                        <div class="col-sm-6">
                            <ul>
                                <li><a href="#sources">Source Releases</a></li>
                                <li><a href="#binaries">Binary Releases</a></li>
                                <li><a href="#build-source">Building the Binaries</a></li>
                                <li><a href="#docker">Docker and Cloud Images</a></li>
                            </ul>
                        </div>
                        <div class="col-sm-6">
                            <ul>
                                <li><a href="#git-repository">Git Repository</a></li>
                                <li><a href="#extensions">Extensions</a></li>
                                <li><a href="#3rdparty">3<sup>rd</sup> Party Binaries</a></li>
                            </ul>
                        </div>
                    </div>
                    <p>
                        To get LGPL dependencies (e.g. Hibernate L2 Cache),
                        see <a href="#build-source">Building The Binaries</a>.</p>
                </div>
            </div>
        </section>

        <section id="sources" class="page-section">
            <h2>Source Releases</h2>

            <table class="table table-bordered table-striped">
                <thead>
                <tr>
                    <th>Version</th>
                    <th>Docs</th>
                    <th>Release Notes</th>
                    <th>Date</th>
                    <th>Source</th>
                </tr>
                </thead>
                <tbody>
                <tr>
                    <td style="white-space: nowrap;">2.10.0 (latest)</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.10.0/javadoc/">javadoc</a>
                    </td>

                    <td style="white-space: nowrap;"><a
                            href="https://ignite.apache.org/releases/2.10.0/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2021-03-15</td>
                    <td style="white-space: nowrap;">
                        <a id="apache_ignite_source_download"
                           href="[preferred]/[distdir]/2.10.0/apache-ignite-2.10.0-src.zip"
                           onclick="gtag('event',  'download', {'event_category': 'apache_ignite_source_download', 'event_label': 'apache-ignite-2.10.0'});">apache-ignite-2.10.0-src.zip</a>

                        (<a href="https://downloads.apache.org/ignite/2.10.0/apache-ignite-2.10.0-src.zip.asc">pgp</a>,
                        <a href="https://downloads.apache.org/ignite/2.10.0/apache-ignite-2.10.0-src.zip.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">2.9.1</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.9.1/javadoc/">javadoc</a>
                    </td>

                    <td style="white-space: nowrap;"><a
                            href="https://ignite.apache.org/releases/2.9.1/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2020-12-28</td>
                    <td style="white-space: nowrap;">
                        <a id="apache_ignite_source_download"
                           href="https://archive.apache.org/dist/ignite/2.9.1/apache-ignite-2.9.1-src.zip"
                           onclick="gtag('event',  'download', {'event_category': 'apache_ignite_source_download', 'event_label': 'apache-ignite-2.9.1'});">apache-ignite-2.9.1-src.zip</a>

                        (<a href="https://archive.apache.org/dist/ignite/2.9.1/apache-ignite-2.9.1-src.zip.asc">pgp</a>,
                        <a href="https://archive.apache.org/dist/ignite/2.9.1/apache-ignite-2.9.1-src.zip.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">3.0.0 (alpha)</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/3.0.0-alpha">guide</a>
                    </td>

                    <td style="white-space: nowrap;">&nbsp;</td>
                    <td style="white-space: nowrap;">2021-01-11</td>
                    <td style="white-space: nowrap;">
                        <a id="apache_ignite_source_download"
                           href="[preferred]/[distdir]/3.0.0-alpha1/apache-ignite-3.0.0-alpha1-src.zip"
                           onclick="gtag('event',  'download', {'event_category': 'apache_ignite_source_download', 'event_label': 'apache-ignite-3.0.0-alpha1'});">apache-ignite-3.0.0-alpha1-src.zip</a>

                        (<a href="https://downloads.apache.org/ignite/3.0.0-alpha1/apache-ignite-3.0.0-alpha1-src.zip.asc">pgp</a>,
                        <a href="https://downloads.apache.org/ignite/3.0.0-alpha1/apache-ignite-3.0.0-alpha1-src.zip.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">2.9.0</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.9.0/javadoc/">javadoc</a>
                    </td>

                    <td style="white-space: nowrap;"><a
                            href="https://ignite.apache.org/releases/2.9.0/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2020-10-21</td>
                    <td style="white-space: nowrap;">
                        <a id="apache_ignite_source_download"
                           href="https://archive.apache.org/dist/ignite/2.9.0/apache-ignite-2.9.0-src.zip"
                           onclick="gtag('event',  'download', {'event_category': 'apache_ignite_source_download', 'event_label': 'apache-ignite-2.9.0'});">apache-ignite-2.9.0-src.zip</a>

                        (<a href="https://archive.apache.org/dist/ignite/2.9.0/apache-ignite-2.9.0-src.zip.asc">pgp</a>,
                        <a href="https://archive.apache.org/dist/ignite/2.9.0/apache-ignite-2.9.0-src.zip.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">2.8.1</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.8.1/javadoc/">javadoc</a>
                    </td>

                    <td style="white-space: nowrap;"><a
                            href="https://ignite.apache.org/releases/2.8.1/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2020-05-27</td>
                    <td style="white-space: nowrap;">
                        <a id="apache_ignite_source_download"
                           href="https://archive.apache.org/dist/ignite/2.8.1/apache-ignite-2.8.1-src.zip"
                           onclick="gtag('event',  'download', {'event_category': 'apache_ignite_source_download', 'event_label': 'apache-ignite-2.8.1'});">apache-ignite-2.8.1-src.zip</a>

                        (<a href="https://archive.apache.org/dist/ignite/2.8.1/apache-ignite-2.8.1-src.zip.asc">pgp</a>,
                        <a href="https://archive.apache.org/dist/ignite/2.8.1/apache-ignite-2.8.1-src.zip.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">2.8.0</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.8.0/javadoc/">javadoc</a>,
                        <a href="/releases/2.8.0/scaladoc/scalar/">scaladoc</a>
                    </td>

                    <td style="white-space: nowrap;"><a
                            href="https://ignite.apache.org/releases/2.8.0/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2020-03-03</td>
                    <td style="white-space: nowrap;">
                        <a id="apache_ignite_source_download"
                           href="https://archive.apache.org/dist/ignite/2.8.0/apache-ignite-2.8.0-src.zip"
                           onclick="gtag('event',  'download', {'event_category': 'apache_ignite_source_download', 'event_label': 'apache-ignite-2.8.0'});">apache-ignite-2.8.0-src.zip</a>

                        (<a href="https://archive.apache.org/dist/ignite/2.8.0/apache-ignite-2.8.0-src.zip.asc">pgp</a>,
                        <a href="https://archive.apache.org/dist/ignite/2.8.0/apache-ignite-2.8.0-src.zip.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">2.7.6</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.7.6/javadoc/">javadoc</a>,
                        <a href="/releases/2.7.6/scaladoc/scalar/">scaladoc</a>
                    </td>

                    <td style="white-space: nowrap;"><a
                            href="https://ignite.apache.org/releases/2.7.6/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2019-09-19</td>
                    <td style="white-space: nowrap;">
                        <a id="apache_ignite_source_download"
                           href="https://archive.apache.org/dist/ignite/2.7.6/apache-ignite-2.7.6-src.zip"
                           onclick="gtag('event',  'download', {'event_category': 'apache_ignite_source_download', 'event_label': 'apache-ignite-2.7.6'});">apache-ignite-2.7.6-src.zip</a>

                        (<a href="https://archive.apache.org/dist/ignite/2.7.6/apache-ignite-2.7.6-src.zip.asc">pgp</a>,
                        <a href="https://archive.apache.org/dist/ignite/2.7.6/apache-ignite-2.7.6-src.zip.sha512">sha512</a>)
                    </td>
                </tr>
                </tbody>
            </table>
            <p>
                If you are looking for an earlier version of Apache Ignite, please find it in the
                <a href="https://archive.apache.org/dist/ignite">archive</a>.
            </p>
            <p>
                If you encounter a problem with the selected mirror, please choose another one. If primary mirrors
                are not reachable, switch to backup servers added to the end of the list.
            </p>
            <form action="/download.cgi" method="get" id="SelectMirror">
                Selected mirror:
                <select name="Preferred" onchange="submit()">
                    [if-any http]
                    [for http]
                    <option value="[http]" [is http preferred] selected="selected" [end]>[http]</option>
                    [end]
                    [end]
                    [if-any ftp]
                    [for ftp]
                    <option value="[ftp]" [is ftp preferred] selected="selected" [end]>[ftp]</option>
                    [end]
                    [end]
                    [if-any backup]
                    [for backup]
                    <option value="[backup]" [is backup preferred] selected="selected" [end]>[backup] (backup)</option>
                    [end]
                    [end]
                </select>
                <input type="submit" value="Change"/>
            </form>
        </section>

        <section id="binaries" class="page-section">
            <h2>Binary Releases</h2>
            <p>
                Binary release packages are provided for your convenience and not considered as primary
                release artifacts of the ASF. It's recommended to verify a release downloadable, following
                <a href="#verification">this guidelines</a>. For more information about Apache release policy see
                <a href="http://www.apache.org/dev/release.html#what" target="_blank">What is a Release?</a>
            </p>
            <table class="table table-bordered table-striped">
                <thead>
                <tr>
                    <th>Version</th>
                    <th>Docs</th>
                    <th>Release Notes</th>
                    <th>Date</th>
                    <th>Binary</th>
                </tr>
                </thead>
                <tbody>
                <tr>
                    <td style="white-space: nowrap;">2.10.0 (latest)</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.10.0/javadoc/">javadoc</a>
                    </td>
                    <td style="white-space: nowrap;"><a
                            href="/releases/2.10.0/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2021-03-15</td>
                    <td style="white-space: nowrap;">
                        <a
                                id="apache_ignite_binary_fabric_download"
                                href="[preferred]/[distdir]/2.10.0/apache-ignite-2.10.0-bin.zip"
                                onclick="gtag('event',  'download', {'event_category': 'apache_ignite_fabric_download', 'event_label': 'apache-ignite-2.10.0'});">apache-ignite-2.10.0-bin.zip</a>

                        (<a href="https://downloads.apache.org/ignite/2.10.0/apache-ignite-2.10.0-bin.zip.asc">pgp</a>,
                        <a href="https://downloads.apache.org/ignite/2.10.0/apache-ignite-2.10.0-bin.zip.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">2.9.1</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.9.1/javadoc/">javadoc</a>
                    </td>
                    <td style="white-space: nowrap;"><a
                            href="/releases/2.9.1/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2020-12-28</td>
                    <td style="white-space: nowrap;">
                        <a
                                id="apache_ignite_binary_fabric_download"
                                href="https://archive.apache.org/dist/ignite/2.9.1/apache-ignite-2.9.1-bin.zip"
                                onclick="gtag('event',  'download', {'event_category': 'apache_ignite_fabric_download', 'event_label': 'apache-ignite-2.9.1'});">apache-ignite-2.9.1-bin.zip</a>

                        (<a href="https://archive.apache.org/dist/ignite/2.9.1/apache-ignite-2.9.1-bin.zip.asc">pgp</a>,
                        <a href="https://archive.apache.org/dist/ignite/2.9.1/apache-ignite-2.9.1-bin.zip.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">3.0.0 (alpha)</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/3.0.0-alpha">guide</a>
                    </td>
                    <td style="white-space: nowrap;">&nbsp;</td>
                    <td style="white-space: nowrap;">2021-01-11</td>
                    <td style="white-space: nowrap;">
                        Unix: <a download
                                id="apache_ignite_binary_fabric_download"
                                href="[preferred]/[distdir]/3.0.0-alpha1/ignite"
                                onclick="gtag('event',  'download', {'event_category': 'apache_ignite_fabric_download', 'event_label': 'apache-ignite-3.0.0-alpha1'});">ignite</a>

                        (<a href="https://downloads.apache.org/ignite/3.0.0-alpha1/ignite.asc">pgp</a>,
                        <a href="https://downloads.apache.org/ignite/3.0.0-alpha1/ignite.sha512">sha512</a>)
                        <br>
                        Windows: <a
                                id="apache_ignite_binary_fabric_download"
                                href="[preferred]/[distdir]/3.0.0-alpha1/ignite.exe"
                                onclick="gtag('event',  'download', {'event_category': 'apache_ignite_fabric_download', 'event_label': 'apache-ignite-3.0.0-alpha1'});">ignite.exe</a>

                        (<a href="https://downloads.apache.org/ignite/3.0.0-alpha1/ignite.exe.asc">pgp</a>,
                        <a href="https://downloads.apache.org/ignite/3.0.0-alpha1/ignite.exe.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">2.9.0</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.9.0/javadoc/">javadoc</a>
                    </td>
                    <td style="white-space: nowrap;"><a
                            href="/releases/2.9.0/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2020-10-21</td>
                    <td style="white-space: nowrap;">
                        <a
                                id="apache_ignite_binary_fabric_download"
                                href="https://archive.apache.org/dist/ignite/2.9.0/apache-ignite-2.9.0-bin.zip"
                                onclick="gtag('event',  'download', {'event_category': 'apache_ignite_fabric_download', 'event_label': 'apache-ignite-2.9.0'});">apache-ignite-2.9.0-bin.zip</a>

                        (<a href="https://archive.apache.org/dist/ignite/2.9.0/apache-ignite-2.9.0-bin.zip.asc">pgp</a>,
                        <a href="https://archive.apache.org/dist/ignite/2.9.0/apache-ignite-2.9.0-bin.zip.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">2.8.1</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.8.1/javadoc/">javadoc</a>
                    </td>
                    <td style="white-space: nowrap;"><a
                            href="/releases/2.8.1/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2020-05-27</td>
                    <td style="white-space: nowrap;">
                        <a
                                id="apache_ignite_binary_fabric_download"
                                href="https://archive.apache.org/dist/ignite/2.8.1/apache-ignite-2.8.1-bin.zip"
                                onclick="gtag('event',  'download', {'event_category': 'apache_ignite_fabric_download', 'event_label': 'apache-ignite-2.8.1'});">apache-ignite-2.8.1-bin.zip</a>

                        (<a href="https://archive.apache.org/dist/ignite/2.8.1/apache-ignite-2.8.1-bin.zip.asc">pgp</a>,
                        <a href="https://archive.apache.org/dist/ignite/2.8.1/apache-ignite-2.8.1-bin.zip.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">2.8.0</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.8.0/javadoc/">javadoc</a>,
                        <a href="/releases/2.8.0/scaladoc/scalar/">scaladoc</a>
                    </td>
                    <td style="white-space: nowrap;"><a
                            href="/releases/2.8.0/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2020-03-03</td>
                    <td style="white-space: nowrap;">
                        <a
                                id="apache_ignite_binary_fabric_download"
                                href="https://archive.apache.org/dist/ignite/2.8.0/apache-ignite-2.8.0-bin.zip"
                                onclick="gtag('event',  'download', {'event_category': 'apache_ignite_fabric_download', 'event_label': 'apache-ignite-2.8.0'});">apache-ignite-2.8.0-bin.zip</a>

                        (<a href="https://archive.apache.org/dist/ignite/2.8.0/apache-ignite-2.8.0-bin.zip.asc">pgp</a>,
                        <a href="https://archive.apache.org/dist/ignite/2.8.0/apache-ignite-2.8.0-bin.zip.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">2.7.6</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.7.6/javadoc/">javadoc</a>,
                        <a href="/releases/2.7.6/scaladoc/scalar/">scaladoc</a>
                    </td>
                    <td style="white-space: nowrap;"><a
                            href="/releases/2.7.6/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2019-09-19</td>
                    <td style="white-space: nowrap;">
                        <a
                                id="apache_ignite_binary_fabric_download"
                                href="https://archive.apache.org/dist/ignite/2.7.6/apache-ignite-2.7.6-bin.zip"
                                onclick="gtag('event',  'download', {'event_category': 'apache_ignite_fabric_download', 'event_label': 'apache-ignite-2.7.6'});">apache-ignite-2.7.6-bin.zip</a>

                        (<a href="https://archive.apache.org/dist/ignite/2.7.6/apache-ignite-2.7.6-bin.zip.asc">pgp</a>,
                        <a href="https://archive.apache.org/dist/ignite/2.7.6/apache-ignite-2.7.6-bin.zip.sha512">sha512</a>)
                    </td>
                </tr>
                </tbody>
            </table>
            <p>If you are looking for previous release versions of Apache Ignite, please have a look in the
                <a href="https://archive.apache.org/dist/ignite">archive</a>.
            </p>

            <h3>Slim binary releases</h3>
            <table class="table table-bordered table-striped">
                <thead>
                <tr>
                    <th>Version</th>
                    <th>Docs</th>
                    <th>Release Notes</th>
                    <th>Date</th>
                    <th>Binary</th>
                </tr>
                </thead>
                <tbody>
                <tr>
                    <td style="white-space: nowrap;">2.10.0 (latest)</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.10.0/javadoc/">javadoc</a>
                    </td>
                    <td style="white-space: nowrap;"><a
                            href="/releases/2.10.0/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2021-03-15</td>
                    <td style="white-space: nowrap;">
                        <a
                                id="apache_ignite_slim_binary_fabric_download"
                                href="[preferred]/[distdir]/2.10.0/apache-ignite-slim-2.10.0-bin.zip"
                                onclick="gtag('event',  'download', {'event_category': 'apache_ignite_fabric_download', 'event_label': 'apache-ignite-slim-2.10.0'});">apache-ignite-slim-2.10.0-bin.zip</a>

                        (<a href="https://downloads.apache.org/ignite/2.10.0/apache-ignite-slim-2.10.0-bin.zip.asc">pgp</a>,
                        <a href="https://downloads.apache.org/ignite/2.10.0/apache-ignite-slim-2.10.0-bin.zip.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">2.9.1 (latest)</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.9.1/javadoc/">javadoc</a>
                    </td>
                    <td style="white-space: nowrap;"><a
                            href="/releases/2.9.1/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2020-12-28</td>
                    <td style="white-space: nowrap;">
                        <a
                                id="apache_ignite_slim_binary_fabric_download"
                                href="https://archive.apache.org/dist/ignite/2.9.1/apache-ignite-slim-2.9.1-bin.zip"
                                onclick="gtag('event',  'download', {'event_category': 'apache_ignite_fabric_download', 'event_label': 'apache-ignite-slim-2.9.1'});">apache-ignite-slim-2.9.1-bin.zip</a>

                        (<a href="https://archive.apache.org/dist/ignite/2.9.1/apache-ignite-slim-2.9.1-bin.zip.asc">pgp</a>,
                        <a href="https://archive.apache.org/dist/ignite/2.9.1/apache-ignite-slim-2.9.1-bin.zip.sha512">sha512</a>)
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">2.9.0</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest">guide</a>,
                        <a href="/releases/2.9.1/javadoc/">javadoc</a>
                    </td>
                    <td style="white-space: nowrap;"><a
                            href="/releases/2.9.1/release_notes.html">release notes</a></td>
                    <td style="white-space: nowrap;">2020-10-21</td>
                    <td style="white-space: nowrap;">
                        <a
                                id="apache_ignite_slim_binary_fabric_download"
                                href="https://archive.apache.org/dist/ignite/2.9.0/apache-ignite-slim-2.9.0-bin.zip"
                                onclick="gtag('event',  'download', {'event_category': 'apache_ignite_fabric_download', 'event_label': 'apache-ignite-slim-2.9.0'});">apache-ignite-slim-2.9.0-bin.zip</a>

                        (<a href="https://archive.apache.org/dist/ignite/2.9.0/apache-ignite-slim-2.9.0-bin.zip.asc">pgp</a>,
                        <a href="https://archive.apache.org/dist/ignite/2.9.0/apache-ignite-slim-2.9.0-bin.zip.sha512">sha512</a>)
                    </td>
                </tr>
                </tbody>
            </table>
        </section> <!-- downloads -->

        <section id="docker" class="page-section">
            <h2>Docker and Cloud Images</h2>
            <table class="table table-bordered table-striped">
                <thead>
                <tr>
                    <th>Name</th>
                    <th>Docs</th>
                    <th>Date</th>
                    <th>URL</th>
                </tr>
                </thead>
                <tbody>
                <tr>
                    <td style="white-space: nowrap;">Docker Image</td>
                    <td style="white-space: nowrap;">
                        <a href="/docs/latest/installation/installing-using-docker">guide</a>
                    </td>
                    <td style="white-space: nowrap;">2020-03-03</td>
                    <td style="white-space: nowrap;">
                        <a id="docker_repo_download"
                           href="https://hub.docker.com/r/apacheignite/ignite/tags/"
                           onclick="gtag('event',  'download', {'event_category': 'docker_repo_download', 'event_label': 'docker_repo_download'});">https://hub.docker.com/r/apacheignite/ignite/tags</a>
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">Amazon Image</td>
                    <td style="white-space: nowrap;">
                        <a href="https://apacheignite.readme.io/docs/aws-deployment">guide</a>
                    </td>
                    <td style="white-space: nowrap;">2018-07-16</td>
                    <td style="white-space: nowrap;">
                        <a id="aws_image_west_download"
                           href="https://console.aws.amazon.com/ec2/home?region=us-west-1#launchAmi=ami-9cdbb3fc"
                           onclick="gtag('event',  'download', {'event_category': 'aws_image_west_download', 'event_label': 'aws_image_west_download'});">https://console.aws.amazon.com/ec2/home?region=us-west-1#launchAmi=ami-9cdbb3fc</a>
                        </br>
                        <a id="aws_image_east_download"
                           href="https://console.aws.amazon.com/ec2/home?region=us-east-1#launchAmi=ami-ce82caa4"
                           onclick="gtag('event',  'download', {'event_category': 'aws_image_east_download', 'event_label': 'aws_image_east_download'});">https://console.aws.amazon.com/ec2/home?region=us-east-1#launchAmi=ami-ce82caa4</a>
                        </br>
                        <a id="aws_image_central_download"
                           href="https://console.aws.amazon.com/ec2/home?region=eu-central-1#launchAmi=ami-191b0775"
                           onclick="gtag('event',  'download', {'event_category': 'aws_image_central_download', 'event_label': 'aws_image_central_download'});">https://console.aws.amazon.com/ec2/home?region=eu-central-1#launchAmi=ami-191b0775</a>
                    </td>
                </tr>
                <tr>
                    <td style="white-space: nowrap;">Google Compute Image</td>
                    <td style="white-space: nowrap;">
                        <a href="https://apacheignite.readme.io/docs/google-compute-deployment">guide</a>
                    </td>
                    <td style="white-space: nowrap;">2018-07-16</td>
                    <td style="white-space: nowrap;">
                        <a id="gce_image_download"
                           href="https://storage.googleapis.com/ignite-media/ignite-google-image.tar.gz"
                           onclick="gtag('event',  'download', {'event_category': 'gce_image_download', 'event_label': 'gce_image_download'});">ignite-google-image.tar.gz</a>

                        (<a href="https://downloads.apache.org/ignite/gce/ignite-google-image.tar.gz.asc">pgp</a>,
                        <a href="https://downloads.apache.org/ignite/gce/ignite-google-image.tar.gz.sha512">sha512</a>)

                    </td>
                </tr>
                </tbody>
            </table>
        </section><!-- cloud images -->

        <section id="verification" class="page-section"><!-- verification -->
            <h2>How to Verify</h2>
            <p>
                The PGP signatures can be verified using PGP or GPG. First download the
                <a href="https://downloads.apache.org/ignite/KEYS">Apache Ignite KEYS</a> file as well
                as the <i>.asc</i> signature files for the desired release version. Make sure you get these
                files from the main distribution directory, rather than from a mirror. Then verify the signatures.
            </p>
            <p>
                Please check <a href="https://www.apache.org/info/verification.html">How to Verify Downloaded Files</a>
                for more information on how and why you should verify Apache Ignite releases.
            </p>
            <pre class="brush:xml">
                % gpg --import KEYS
                % gpg --verify apache-ignite-2.9.1-src.zip.asc apache-ignite-2.9.1-src.zip
            </pre>
        </section><!-- verification -->

        <section id="3rdparty" class="page-section">
            <h2>3<sup>rd</sup> Party Binaries</h2>

            <p>
                This is a list of 3<sup>rd</sup> party binary packages based on Apache Ignite. The Apache Ignite project
                does not endorse or maintain any 3<sup>rd</sup> party binary packages.
            </p>

            <p>
                <a href="http://www.gridgain.com/download/editions/" target="_blank" rel="noopener"><b>GridGain
                    Professional Edition</b></a>
                is a binary build of Apache Ignite created by GridGain, which includes optional LGPL
                dependencies, such as Hibernate L2 cache integration and Geospatial Indexing, as well as bug
                fixes and features which may be included into the future official Apache Ignite releases.
            </p>
            <p>
                GridGain also provides his own <a
                    href="http://www.gridgainsystems.com/nexus/content/repositories/external" target="_blank"
                    rel="noopener"><b>GridGain Maven Repository</b></a> containing Apache Ignite LGPL artifacts such as
                ignite-hibernate.</br>
                Please note that artifacts located at GridGain Maven Repository provided for convenience and are NOT
                official Apache Ignite artifacts.
            </p>

            <p>
                If you would like to provide your own edition of Apache Ignite here, please send email to
                <a href="mailto:dev@ignite.apache.org?subject=Subscribe&body=Please%20subscribe%20me.">Ignite dev
                    list</a>.
            </p>
        </section> <!-- 3rdparty -->
    </div>
</article>
<!-- END OF MAIN SITE BODY -->

<!--start include virtual="/includes/footer.html" -->
<footer id="footer" class="bg-gray-shadow">
    <div class="wrapper">
        <div class="container">
            <div class="row">
                <nav class="col-md-4">
                    <ul class="list-unstyled">
                        <li><a href="/features.html">Features</a></li>
                        <li><a href="/docs-and-apis.html">Documentation</a></li>
                        <li><a href="/community/resources.html">Ask Question</a></li>
                        <li><a href="/download.cgi">Download</a></li>
                        <li><a href="/community/contribute.html">Contribute</a></li>
                    </ul>

                    <ul class="social-networks list-unstyled">
                        <li><a href="https://www.linkedin.com/company/apache-ignite" aria-label="Linkedin"
                               class="icon-linkedin" target="_blank" rel="noopener"></a></li>
                        <li><a href="https://twitter.com/ApacheIgnite" aria-label="Twitter" class="icon-twitter"
                               target="_blank" rel="noopener"></a></li>
                        <li><a href="https://plus.google.com/109419715166167783665" aria-label="Google Plus"
                               class="icon-google-plus" target="_blank" rel="noopener"></a></li>
                        <li><a href="https://www.facebook.com/Apache-Ignite-813431118713318/" aria-label="Facebook"
                               class="icon-facebook" target="_blank" rel="noopener"></a></li>
                    </ul>
                </nav>
                <div class="col-md-8 copyright">
                    <p>&copy; 2015 - 2021 <a href="http://www.apache.org/">The Apache Software Foundation</a>.<br/>
                        Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered
                        trademarks
                        or trademarks of The Apache Software Foundation. <br/><a
                                href="http://apache.org/foundation/policies/privacy.html" target="_blank">Privacy
                            Policy</a></p>

                    <div class="footer-logos">
                        <a class="ignite" href="#wrapper"><img src="/images/ignite_logo_full.svg"
                                                               alt="Apache Ignite Logo"></a>
                        <a class="apache" href="https://donate.apache.org/"><img src="/images/support-apache-opt.png"
                                                                                 alt="Apache Software Foundation"/></a>
                    </div>


                </div>
            </div>
        </div>
    </div>
</footer>


<!-- end of include "/includes/footer.html" -->

<!-- include of "/includes/scripts.html" -->
<link rel="stylesheet" href="/css/ignite-redesign.css?20201230" media="print" onload="this.media='all'">
<noscript><link media="all" rel="stylesheet" href="/css/ignite-redesign.css?20201230"></noscript>


<link rel="preload" href="https://use.fontawesome.com/releases/v5.13.0/css/all.css" integrity="sha384-Bfad6CLCknfcloXFOyFnlgtENryhrpZCe29RTifKEixXQZ38WheV+i/6YWSzkz3V" crossorigin="anonymous" media="screen" as="style" onload="this.onload=null;this.rel='stylesheet'">
<noscript><link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.13.0/css/all.css" integrity="sha384-Bfad6CLCknfcloXFOyFnlgtENryhrpZCe29RTifKEixXQZ38WheV+i/6YWSzkz3V" crossorigin="anonymous" media="screen"></noscript>


<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha256-4+XzXVhsDmqanXGHaHvgh1gMQKX40OUvDEBTu8JcmNs=" crossorigin="anonymous"></script>
<script defer src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
<script defer src="/js/bootstrap.min.js" ></script>
<script defer src="/js/prism.js?20201203" ></script>
<script src="/js/jquery.bootstrap-dropdown-hover.min.js"></script>

<script type="text/javascript">
    if (navigator.userAgent.match(/IEMobile\/10\.0/)) {
        var msViewportStyle = document.createElement('style');
        msViewportStyle.appendChild(
            document.createTextNode(
                '@-ms-viewport{width:auto!important}'
            )
        );
        document.querySelector('head').appendChild(msViewportStyle)
    }
    
    jQuery('#navbar [data-toggle="dropdown"]').bootstrapDropdownHover({});
    
</script>
<!-- include of "/includes/scripts.html" -->

<!-- GitHub stats-->
<script async defer src="https://buttons.github.io/buttons.js"></script>

<script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

<!-- end of include "/includes/scripts.html" -->


<!-- Table export -->
<script type="text/javascript"
        src="https://cdn.rawgit.com/hhurz/tableExport.jquery.plugin/master/libs/FileSaver/FileSaver.min.js"></script>
<script type="text/javascript"
        src="https://cdn.rawgit.com/hhurz/tableExport.jquery.plugin/master/libs/jsPDF/jspdf.min.js"></script>
<script type="text/javascript" src="/js/jspdf.plugin.autotable.js"></script>
<script type="text/javascript" src="/js/tableExport.min.js"></script>

<script type="text/javascript">
    $(document).ready(function () {
        var expBtnDesc = [
            {cfg: {type: 'json'}, text: 'JSON', icon: 'ico-json.png?20191126'},
            {cfg: {type: 'xml'}, text: 'XML', icon: 'ico-xml.png?20191126'},
            {cfg: {type: 'csv'}, text: 'CSV', icon: 'ico-csv.png?20191126'},
            {cfg: {type: 'excel'}, text: 'XLS', icon: 'ico-xls.png?20191126'},
            {
                cfg: {
                    type: 'pdf',
                    jspdf: {
                        autotable: {
                            styles: {
                                overflow: 'linebreak',
                                fontSize: 14,
                                rowHeight: 19,
                                valign: 'top'
                            },
                            headerStyles: {
                                rowHeight: 20,
                                fontSize: 16,
                                fillColor: 207,
                                textColor: 0,
                                valign: 'middle'
                            },
                            bodyStyles: {
                                fillColor: 245
                            },
                            alternateRowStyles: {
                                fillColor: 255,
                                valign: 'middle'
                            }
                        }
                    }
                },
                text: 'PDF',
                icon: 'ico-pdf.png?20191126'
            }
        ];

        $("table").each(function (ix, tbl) {
            var insert = '' +
                '<div class="btn-group btn-group-export" title="Export table content to selected format">\n' +
                '    <button class="btn btn-default btn-export btn-sm dropdown-toggle fa fa-download" data-toggle="dropdown"></button>\n' +
                '    <ul class="dropdown-menu dropdown-menu-right table-export-options" role="menu">\n';

            var id = this.id || 'table' + ix;

            this.id = id;

            $.each(expBtnDesc, function (ix, btn) {
                btn.cfg.fileName = $(tbl).attr('name');

                insert += "        <li><a href='#' onclick='$(\"#" + id + "\").tableExport(" + JSON.stringify(btn.cfg) + ");'>" +
                    "<img src='/images/" + btn.icon + "' width='24px'/> " + btn.text +
                    "</a></li>\n";


            });

            insert += '    </ul>\n' +
                '</div>\n';

            $(this).find('thead > tr > th:last-child').append(insert);
        });

        $("table#mc").find("button").hide();
    });
</script>
</body>
</html>
