<!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>High-Performance Computing, HPC Cluster - Apache Ignite</title>
    <meta
      name="description"
      content="Apache Ignite enables high-performance computing by providing APIs for data and compute-intensive calculations. Using Ignite as a HPC cluster, you can turn your commodity hardware or cloud environment into a distributed supercomputer."
    />
    <link rel="canonical" href="https://ignite.apache.org/use-cases/high-performance-computing.html" />
    <meta property="og:title" content="High-Performance Computing, HPC Cluster - Apache Ignite" />
    <meta property="og:type" content="article" />
    <meta property="og:url" content="https://ignite.apache.org/use-cases/high-performance-computing.html" />
    <meta property="og:image" content="/img/og-pic.png" />
    <meta
      property="og:description"
      content="Apache Ignite enables high-performance computing by providing APIs for data and compute-intensive calculations. Using Ignite as a HPC cluster, you can turn your commodity hardware or cloud environment into a distributed supercomputer."
    />
    <link rel="stylesheet" href="/js/vendor/hystmodal/hystmodal.min.css?ver=0.3" />
    <link rel="stylesheet" href="/css/utils.css?ver=0.3" />
    <link rel="stylesheet" href="/css/site.css?ver=0.3" />
    <link rel="stylesheet" href="../css/native-persistence.css?ver=0.3" />
    <link rel="stylesheet" href="../css/high-performance-computing.css?ver=0.3" />
    <link rel="stylesheet" href="/css/media.css?ver=0.3" media="only screen and (max-width:1199px)" />
    <link rel="icon" type="image/png" href="/img/favicon.png" />
  </head>
  <body>
    <!-- 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">
              <div class="mobmenu__h1 berlin">Navigation</div>
              <ul>
                <li>
                  <a href="/">Get started</a>
                  <ul>
                    <li><a href="/resources.html">Resources</a></li>
                    <li><a href="/faq.html">FAQ</a></li>
                  </ul>
                </li>
                <li>
                  <a href="/features/">Features</a>
                </li>
                <li>
                  <a href="/community.html">Community</a>
                  <ul>
                    <li><a href="/events.html">Events</a></li>
                    <li><a href="/resources.html">Resources</a></li>
                  </ul>
                </li>
                <li>
                  <a href="/use-cases/provenusecases.html">Powered by</a>
                </li>
                <li>
                  <a href="https://ignite.apache.org/docs/latest/">Docs</a>
                </li>
              </ul>
            </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.html">Download Ignite 2.11 </a>
        <nav class="hdrmenu">
          <ul class="flexi">
            <li><a class="hdrmenu--expanded" href="/" data-panel="getStarted">Get Started</a></li>
            <li><a class="hdrmenu--expanded" href="/features" data-panel="features">Features</a></li>
            <li><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">
                <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>
              </div>
              <div class="dropmenu__box">
                <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"><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">Distributed Multi-Tiered <br />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">Essentail 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>Streaming</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">High Performance <br />Computing<span class="highperf__herosmall"> With Apache Ignite</span></h1>
          <div class="innerhero__descr pt-2 h5">Minimize network utilization by executing kilobyte-size custom <br />code over petabytes of data</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--highperf" src="/img/usecases/high-peformance/hero.svg" alt="High Performance Computing" />
      </div>
    </section>
    <!-- /.innerhero-->
    <section class="high1 container">
      <h2 class="capstext pb-5">High Performance Computing Overview</h2>
      <div class="high1__wrap flexi">
        <div class="high1__main pt-1">
          <h3 class="h5 high1__title">What is high performance computing?</h3>
          <div class="high1__text pt-3 pb-5">
            <p>High-performance computing is the ability to process data and perform complex calculations at high speeds.</p>
            <p>You keep all your data on the cluster node and execute your kilobyte-size custom code over petabytes of data avoiding network-like utilization.</p>
          </div>
          <h3 class="h5 high1__title">How it works</h3>
          <div class="high1__text pt-2">
            <div class="high1__sub pb-2">In traditional disk-based systems, <br />such as relational or NoSQL databases</div>
            <p>Client applications usually bring data from servers, use the records for local calculations, and discard the data as soon as the business task is complete.</p>
            <p>This approach does not scale well if a significant volume of data gets transferred over the network.</p>
            <div class="high1__sub pt-2 pb-2">In in-memory computing systems, <br />such as Apache Ignite</div>
            <p>
              Apache Ignite supports a co-located processing technique. The primary aim of this technique is to increase the performance of your data-intensive or compute-intensive calculations by running them straight on Ignite cluster
              nodes.
            </p>
            <p>In co-located processing, calculations are done on local data sets of the cluster nodes. This avoids records shuffling over the network and eliminates the impact of network latency on the performance of your applications.</p>
          </div>
        </div>
        <aside class="high1__picwrap">
          <img class="high1__pic" src="/img/usecases/high-peformance/perf-pic.svg" alt="" />
          <div class="high1__picdescr flexi">
            <div class="high1__arrowline flexi">
              <i>1</i>
              <p>– Map Phace</p>
            </div>
            <div class="high1__arrowline flexi">
              <i>2</i>
              <p>– Execution Phase</p>
            </div>
            <div class="high1__arrowline flexi">
              <i>3</i>
              <p>– Reduse Phace</p>
            </div>
          </div>
        </aside>
      </div>
    </section>
    <!-- /.high1-->
    <section class="high2">
      <div class="container">
        <h2 class="capstext">Benefits Of Apache Ignite Compute APIs</h2>
        <div class="high2__wrap">
          <div class="high2__block">
            <div class="high2__title">Broadcast or execute on specific nodes</div>
            <div class="high2__text">
              <p>— Broadcast your tasks to&nbsp;use all the CPUs of&nbsp;your distributed cluster.</p>
              <p class="pt-1">— Or&nbsp;execute your computations on&nbsp;a&nbsp;specific group of&nbsp;nodes.</p>
            </div>
          </div>
          <div class="high2__block">
            <div class="high2__title">Load balance your querie</div>
            <div class="high2__text"><p>If&nbsp;some of&nbsp;the nodes are over-utilized, Ignite can load balance your calculations to&nbsp;the other node.</p></div>
          </div>
          <div class="high2__block">
            <div class="high2__title">All computations are fault-tolerant</div>
            <div class="high2__text">
              <p>Some computations might take minutes or&nbsp;hours to&nbsp;complete, e.g. drug discovery or&nbsp;logistics planning. You don&rsquo;t need to&nbsp;start from the very beginning if&nbsp;something goes wrong.</p>
            </div>
          </div>
        </div>
      </div>
    </section>
    <!-- /.high2-->
    <section class="highicons container">
      <h2 class="h4">Sample Data- And Compute-Intensive Tasks That <br />Leverage High Performance Computing</h2>
      <div class="highicons__wrap pt-5">
        <div class="highicons__item">
          <div class="highicons__iconwrap flexi"><img class="highicons__icon" src="/img/usecases/high-peformance/icon-perf1.svg" alt="" /></div>
          <div class="highicons__title">Finance</div>
          <div class="highicons__descr">e.g. fraud-detection, risk management, financial modeling</div>
        </div>
        <div class="highicons__item">
          <div class="highicons__iconwrap flexi"><img class="highicons__icon" src="/img/usecases/high-peformance/icon-perf2.svg" alt="" /></div>
          <div class="highicons__title">Retail & Hospitality</div>
          <div class="highicons__descr">e.g. recommendation systems, 360 customer experience</div>
        </div>
        <div class="highicons__item">
          <div class="highicons__iconwrap flexi"><img class="highicons__icon" src="/img/usecases/high-peformance/icon-perf3.svg" alt="" /></div>
          <div class="highicons__title">Media & Entertainment</div>
          <div class="highicons__descr">e.g. creating animations, rendering special effects</div>
        </div>
        <div class="highicons__item">
          <div class="highicons__iconwrap flexi"><img class="highicons__icon" src="/img/usecases/high-peformance/icon-perf4.svg" alt="" /></div>
          <div class="highicons__title">Logistic and transportation</div>
          <div class="highicons__descr">e.g. logistics planning, detecting potential hazardous situations</div>
        </div>
        <div class="highicons__item">
          <div class="highicons__iconwrap flexi"><img class="highicons__icon" src="/img/usecases/high-peformance/icon-perf5.svg" alt="" /></div>
          <div class="highicons__title">Biotech</div>
          <div class="highicons__descr">e.g. drugs and vaccines discovery, sequencing DNA</div>
        </div>
      </div>
    </section>
    <!-- /.highicons-->
    <section class="highcases container">
      <h2 class="h4">High Performance Computing Ignite <br />User Stories</h2>
      <div class="highcases__one flexi pt-2 pb-4">
        <div class="highcases__topleft">
          <div class="highcases__subtitle pb-2">Personalized websites with dynamically changing content</div>
          <p class="pb-3">Whenever you visit Amazon, Walmart, Booking.com, or other websites, you see personalized content, such as relevant deals made especially for you.</p>
          <p>
            Personalized content considering your age, location, preferences, and previous interactions is being processed and displayed in few seconds thanks to high-performance computing tasks that process gigabytes of data within a
            second.
          </p>
        </div>
        <div class="highcases__topright">
          <article class="comvideo">
            <div class="comvideo__box">
              <a class="comvideo__screen" href="https://www.youtube.com/watch?v=qYd9GGRC4L0" data-youtube="data-youtube"
                ><span class="comvideo__txt">An Ignite Compute Grid <br />In The Cloud</span><img src="/img/usecases/high-peformance/video-1.png" alt=""
              /></a>
            </div>
            <div class="comvideo__descr pt-1">
              <p><strong>HomeAway,</strong> rental website with personalized offers</p>
            </div>
          </article>
        </div>
      </div>
      <div class="highcases__two pt-4 pb-4">
        <div class="highcases__subtitle pb-2">Data-driven modelling and simulations</div>
        <p>To create a new vaccine or drug you have to run thousands or millions <br />of simulations to come up with the best formula.</p>
        <div class="highcases__twowrap flexi pt-5">
          <div class="highcases__twoitem">
            <article class="comvideo">
              <div class="comvideo__box">
                <a class="comvideo__screen" href="https://www.youtube.com/watch?v=PFHb-UuhGkk" data-youtube="data-youtube"
                  ><span class="comvideo__txt">Data Driven Drug Discovery</span><img src="/img/usecases/high-peformance/video-2.png" alt=""
                /></a>
              </div>
              <div class="comvideo__descr pt-1"></div>
            </article>
            <p><strong>E-Therapeutics</strong> uses Apache Ignite capabilities for drug discovery</p>
          </div>
          <div class="highcases__twoitem">
            <article class="comvideo">
              <div class="comvideo__box">
                <a class="comvideo__screen" href="https://www.youtube.com/watch?v=NUxdoL-K9Ys" data-youtube="data-youtube"
                  ><span class="comvideo__txt comvideo__txt--small">How nference.ai Leverages Ignite For Distributed Analytics In The Bioinformatics Domain</span><img src="/img/usecases/high-peformance/video-3.png" alt=""
                /></a>
              </div>
              <div class="comvideo__descr pt-1">
                <p><strong>nference.ai:</strong> high performance compute APIs used to&nbsp;define different statistical analyses and execute numerical data in&nbsp;real-time</p>
              </div>
            </article>
          </div>
        </div>
      </div>
      <div class="highcases__one flexi pt-4 pb-4">
        <div class="highcases__topleft">
          <div class="highcases__subtitle pb-2">Logistic and transportation companies use advanced calculations for logistics planning</div>
          <p>
            <strong>Dutch Railways</strong> have thousands of different trains to deliver cargo and people across the country. They need to calculate how all those trains should be moving in real time. These calculations also happen with
            high compute APIs.
          </p>
        </div>
        <div class="highcases__topright">
          <article class="comvideo">
            <div class="comvideo__box">
              <a class="comvideo__screen" href="https://www.youtube.com/watch?v=wkCW8YC8eKU" data-youtube="data-youtube"
                ><span class="comvideo__txt comvideo__txt--small">Detecting Potential Hazardous Situations In The Dutch Railway Planning Using Apache Ignite</span><img src="/img/usecases/high-peformance/video-4.png" alt=""
              /></a>
            </div>
            <div class="comvideo__descr pt-1"></div>
          </article>
        </div>
      </div>
      <div class="highcases__two pt-4">
        <div class="highcases__subtitle pb-2">Real-time analytics enables fast and precise decisions</div>
        <p>High-performance computing allows the processing of unlimited data sets, <br />with analyzation taking only seconds.</p>
        <div class="highcases__twowrap flexi pt-5">
          <div class="highcases__twoitem">
            <article class="comvideo">
              <div class="comvideo__box">
                <a class="comvideo__screen" href="https://www.youtube.com/watch?v=jF9T2cJB6t0" data-youtube="data-youtube"
                  ><span class="comvideo__txt comvideo__txt--small">High Performance Exposure Management With Apache Ignite</span><img src="/img/usecases/high-peformance/video-5.png" alt=""
                /></a>
              </div>
              <div class="comvideo__descr pt-1"></div>
            </article>
            <p><strong>JPMorgan Chase</strong> use Apache Ignite for heavy computations which help to&nbsp;make effective exposure management.</p>
          </div>
          <div class="highcases__twoitem">
            <article class="comvideo">
              <div class="comvideo__box">
                <a class="comvideo__screen" href="https://www.youtube.com/watch?v=B8A8yR_e6VM" data-youtube="data-youtube"
                  ><span class="comvideo__txt">Real Time Exposure Management Using Ignite</span><img src="/img/usecases/high-peformance/video-6.png" alt=""
                /></a>
              </div>
              <div class="comvideo__descr pt-1"></div>
            </article>
          </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 <br />your first 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 View More Use-Cases?</span></div>
          <p class="nativebotblock__text">Check out success stories from <br />different industries across the world</p>
          <a class="nativebotblock__link arrowlink" href="/use-cases/provenusecases.html">Ignite User Stories</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">Streaming</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>
          </div>
          <a class="footer4__button button" href="https://ignite.apache.org/docs/latest/index">Start Uing 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.3"></script>
  </body>
</html>
