<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1" />
    <title>Apache Hadoop Performance Acceleration</title>
    <meta
      name="description"
      content="Achieve the performance acceleration of Hadoop-based systems by deploying Ignite as an in-memory computing platform designated for low-latency, high-throughput and real-time operations while Hadoop continues to be used for long-running OLAP workloads."
    />
    <link rel="canonical" href="https://ignite.apache.org/use-cases/hadoop-acceleration.html" />
    <meta property="og:title" content="Apache Hadoop Performance Acceleration" />
    <meta property="og:type" content="article" />
    <meta property="og:url" content="https://ignite.apache.org/use-cases/hadoop-acceleration.html" />
    <meta property="og:image" content="/img/og-pic.png" />
    <meta
      property="og:description"
      content="Achieve the performance acceleration of Hadoop-based systems by deploying Ignite as an in-memory computing platform designated for low-latency, high-throughput and real-time operations while Hadoop continues to be used for long-running OLAP workloads."
    />
    <link rel="stylesheet" href="/js/vendor/hystmodal/hystmodal.min.css?ver=0.8" />
    <link rel="stylesheet" href="/css/utils.css?ver=0.8" />
    <link rel="stylesheet" href="/css/site.css?ver=0.8" />
    <link rel="stylesheet" href="../css/native-persistence.css?ver=0.8" />
    <link rel="stylesheet" href="../css/compute-apis.css?ver=0.8" />
    <link rel="stylesheet" href="../css/digital-hub.css?ver=0.8" />
    <link rel="stylesheet" href="../css/hadoop.css?ver=0.8" />
    <link rel="stylesheet" href="/css/media.css?ver=0.8" media="only screen and (max-width:1199px)" />
    <link rel="icon" type="image/png" href="/img/favicon.png" />
  </head>
  <body>
    <!-- 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 -->

    <!-- 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>
    <!-- MOBILE MENU START -->
    <div class="hystmodal" id="jsMenuModal" aria-hidden="true">
      <div class="hystmodal__wrap">
        <div class="hystmodal__window mobmenu" role="dialog" aria-modal="true">
          <button data-hystclose class="hystmodal__close">Close</button>
          <div class="mobmenu__wrap">
            <a href="/" class="mobmenu__logo"><img src="/img/logo.svg" alt="Логотип" /></a>
            <div class="mobmenu__menu">
              <ul>
                <li>
                  <a href="/docs/latest/">Quick Start</a>
                </li>
                <li>
                  <a href="/resources.html">Resources</a>
                </li>
                <li>
                  <a href="/faq.html">FAQ</a>
                </li>
                <li>
                  <span class="mobmenu__parent"> <a href="/use-cases.html">Use Cases</a><button class="mobmenu__opener"></button> </span>
                  <ul>
                    <li>
                      <a href="/use-cases/in-memory-cache.html">In-Memory Cache</a>
                    </li>
                    <li>
                      <a href="/use-cases/in-memory-data-grid.html">In-Memory Data Grid</a>
                    </li>
                    <li>
                      <a href="/use-cases/in-memory-database.html">In-Memory Database</a>
                    </li>
                    <li>
                      <a href="/use-cases/key-value-store.html">Key-Value Store</a>
                    </li>
                    <li>
                      <a href="/use-cases/high-performance-computing.html">High Performance Computing</a>
                    </li>
                    <li>
                      <a href="/use-cases/digital-integration-hub.html">Digital Integration Hub</a>
                    </li>
                    <li>
                      <a href="/use-cases/spark-acceleration.html">Spark Acceleration</a>
                    </li>
                    <li>
                      <a href="/use-cases/hadoop-acceleration.html">Hadoop Acceleration</a>
                    </li>
                    <li>
                      <a href="/use-cases.html">View All</a>
                    </li>
                  </ul>
                </li>

                <li>
                  <span class="mobmenu__parent"> <a href="/features/">Features</a><button class="mobmenu__opener"></button> </span>
                  <ul>
                    <li>
                      <a href="/arch/multi-tier-storage.html">Multi-Tier Storage</a>
                    </li>
                    <li>
                      <a href="/arch/native-persistence.html">Native Persistence</a>
                    </li>
                    <li>
                      <a href="/features/sql.html">Distributed SQL</a>
                    </li>
                    <li>
                      <a href="/features/key-value-apis.html">Key-Value APIs</a>
                    </li>
                    <li>
                      <a href="/features/acid-transactions.html">ACID Transactions</a>
                    </li>
                    <li>
                      <a href="/features/compute-apis.html">Compute APIs</a>
                    </li>
                    <li>
                      <a href="/features/service-apis.html">Services</a>
                    </li>
                    <li>
                      <a href="/features/machinelearning.html">Machine Learning</a>
                    </li>
                    <li>
                      <a href="/features/streaming.html">Real-Time Streaming APIs</a>
                    </li>
                    <li>
                      <a href="/docs/latest/messaging">Messaging</a>
                    </li>
                    <li>
                      <a href="/docs/latest/key-value-api/continuous-queries">Continuous Queries</a>
                    </li>
                    <li>
                      <a href="/features/index.html">View All</a>
                    </li>
                  </ul>
                </li>

                <li>
                  <a href="/community.html">Community</a>
                  <ul class="isdefault">
                    <li><a href="/community.html">Project Info</a></li>
                    <li><a href="/events.html">Events</a></li>
                  </ul>
                </li>
                <li>
                  <a href="/use-cases/provenusecases.html">Powered by</a>
                </li>
                <li>
                  <a href="/docs/latest/">Docs</a>
                </li>
              </ul>
              <a href="/download.cgi" class="button mobmenu__button">Download Ignite 2.11</a>
            </div>
            <!-- //mobmenu__menu -->
          </div>
          <!-- //mobmenu__wrap -->
        </div>
        <!-- //mobmenu -->
      </div>
    </div>
    <!-- MOBILE MENU END -->
    <header class="hdr hdr__blue jsHdrBase">
      <div class="hdr__wrap flexi jsHdrLine">
        <button class="hdr__burger" data-menumodal="#jsMenuModal"><img src="/img/menu.svg" alt="" /></button
        ><a class="hdr__logo" href="/"><img class="hdr__logoimg hdr__logo--white" src="/img/logo-white.svg" alt="" /><img class="hdr__logoimg hdr__logo--black" src="/img/logo.svg" alt="" /></a
        ><a class="button hdr__button" href="/download.cgi">Download Ignite 2.11 </a>
        <nav class="hdrmenu">
          <ul class="flexi">
            <li class="js-hasdrop"><a class="hdrmenu--expanded" href="/" data-panel="getStarted">Get Started</a></li>
            <li class="js-hasdrop"><a class="hdrmenu--expanded" href="/features" data-panel="features">Features</a></li>
            <li class="js-hasdrop"><a class="hdrmenu--expanded" href="/community.html" data-panel="community">Community</a></li>
            <li><a href="/use-cases/provenusecases.html" data-panel="">Powered By</a></li>
            <li><a href="///ignite.apache.org/docs/latest/" data-panel="">Docs</a></li>
          </ul>
        </nav>
        <div class="dropmenu">
          <div class="dropmenu__panel" data-menupanel="getStarted">
            <div class="container dropmenu1__grid">
              <div class="dropmenu1__buttonwrap">&nbsp;</div>
              <div class="dropmenu__box dropmenu__box--buttonin">
                <a class="dropmenu__redbutton" href="https://ignite.apache.org/docs/latest/"> <img src="/img/menu/icon-red-rocket.svg" alt="" /><span>Quick Start Guide</span></a>
                <ul class="dropmenu__menu">
                  <li>
                    <a class="dropmenu__iconitem" href="/resources.html"><img src="/img/menu/icon-resources.svg" alt="" /><span>Resources</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/faq.html"><img src="/img/menu/icon-question.svg" alt="" /><span>FAQ</span></a>
                  </li>
                </ul>
              </div>
              <div class="dropmenu__box">
                <p class="capstext"><a class="dropmenu__capslink" href="/use-cases.html">USE CASES</a></p>
                <ul class="dropmenu__menu">
                  <li>
                    <a class="dropmenu__iconitem" href="/use-cases/in-memory-cache.html"><img src="/img/menu/icon-folder.svg" alt="" /><span>In-Memory Cache</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/use-cases/in-memory-data-grid.html"><img src="/img/menu/icon-folder.svg" alt="" /><span>In-Memory Data Grid</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/use-cases/in-memory-database.html"><img src="/img/menu/icon-folder.svg" alt="" /><span>In-Memory Database</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/use-cases/key-value-store.html"><img src="/img/menu/icon-folder.svg" alt="" /><span>Key-Value Store</span></a>
                  </li>
                </ul>
              </div>
              <div class="dropmenu__box no-border">
                <ul class="dropmenu__menu">
                  <li>
                    <a class="dropmenu__iconitem" href="/use-cases/high-performance-computing.html"><img src="/img/menu/icon-folder.svg" alt="" /><span>High-Performance Computing</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/use-cases/digital-integration-hub.html"><img src="/img/menu/icon-folder.svg" alt="" /><span>Digital Integration Hub</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/use-cases/spark-acceleration.html"><img src="/img/menu/icon-folder.svg" alt="" /><span>Spark Acceleration</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/use-cases/hadoop-acceleration.html"><img src="/img/menu/icon-folder.svg" alt="" /><span>Hadoop Acceleration</span></a>
                  </li>
                </ul>
              </div>
            </div>
            <!-- /.dropmenu1__grid-->
            <div class="panelmorelinkwrap panelmorelinkwrap--end container"><a class="panellink" href="/use-cases.html">View all</a></div>
          </div>
          <!-- /.dropmenu__panel-->
          <div class="dropmenu__panel" data-menupanel="features">
            <div class="container dropmenu2__grid">
              <div class="dropmenu__box">
                <div class="capstext">MULTI-TIER STORAGE</div>
                <ul class="dropmenu__menu">
                  <li>
                    <a class="dropmenu__iconitem" href="/arch/multi-tier-storage.html"><img src="/img/menu/icon-db.svg" alt="" /><span>Multi-Tier Storage</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/arch/native-persistence.html"><img src="/img/menu/icon-db.svg" alt="" /><span>Native Persistence</span></a>
                  </li>
                </ul>
              </div>
              <div class="dropmenu__box">
                <div class="capstext">ESSENTIAL Developer APIs</div>
                <ul class="dropmenu__menu">
                  <li>
                    <a class="dropmenu__iconitem" href="/features/sql.html"><img src="/img/menu/icon-cube.svg" alt="" /><span>Distributed SQL</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/features/key-value-apis.html"><img src="/img/menu/icon-cube.svg" alt="" /><span>Key-Value APIs</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/features/acid-transactions.html"><img src="/img/menu/icon-cube.svg" alt="" /><span>ACID Transactions</span></a>
                  </li>
                </ul>
              </div>
              <div class="dropmenu__box">
                <div class="capstext">High-Performance <br />Computing APIs</div>
                <ul class="dropmenu__menu">
                  <li>
                    <a class="dropmenu__iconitem" href="/features/compute-apis.html"><img src="/img/menu/icon-cube.svg" alt="" /><span>Compute APIs</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/features/service-apis.html"><img src="/img/menu/icon-cube.svg" alt="" /><span>Services</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/features/machinelearning.html"><img src="/img/menu/icon-cube.svg" alt="" /><span>Machine Learning</span></a>
                  </li>
                </ul>
              </div>
              <div class="dropmenu__box">
                <div class="capstext">Real-Streaming APIs</div>
                <ul class="dropmenu__menu">
                  <li>
                    <a class="dropmenu__iconitem" href="/features/streaming.html"><img src="/img/menu/icon-cube.svg" alt="" /><span>Real-Time Streaming APIs</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="https://ignite.apache.org/docs/latest/messaging"><img src="/img/menu/icon-cube.svg" alt="" /><span>Messaging</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="https://ignite.apache.org/docs/latest/key-value-api/continuous-queries"><img src="/img/menu/icon-cube.svg" alt="" /><span>Continuous Queries</span></a>
                  </li>
                </ul>
              </div>
            </div>
            <!-- /.dropmenu2__grid-->
            <div class="panelmorelinkwrap"><a class="panellink" href="/features/">View all</a></div>
          </div>
          <!-- /.dropmenu__panel-2-->
          <div class="dropmenu__panel" data-menupanel="community">
            <div class="container dropmenu3__grid">
              <div class="dropmenu__box">
                <div class="capstext"><a class="dropmenu__capslink" href="/community.html">Project Info</a></div>
                <ul class="dropmenu__menu">
                  <li>
                    <a class="dropmenu__iconitem" href="/community.html#story"><img src="/img/menu/icon-clip.svg" alt="" /><span>Apache Ignite Story</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/community.html#community"><img src="/img/menu/icon-comment.svg" alt="" /><span>Meet The Community</span></a>
                  </li>
                </ul>
              </div>
              <div class="dropmenu__box no-border">
                <div class="capstext">&nbsp;</div>
                <ul class="dropmenu__menu">
                  <li>
                    <a class="dropmenu__iconitem" href="/community.html#contributing"><img src="/img/menu/icon-puzzle.svg" alt="" /><span>Start Contributing</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/community.html#faq"><img src="/img/menu/icon-question.svg" alt="" /><span>Ask Questions</span></a>
                  </li>
                </ul>
              </div>
              <div class="dropmenu__box">
                <div class="capstext"><a class="dropmenu__capslink" href="/events.html">Events</a></div>
                <ul class="dropmenu__menu">
                  <li>
                    <a class="dropmenu__iconitem" href="/events.html#summit"><img src="/img/menu/icon-calendar.svg" alt="" /><span>Apache Ignite Summit</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/events.html#meetups"><img src="/img/menu/icon-calendar.svg" alt="" /><span>Meetups</span></a>
                  </li>
                </ul>
              </div>
              <div class="dropmenu__box no-border">
                <div class="capstext">&nbsp;</div>
                <ul class="dropmenu__menu">
                  <li>
                    <a class="dropmenu__iconitem" href="/events.html#upcoming"><img src="/img/menu/icon-calendar.svg" alt="" /><span>Upcoming Events</span></a>
                  </li>
                  <li>
                    <a class="dropmenu__iconitem" href="/events.html#past"><img src="/img/menu/icon-calendar.svg" alt="" /><span>Past Events</span></a>
                  </li>
                </ul>
              </div>
            </div>
            <!-- /.dropmenu3__grid-->
          </div>
          <!-- /.dropmenu__panel-->
        </div>
        <!-- /.dropmeu-->
      </div>
    </header>
    <div class="dropmenu__back"></div>
    <header class="hdrfloat hdr__white jsHdrFloatBase"></header>
    <section class="innerhero">
      <div class="container innerhero__cont">
        <div class="innerhero__main">
          <h1 class="h1 innerhero__h1">
            Accelerate Existing Hadoop Deployments<br />
            <span class="with-apache"> With Apache Ignite</span>
          </h1>
          <div class="innerhero__descr pt-2 h5">Accelerate the performance of Hadoop-based applications with Ignite <br />as a high-performance data access layer</div>
          <div class="innerhero__action"><a class="button innerhero__button" href="https://ignite.apache.org/docs/latest/index">Start Coding</a></div>
        </div>
        <img class="innerhero__pic innerhero__pic--hadoop" src="/img/usecases/hadoop/hero-image.svg" alt="hero-image" />
      </div>
    </section>
    <!-- /.innerhero-->
    <section class="compute2">
      <div class="container">
        <div class="doop2__block">
          <h2 class="compute2__h2">Benefits Of Using Apache Ignite</h2>
          <div class="compute2__grid flexi hub2__grid doop2__grid">
            <div class="compute2item hub2item doop2__item">
              <div class="compute2-points__item fz20"></div>
              <div class="compute2item__block">
                <h3 class="fz20 compute2item__title">Real-time analytics</h3>
                <p class="compute2__text base2__text">Apache Ignite enables real-time analytics across Apache Hadoop operational and historical data silos.</p>
              </div>
            </div>
            <div class="compute2item hub2item doop2__item">
              <div class="compute2-points__item fz20"></div>
              <div class="compute2item__block">
                <h3 class="fz20 compute2item__title">Low-latency and high-throughput operations</h3>
                <p class="compute2__text base2__text">Ignite enables low-latency and high-throughput access while Hadoop continues to be used for long-running OLAP workloads.</p>
              </div>
            </div>
          </div>
        </div>
      </div>
    </section>
    <!-- /.compute2-->
    <section class="doop3">
      <div class="container">
        <div class="doop3__block flexi">
          <div class="doop3__info">
            <h2 class="doop3__h2 h5">How Does Apache Ignite Acceleration Work?</h2>
            <p class="doop3__text">
              To achieve the performance acceleration of Hadoop-based systems, deploy Ignite as a separate distributed storage that maintains the data sets required for your low-latency operations or real-time reports
            </p>
            <h2 class="doop3__h2 h5">There are 3 basic steps:</h2>
            <div class="fz20 doop3__number">01</div>
            <p class="doop3__subtext">
              Depending on the data volume and available memory capacity, you can enable<a href="/arch/native-persistence.html" target="_blank"> Ignite native persistence</a> to store historical data sets on disk while dedicating a memory
              space for operational records.
            </p>
            <p class="doop3__subtext pt-1">You can continue to use Hadoop as storage for less frequently-used data or for long-running and ad-hoc analytical queries.</p>
            <div class="fz20 doop3__number">02</div>
            <p class="doop3__subtext">
              Your applications and services should use Ignite native APIs to process the data residing in the in-memory cluster. Ignite provides SQL, compute (aka. map-reduce), and machine learning APIs for various data processing needs.
            </p>
            <div class="fz20 doop3__number">03</div>
            <p class="doop3__subtext">Consider using Apache Spark DataFrames APIs if an application needs to run federated or cross-database queries across Ignite and Hadoop clusters.</p>
            <p class="doop3__subtext pt-1">
              Ignite is <a href="/use-cases/spark-acceleration.html" target="_blank">integrated with Spark</a>, which natively supports Hive/Hadoop. Cross-database queries should be considered only for a limited number of scenarios when
              neither Ignite nor Hadoop contains the entire data set.
            </p>
          </div>
          <img class="doop3__image" src="/img/usecases/hadoop/image.svg" alt="image" />
        </div>
      </div>
    </section>
    <!-- /.doop3 -->
    <section class="doop4">
      <div class="container">
        <h2 class="doop4__h2 h4">How Can You Split Data And Operations Between Ignite And Hadoop?</h2>
        <div class="doop4__block">
          <div class="doop4__item">
            <p class="doop4__text">
              Use Apache Ignite for tasks that require:<br />
              – Low-latency response time <span class="doop4__grey">(microseconds, milliseconds, seconds)</span>
            </p>
            <p class="doop4__text pt-1">– High-throughput operations <span class="doop4__grey">(thousands and millions of operations per second)</span> <br />– Real-time processing</p>
          </div>
          <div class="doop4__item">
            <p class="doop4__text">Continue using Apache Hadoop for: <br />— High-latency operations <span class="doop4__grey">(dozens of seconds, minutes, hours)</span><br />— Batch processing</p>
          </div>
        </div>
      </div>
    </section>
    <!-- /.doop4-->
    <section class="doop5">
      <div class="container">
        <h2 class="h4 doop5__h2">5 Steps To Implement The Architecture In Practice</h2>
        <div class="doop5__blocks">
          <div class="doop5__block">
            <div class="doop5__item post1">
              <div class="doop5__number h4">01</div>
              <div class="doop5__title">Download and install Apache Ignite to your system.</div>
            </div>
            <div class="doop5__item post2">
              <div class="doop5__number h4">02</div>
              <div class="doop5__title">Select a list of operations for Ignite.</div>
              <p class="doop5__text pt-2">The best operations are those that require low-latency response time, high-throughput, and real-time analytics.</p>
            </div>
            <div class="doop5__item post3">
              <div class="doop5__number h4">03</div>
              <p class="doop5__text">
                <span class="doop5__title">Consider enabling Ignite native persistence,</span> or use Ignite as a pure in-memory cache, or in-memory data grid that persists changes to Hadoop or another external database.
              </p>
            </div>
            <div class="doop5__item post4">
              <div class="doop5__number h4">04</div>
              <div class="doop5__title">Update your applications</div>
              <p class="doop5__text pt-2">Ensure they use Ignite native APIs to process Ignite data and Spark for federated queries.</p>
            </div>
            <div class="doop5__item post5">
              <div class="doop5__number h4">05</div>
              <div class="doop5__titleend">If you need to replicate changes between Ignite and Hadoop clusters, use existing change-data-capture solutions:</div>
              <div class="doop5__part flexi">
                <p>Debezium<br />Kafka</p>
                <p class="doop5__middle">GridGain Data Lake Accelerator<br />Oracle GoldenGate</p>
                <p class="doop5__end">
                  To write-through changes to Hadoop directly,<br />
                  implement <a href="https://ignite.apache.org/docs/latest/persistence/external-storage" target="_blank">Ignite's CacheStore</a> interface.
                </p>
              </div>
            </div>
          </div>
        </div>
      </div>
    </section>
    <section class="native-bottom container">
      <div class="native-bottom__grid">
        <article class="nativebotblock">
          <div class="h4 nativebotblock__title"><img class="nativebotblock__icon" src="/img/features/native-rocket.svg" alt="" /><span>Ready to Start?</span></div>
          <p class="nativebotblock__text">
            Discover our quick start guide and build your first<br />
            application in 5-10 minutes
          </p>
          <a class="nativebotblock__link arrowlink" href="https://ignite.apache.org/docs/latest/" target="_blank">Quick Start Guide</a>
        </article>
        <article class="nativebotblock nativebotblock--learn">
          <div class="h4 nativebotblock__title"><img class="nativebotblock__icon" src="/img/features/native-docs.svg" alt="" /><span>Want to Learn More?</span></div>
          <p class="nativebotblock__text">Read the Apache Spark acceleration article</p>
          <a class="nativebotblock__link arrowlink" href="/use-cases/spark-acceleration.html">Apache Spark Acceleration Article</a>
        </article>
      </div>
    </section>
    <footer class="footer">
      <div class="container footer__top">
        <section class="footer1">
          <a class="footer__title" href="/features/">Features</a>
          <ul class="footer__menu">
            <li><a href="/arch/multi-tier-storage.html">Multi-Tier Storage</a></li>
            <li><a href="/arch/native-persistence.html">Native Persistence</a></li>
            <li><a href="/features/sql.html">Distributed SQL</a></li>
            <li><a href="/features/acid-transactions.html">ACID Transactions</a></li>
            <li><a href="/features/key-value-apis.html">Key Value APIs</a></li>
            <li><a href="/features/compute-apis.html">Compute APIs</a></li>
            <li><a href="/features/machinelearning.html">Machine Learning</a></li>
            <li><a href="/features/service-apis.html">Services</a></li>
            <li><a href="/features/streaming.html">Real-Streaming APIs</a></li>
            <li><a href="https://ignite.apache.org/docs/latest/key-value-api/continuous-queries">Continuous Queries</a></li>
            <li><a href="https://ignite.apache.org/docs/latest/messaging">Messaging</a></li>
          </ul>
        </section>
        <section class="footer2">
          <a class="footer__title" href="/use-cases/">Use-Cases</a>
          <ul class="footer__menu">
            <li><a href="/use-cases/in-memory-cache.html">In-Memory Cache</a></li>
            <li><a href="/use-cases/in-memory-data-grid.html">In-Memory Data Grid</a></li>
            <li><a href="/use-cases/in-memory-database.html">In-Memory Database</a></li>
            <li><a href="/use-cases/high-performance-computing.html">High-Performance Computing</a></li>
            <li><a href="/use-cases/digital-integration-hub.html">Digital Integration Hub</a></li>
            <li><a href="/use-cases/key-value-store.html">Key-Value Store</a></li>
            <li><a href="/use-cases/spark-acceleration.html">Apache Spark Acceleration</a></li>
            <li><a href="/use-cases/hadoop-acceleration.html">Apache Hadoop Acceleration</a></li>
          </ul>
        </section>
        <section class="footer3"><a class="footer__title" href="/community.html">Community</a><a class="footer__title" href="/resources.html">Resources</a><a class="footer__title" href="/events.html">Events</a></section>
        <section class="footer4">
          <div class="footer4__item">Join Our <a href="mailto:dev@ignite.apache.org">Dev Mailing List</a></div>
          <div class="footer4__item pt-2">Or write your question</div>
          <div class="footer4__item pt-1">user@ignite.apache.org</div>
          <div class="footer4__item pt-5">Follow Us:</div>
          <div class="footer4__socwrap flexi pt-2">
            <a class="footer4__soc" href="https://github.com/apache/ignite" target="_blank"><img src="/img/icon-github.svg" alt="" /></a
            ><a class="footer4__soc" href="https://www.linkedin.com/showcase/apache-ignite/" target="_blank"><img src="/img/icon-linkedin.svg" alt="" /></a
            ><a class="footer4__soc" href="https://twitter.com/apacheignite" target="_blank"><img src="/img/icon-twitter.svg" alt="" /></a
            ><a class="footer4__soc" href="https://www.meetup.com/Apache-Ignite-Virtual-Meetup/" target="_blank"><img src="/img/icon-meetup-black.png" alt="" /></a>
          </div>
          <a class="footer4__button button" href="https://ignite.apache.org/docs/latest/index">Start Using Apache Ignite </a>
        </section>
      </div>
      <div class="container footer__bot">
        <p>© 2015 - 2021 <a href="http://www.apache.org/">The Apache Software Foundation.</a></p>
        <p class="pt-1x">Apache, Apache Ignite, the Apache feather and the Apache Ignite logo are either registered trademarks or trademarks of The Apache Software Foundation</p>
        <p class="pt-1x"><a href="http://apache.org/foundation/policies/privacy.html">Privacy Policy</a></p>
      </div>
    </footer>
    <a class="scrollTop" href="#"
      ><svg class="feather feather-chevron-up" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewbox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
        <polyline points="18 15 12 9 6 15"></polyline></svg
    ></a>
    <script src="/js/vendor/hystmodal/hystmodal.min.js"></script>
    <script src="/js/vendor/smoothscroll.js"></script>
    <script src="/js/main.js?ver=0.8"></script>
  </body>
</html>
