<!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>Features | Apache Ignite</title>
    <link rel="stylesheet" href="/js/vendor/hystmodal/hystmodal.min.css" />
    <link rel="stylesheet" href="/js/vendor/swiper/swiper-bundle.min.css" />
    <link rel="stylesheet" href="/css/utils.css" />
    <link rel="stylesheet" href="/css/site.css" />
    <link rel="stylesheet" href="/css/media.css" media="only screen and (max-width:1199px)" />
    <link rel="icon" type="image/png" href="/img/favicon.png" />
    <link rel="stylesheet" href="../css/features.css" />
  </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="/index.html">Get started</a>
                </li>
                <li>
                  <a href="/features/">Features</a>
                </li>
                <li>
                  <a href="/community.html">Community</a>
                </li>
                <li>
                  <a href="/use-cases/provenusecases.html">Powered by</a>
                </li>
                <li>
                  <a href="/docs.html">Docs</a>
                </li>
              </ul>
            </div>
            <!-- //mobmenu__menu -->
          </div>
          <!-- //mobmenu__wrap -->
        </div>
        <!-- //mobmenu -->
      </div>
    </div>
    <!-- MOBILE MENU END -->
    <header class="hdr hdr__blue">
      <div class="cmtyhero__wrap flexi">
        <button class="hdr__burger" data-menumodal="#jsMenuModal"><img src="/img/menu.svg" alt="" /></button><a class="hdr__logo" href="/"><img class="hdr__logoimg" src="/img/logo-white.svg" alt="" /></a
        ><a class="button hdr__button" href="https://ignite.apache.org/download.cgi" target="_blank">Download Ignite 2.11 </a>
        <nav class="hdrmenu">
          <ul class="flexi">
            <li><a href="/">Get started</a></li>
            <li><a class="hdrmenu__current" href="/features">Features</a></li>
            <li><a href="/community.html">Community</a></li>
            <li><a href="/use-cases/provenusecases.html">Powered by</a></li>
            <li><a href="/docs.html">Docs</a></li>
          </ul>
        </nav>
      </div>
    </header>
    <header class="hdrfloat">
      <div class="cmtyhero__wrap flexi">
        <button class="hdr__burger" data-menumodal="#jsMenuModal"><img src="/img/menu.svg" alt="" /></button><a class="hdr__logo" href="/"><img class="hdr__logoimg" src="/img/logo.svg" alt="" /></a
        ><a class="button hdr__button" href="https://ignite.apache.org/download.cgi" target="_blank">Download Ignite 2.11 </a>
        <nav class="hdrmenu">
          <ul class="flexi">
            <li><a href="/">Get started</a></li>
            <li><a class="hdrmenu__current" href="/features">Features</a></li>
            <li><a href="/community.html">Community</a></li>
            <li><a href="/use-cases/provenusecases.html">Powered by</a></li>
            <li><a href="/docs.html">Docs</a></li>
          </ul>
        </nav>
      </div>
    </header>
    <section class="innerhero">
      <div class="container innerhero__cont">
        <div class="innerhero__main">
          <div class="innerhero__pre pb-3">Apache Ignite</div>
          <h1 class="h1 innerhero__h1">Features</h1>
          <div class="innerhero__descr pt-2 h5">Scale across memory and disk with no compromises. <br />Adapt easily with essential and high-performance computing APIs.</div>
        </div>
        <img class="innerhero__pic innerhero__pic--features" src="/img/features/hero-bg.svg" alt="Apache Ignite Features" />
      </div>
    </section>
    <!-- /.innerhero-->
    <section class="features2" id="features2">
      <div class="container">
        <h2 class="h3 features2__title">Apache Ignite in-memory computing platform <br />comprises the following set of components</h2>
        <header class="blockheader blockheader--spl flexi">
          <h2 class="h4 blockheader__left">Distributed Multi-Tiered Storage</h2>
          <div class="blockheader__right fz20">
            <p>State-of-the-art storage engine that performs at in-memory <br />speed and stores data durably at unlimited scale</p>
          </div>
        </header>
        <div class="cardswrap">
          <div class="usecasecard cardsimple">
            <div class="cardsimple__icon"><img src="/img/features/01-multi-tier-storage.svg" alt="" /></div>
            <h3 class="cardsimple__title">Multi-Tier Storage</h3>
            <div class="cardsimple__text cardsimple__text--long">Chose a storage mode for your performance and capacity needs: in-memory, in-memory +&nbsp;external database, or in-memory + native persistence.</div>
            <div class="cardsimple__bottom"><a class="cardsimple__button button button--shadow" href="/arch/multi-tier-storage.html">Learn More</a></div>
          </div>
          <div class="usecasecard cardsimple">
            <div class="cardsimple__icon"><img src="/img/features/02-native-persistence.svg" alt="" /></div>
            <h3 class="cardsimple__title">Native Persistence</h3>
            <div class="cardsimple__text">Turn Ignite into a database with capacity and durability characteristics of traditional disk-based databases.</div>
            <div class="cardsimple__bottom"><a class="cardsimple__button button button--shadow" href="/arch/native-persistence.html">Learn More</a></div>
          </div>
        </div>
      </div>
    </section>
    <!-- /.features2-->
    <section class="features3">
      <div class="container">
        <header class="blockheader blockheader--spl flexi">
          <h2 class="h4 blockheader__left">Essential Developer APIs</h2>
          <div class="blockheader__right fz20">
            <p>Start with Ignite seamlessly using the APIs you are already <br />experienced with</p>
          </div>
        </header>
        <div class="cardswrap">
          <div class="usecasecard cardsimple">
            <div class="cardsimple__icon"><img src="/img/features/03-distributed-SQL.svg" alt="" /></div>
            <h3 class="cardsimple__title">Distributed SQL</h3>
            <div class="cardsimple__text">Interact with Ignite as with a regular SQL database using JDBC, ODBC drivers, or native SQL APIs.</div>
            <div class="cardsimple__bottom"><a class="cardsimple__button button button--shadow" href="/features/sql.html">Learn More</a></div>
          </div>
          <div class="usecasecard cardsimple">
            <div class="cardsimple__icon"><img src="/img/features/04-ACID-transactions.svg" alt="" /></div>
            <h3 class="cardsimple__title">ACID Transactions</h3>
            <div class="cardsimple__text cardsimple__text--long">Be sure Apache Ignite operates in a strongly consistent mode with full support for distributed ACID transactions.</div>
            <div class="cardsimple__bottom"><a class="cardsimple__button button button--shadow" href="/features/acid-transactions.html">Learn More</a></div>
          </div>
          <div class="usecasecard cardsimple">
            <div class="cardsimple__icon"><img src="/img/features/05-key-value-APIs.svg" alt="" /></div>
            <h3 class="cardsimple__title">Key Value APIs</h3>
            <div class="cardsimple__text">Use simple key-value requests for fast data look-ups and updates.</div>
            <div class="cardsimple__bottom"><a class="cardsimple__button button button--shadow" href="/features/distributed-key-value-store.html">Learn More</a></div>
          </div>
        </div>
      </div>
    </section>
    <!-- /.features3-->
    <section class="features4">
      <div class="container">
        <header class="blockheader blockheader--spl flexi">
          <h2 class="h4 blockheader__left">High-Performance Computing APIs</h2>
          <div class="blockheader__right fz20"><p>Execute kilobyte-size custom code over petabytes of data</p></div>
        </header>
        <div class="cardswrap">
          <div class="usecasecard cardsimple">
            <div class="cardsimple__icon"><img src="/img/features/06-compute-APIs.svg" alt="" /></div>
            <h3 class="cardsimple__title">Compute APIs</h3>
            <div class="cardsimple__text">Execute data-intensive and compute-intensive logic over your distributed cluster.</div>
            <div class="cardsimple__bottom"><a class="cardsimple__button button button--shadow" href="/features/compute-apis.html">Learn More</a></div>
          </div>
          <div class="usecasecard cardsimple">
            <div class="cardsimple__icon"><img src="/img/features/07-machine-learning.svg" alt="" /></div>
            <h3 class="cardsimple__title">Machine Learning</h3>
            <div class="cardsimple__text">Use built-in algorithms to train and execute machine and deep learning models at scale.</div>
            <div class="cardsimple__bottom"><a class="cardsimple__button button button--shadow" href="/features/machinelearning.html">Learn More</a></div>
          </div>
          <div class="usecasecard cardsimple">
            <div class="cardsimple__icon"><img src="/img/features/08-services.svg" alt="" /></div>
            <h3 class="cardsimple__title">Services</h3>
            <div class="cardsimple__text">Create and deploy custom micro-service on your cluster nodes.</div>
            <div class="cardsimple__bottom"><a class="cardsimple__button button button--shadow" href="/features/servicegrid.html">Learn More</a></div>
          </div>
        </div>
      </div>
    </section>
    <!-- /.features4-->
    <section class="features5">
      <div class="container">
        <header class="blockheader blockheader--spl flexi">
          <h2 class="h4 blockheader__left">Real-Time Streaming APIs</h2>
          <div class="blockheader__right fz20">
            <p>Implement event-driven architectures seamlessly <br />with the following Ignite product features:</p>
          </div>
        </header>
        <div class="cardswrap">
          <div class="usecasecard cardsimple">
            <div class="cardsimple__icon"><img src="/img/features/09-streaming.svg" alt="" /></div>
            <h3 class="cardsimple__title">Streaming</h3>
            <div class="cardsimple__text">Stream and process your data in a scalable and fault-tolerant fashion.</div>
            <div class="cardsimple__bottom"><a class="cardsimple__button button button--shadow" href="/features/streaming.html">Learn More</a></div>
          </div>
          <div class="usecasecard cardsimple">
            <div class="cardsimple__icon"><img src="/img/features/10-continuous-queries.svg" alt="" /></div>
            <h3 class="cardsimple__title">Continuous Queries</h3>
            <div class="cardsimple__text">Execute your custom logic in response to data changes happening across the cluster.</div>
            <div class="cardsimple__bottom"><a class="cardsimple__button button button--shadow" href="https://ignite.apache.org/docs/latest/key-value-api/continuous-queries">Learn More</a></div>
          </div>
          <div class="usecasecard cardsimple">
            <div class="cardsimple__icon"><img src="/img/features/11-messaging.svg" alt="" /></div>
            <h3 class="cardsimple__title">Messaging</h3>
            <div class="cardsimple__text">Exchange messages across the publisher-subscriber pattern.</div>
            <div class="cardsimple__bottom"><a class="cardsimple__button button button--shadow" href="https://ignite.apache.org/docs/latest/messaging">Learn More</a></div>
          </div>
        </div>
      </div>
    </section>
    <!-- /.features5-->
    <section class="featureslast">
      <div class="container">
        <div class="featureslast__main">
          <h2 class="h4 featureslast__title pb-1">Looking For Something Else?</h2>
          <div class="featureslast__descr fz20">Explore our technical documentation to discover Ignite's other features</div>
          <ul class="featureslast__links pt-4">
            <li><a class="arrowlink" href="https://ignite.apache.org/docs/latest/data-structures/queue-and-set">Data Structures</a></li>
            <li><a class="arrowlink" href="https://ignite.apache.org/docs/latest/clustering/clustering">Clustering</a></li>
            <li><a class="arrowlink" href="https://ignite.apache.org/docs/latest/extensions-and-integrations/spring/spring-boot">Other Integrations</a></li>
            <li><a class="arrowlink" href="/features/multilanguage.html">Multi-Language Support</a></li>
          </ul>
        </div>
      </div>
    </section>
    <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/swiper/swiper-bundle.min.js"></script>
    <script src="/js/vendor/waypoints.min.js"></script>
    <script src="/js/main.js"></script>
  </body>
</html>
