| <!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>Distributed ACID Transactions - Apache Ignite</title> |
| <meta |
| name="description" |
| content="Apache Ignite can operate in a strongly consistent mode with full support for distributed ACID transactions. Ignite is an ACID compliant storage engine which can handle possible distributed failures properly to avoid data inconsistencies cluster-wide." |
| /> |
| <link rel="canonical" href="https://ignite.apache.org/features/acid-transactions.html" /> |
| <meta property="og:title" content="Distributed ACID Transactions - Apache Ignite" /> |
| <meta property="og:type" content="article" /> |
| <meta property="og:url" content="https://ignite.apache.org/features/acid-transactions.html" /> |
| <meta property="og:image" content="/img/og-pic.png" /> |
| <meta |
| property="og:description" |
| content="Apache Ignite can operate in a strongly consistent mode with full support for distributed ACID transactions. Ignite is an ACID compliant storage engine which can handle possible distributed failures properly to avoid data inconsistencies cluster-wide." |
| /> |
| <link rel="stylesheet" href="/js/vendor/hystmodal/hystmodal.min.css?ver=0.9" /> |
| <link rel="stylesheet" href="/css/utils.css?ver=0.9" /> |
| <link rel="stylesheet" href="/css/site.css?ver=0.9" /> |
| <link rel="stylesheet" href="../css/native-persistence.css?ver=0.9" /> |
| <link rel="stylesheet" href="../css/acid-transactions.css?ver=0.9" /> |
| <link rel="stylesheet" href="/css/media.css?ver=0.9" media="only screen and (max-width:1199px)" /> |
| <link rel="icon" type="image/png" href="/img/favicon.png" /> |
| <!-- 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> |
| |
| <!-- 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 --> |
| </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"> |
| <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.1</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__current 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"> </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"> </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"> </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"> |
| <div class="innerhero__pre pb-5">Apache Ignite</div> |
| <h1 class="h1 innerhero__h1">Distributed ACID <br />Transactions</h1> |
| <div class="innerhero__descr pt-4 h5">Classical ACID transactions that let you update distributed data <br />consistently, durably and with in-memory speed</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--acid" src="/img/features/acid/hero.svg" alt="Distributed ACID transactions" /> |
| </div> |
| </section> |
| <!-- /.innerhero--> |
| <section class="acid1 container"> |
| <h2 class="acid1__h2 h4">Update multiple records from different tables that span across many cluster nodes</h2> |
| <div class="acid1__wrap flexi"> |
| <div class="acid1__item"> |
| <div class="acid1__title fz20">Consistency</div> |
| <div class="acid1__text pt-3"><p>Ignite transactional APIs are used by banks to implement payments services that transfer money between accounts in real-time.</p></div> |
| </div> |
| <div class="acid1__item"> |
| <div class="acid1__title fz20">Durability</div> |
| <div class="acid1__text pt-3"><p>Multi-tier storage persists changes durably to disk. Committed transactions always survive failures, and incomplete transactions are rolled back.</p></div> |
| </div> |
| <div class="acid1__item"> |
| <div class="acid1__title fz20">Fault-Tolerance</div> |
| <div class="acid1__text pt-3"><p>The transactional engine avoids inconsistencies even if your transaction fails halfway through.</p></div> |
| </div> |
| </div> |
| </section> |
| <!-- /.acid1--> |
| <section class="acid2 container"> |
| <h2 class="acid2__h2"> |
| To guarantee data consistency, durability and fault-tolerance,<br /> |
| <strong>Ignite implements a two-phase commit protocol</strong> |
| </h2> |
| <div class="acid2__wrap flexi pt-5"> |
| <div class="acid2__main"> |
| <p>In distributed systems, a transaction usually spans multiple cluster nodes.</p> |
| <p>To handle possible distributed failures properly and avoid data inconsistencies cluster-wide, a two-phase commit protocol (2PC) is used.</p> |
| <h3 class="acid2__subtitle h5 pb-2">How ACID transactions work</h3> |
| <p>Whenever the records get updated within a transaction, Ignite keeps the transactional state in a local transaction map until the changes are committed.</p> |
| <p>From here, the data is transferred to the participating remote nodes. Only the nodes that hold primary or backup copies of the data participate in the transaction.</p> |
| <p>If a transaction is mapped to a single node, then Ignite optimizes the transaction execution by switching to the one-phase-commit (1PC) protocol.</p> |
| </div> |
| <aside class="acid2__right"><img class="acid2__funcimg" src="/img/features/acid/acid-func.svg" alt="" /></aside> |
| </div> |
| </section> |
| <!-- /.acid2--> |
| <section class="acid3 container pt-5"> |
| <h2 class="h4 acid3__title">Records are updated consistently across <br />memory and disk tiers</h2> |
| <div class="acid3__wrap pt-5 flexi"> |
| <div class="acid3__col"> |
| <h3 class="h5 pb-2">Transactions with Ignite native persistence</h3> |
| <p class="fz20 acid3__collead">In case of any failure you can always recover to a consistent state</p> |
| <div class="acid3__small pt-4"> |
| <p> |
| When native persistence mode is enabled and Apache Ignite is used as a database that scales beyond available memory capacity, the distributed transactions update data across memory and disk |
| in a consistent way. |
| </p> |
| <p> |
| All the changes stay durable, because they are written to the write-ahead log (WAL) files. It guarantees data consistency even if the cluster or individual nodes go down in the middle |
| of a transaction. |
| </p> |
| </div> |
| <a class="acid3__detlink" href="#" data-hideopen="acidbox"> WAL in details</a> |
| <div class="acid3__detwrap" data-hidebox="acidbox"> |
| <div class="acid3__detmore"> |
| <button class="acid3__close" data-hideopen="acidbox"><img src="/img/features/acid/icon-cross.svg" alt="" /></button> |
| <p>The purpose of the WAL is to propagate updates to the disk in the append-only mode, which is the fastest way to persist data to disk.</p> |
| <p class="pt-1"> |
| The WAL provides a recovery mechanism for failure scenarios when a single node or the whole cluster goes down. A cluster can always be recovered to the latest successfully committed transaction. |
| </p> |
| </div> |
| </div> |
| </div> |
| <div class="acid3__col"> |
| <h3 class="h5 pb-2">Transactions with external databases</h3> |
| <p class="fz20 acid3__collead">Your transactions will be updated both in the external database and in Apache Ignite</p> |
| <div class="acid3__small pt-4"> |
| <p> |
| When Apache Ignite is used as a caching layer for an external database, such as RDBMS, transactions span the cached data in Ignite as well as the data persisted in a database |
| supporting transactional APIs. |
| </p> |
| <p> |
| For instance, if a relational database is configured as a disk tier, Ignite writes the transactional changes to the database before sending a commit message to participating cluster |
| nodes. |
| </p> |
| <p>This way, if a transaction fails at the database level, Ignite can still send the rollback message to the cluster nodes, keeping the data consistent across memory and disk tiers.</p> |
| </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">Create your transactional application <br />with Apache Ignite</p> |
| <a class="nativebotblock__link arrowlink" href="https://ignite.apache.org/docs/latest/key-value-api/transactions" target="_blank">Performing ACID Transactions</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">Ignite 3.0 advances its replication and transactional components with the support of the <strong>Raft consensus algorithm</strong></p> |
| <a class="nativebotblock__link arrowlink" href="https://cwiki.apache.org/confluence/display/IGNITE/IEP-61%3A+Common+Replication+Infrastructure" target="_blank">Ignite 3.0 and Raft Details</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="/our-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.9"></script> |
| </body> |
| </html> |