| <!-- |
| ▄▄▄ ██▓███ ▄▄▄ ▄████▄ ██░ ██ ▓█████ ██▓ ▄████ ███▄ █ ██▓▄▄▄█████▓▓█████ |
| ▒████▄ ▓██░ ██▒▒████▄ ▒██▀ ▀█ ▓██░ ██▒▓█ ▀ ▓██▒ ██▒ ▀█▒ ██ ▀█ █ ▓██▒▓ ██▒ ▓▒▓█ ▀ |
| ▒██ ▀█▄ ▓██░ ██▓▒▒██ ▀█▄ ▒▓█ ▄ ▒██▀▀██░▒███ ▒██▒▒██░▄▄▄░▓██ ▀█ ██▒▒██▒▒ ▓██░ ▒░▒███ |
| ░██▄▄▄▄██ ▒██▄█▓▒ ▒░██▄▄▄▄██ ▒▓▓▄ ▄██▒░▓█ ░██ ▒▓█ ▄ ░██░░▓█ ██▓▓██▒ ▐▌██▒░██░░ ▓██▓ ░ ▒▓█ ▄ |
| ▓█ ▓██▒▒██▒ ░ ░ ▓█ ▓██▒▒ ▓███▀ ░░▓█▒░██▓░▒████▒ ░██░░▒▓███▀▒▒██░ ▓██░░██░ ▒██▒ ░ ░▒████▒ |
| ▒▒ ▓▒█░▒▓▒░ ░ ░ ▒▒ ▓▒█░░ ░▒ ▒ ░ ▒ ░░▒░▒░░ ▒░ ░ ░▓ ░▒ ▒ ░ ▒░ ▒ ▒ ░▓ ▒ ░░ ░░ ▒░ ░ |
| ▒ ▒▒ ░░▒ ░ ▒ ▒▒ ░ ░ ▒ ▒ ░▒░ ░ ░ ░ ░ ▒ ░ ░ ░ ░ ░░ ░ ▒░ ▒ ░ ░ ░ ░ ░ |
| ░ ▒ ░░ ░ ▒ ░ ░ ░░ ░ ░ ▒ ░░ ░ ░ ░ ░ ░ ▒ ░ ░ ░ |
| ░ ░ ░ ░░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ |
| --> |
| |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| |
| <!DOCTYPE html> |
| <html> |
| <head> |
| <link rel="canonical" href="https://ignite.apache.org/whatisignite.html" /> |
| <meta charset="utf-8"> |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" /> |
| <meta http-equiv="Pragma" content="no-cache" /> |
| <meta http-equiv="Expires" content="0" /> |
| <title>What is Apache Ignite</title> |
| <meta name="description" content="Apache Ignite components and facts: in-memory and persistent modes, distributed SQL database, in-memory data grid, in-memory database, ACID transactions, collocated processing, and more..."/> |
| <link media="all" rel="stylesheet" href="/css/all.css?v=1514336028"/> |
| <link href="https://netdna.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.css" rel="stylesheet"/> |
| <link href='https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic,800,800italic' rel='stylesheet' type='text/css'/> |
| |
| <!--#include virtual="/includes/sh.html" --> |
| </head> |
| <body> |
| <div id="wrapper"> |
| <!--#include virtual="/includes/header.html" --> |
| |
| <main id="main" role="main" class="container"> |
| <div class="col-sm-12 col-md-12 col-xs-12" style="padding: 0px;"> |
| <section id="whatisignite" class="page-section" style="border: none;"> |
| <h1 class="first heading" style="text-align: center;"><span>Apache Ignite™ is ...</span></h1> |
| <div class="col-sm-12 col-md-12 col-xs-12 description-block"> |
| <p style="text-align: center;">memory-centric distributed |
| <strong>database</strong>, <strong>caching</strong>, and <strong>processing</strong> platform <br/> |
| for transactional, analytical, and streaming workloads,<br/> |
| delivering <nobr>in-memory</nobr> speeds at petabyte scale |
| </p> |
| </div> |
| <div class="col-sm-12 col-md-12 col-xs-12 img-holder"> |
| <a href="/images/durable-memory.png"><img class="img-responsive" src="/images/ignite_architecture.png" alt="Apache Ignite Architecture" width="600px;"/></a> |
| </div> |
| </section> |
| </div> |
| <div class="col-sm-12 col-md-12 col-xs-12" style="top: -50px; padding: 0px;"> |
| <div class="section-heading"> |
| <h2 style="text-align: center;">IGNITE FACTS</h2> |
| </div> |
| <hr> |
| <section id="ignite-facts" class="page-section"> |
| <div class="col-sm-12 col-md-12 col-xs-12 fact-panel"> |
| <div class="col-sm-6 col-md-6 col-xs-12 left"> |
| <h3 class="ignite-facts-question">Is Ignite an in-memory database?</h3> |
| <p> |
| <strong>Yes</strong>. Even though Ignite durable memory works well in-memory and on-disk, the disk |
| persistence can be disabled and Ignite can act as a distributed in-memory database, with |
| support for SQL and distributed joins. |
| </p> |
| <p style="margin-top: 10px;">Read more: <a href="/use-cases/database/in-memory-database.html">In-Memory Database</a></p> |
| </div> |
| |
| <div class="col-sm-6 col-md-6 col-xs-12 right"> |
| <h3 class="ignite-facts-question">Is Ignite an in-memory data grid?</h3> |
| <p> |
| <strong>Yes</strong>. Ignite is a full-featured distributed key-value data grid, which can be used either in |
| memory-only mode or with Ignite native persistence. It can also automatically integrate with any 3rd party databases, |
| including any RDBMS or NoSQL stores. |
| </p> |
| <p style="margin-top: 10px;">Read more: <a href="/features/datagrid.html">In-Memory Data Grid</a></p> |
| </div> |
| </div> |
| |
| <div class="col-sm-12 col-md-12 col-xs-12 fact-panel"> |
| |
| <div class="col-sm-6 col-md-6 col-xs-12 left"> |
| |
| <h3 class="ignite-facts-question">Is Ignite a distributed cache?</h3> |
| <p> |
| <strong>Yes</strong>. When native persistence is disabled, Ignite becomes a distributed cache. |
| Ignite implements JCache specification (JSR 107) and provides |
| a lot more functionality than required by the specification, including partitioned and replicated |
| distribution modes, distributed ACID transactions, SQL queries, native persistence, and more. |
| </p> |
| <p style="margin-top: 10px;">Read more: <a href="/use-cases/caching/database-caching.html">Database Caching</a></p> |
| </div> |
| |
| <div class="col-sm-6 col-md-6 col-xs-12 right"> |
| <h3 class="ignite-facts-question">Is Ignite a distributed database?</h3> |
| <p> |
| <strong>Yes</strong>. Data in Ignite is either partitioned or replicated across a cluster of |
| multiple nodes. This provides scalability and adds resiliency to the system. Ignite automatically |
| controls how data is partitioned, however, users can plugin their own distribution (affinity) functions |
| and collocate various pieces of data together for efficiency. |
| </p> |
| <p style="margin-top: 10px;">Read more: <a href="/use-cases/database/distributed-database.html">Distributed Database</a></p> |
| </div> |
| </div> |
| |
| <div class="col-sm-12 col-md-12 col-xs-12 fact-panel"> |
| |
| <div class="col-sm-6 col-md-6 col-xs-12 left"> |
| <h3 class="ignite-facts-question">Is Ignite an SQL database?</h3> |
| <p> |
| <strong>Not fully</strong>. Although Ignite aims to behave like any other relational SQL database, |
| there are differences in how Ignite handles constraints and indexes. Ignite supports primary and |
| secondary indexes, however, the uniqueness can only be enforced for the primary indexes. |
| Ignite also does not support foreign key constraints. |
| </p> |
| <p style="margin-top: 10px;">Read more: <a href="/use-cases/database/sql-database.html">SQL Database</a></p> |
| </div> |
| |
| <div class="col-sm-6 col-md-6 col-xs-12 right"> |
| <h3 class="ignite-facts-question">Is Ignite a disk or memory-only storage?</h3> |
| <p> |
| <strong>Both</strong>. Native persistence in Ignite can be turned on and off. This allows Ignite to store |
| data sets bigger than can fit in the available memory. Essentially, smaller operational data sets |
| can be stored in-memory only, and larger data sets that do not fit in memory can be stored on disk, |
| using memory as a caching layer for better performance. |
| </p> |
| <p style="margin-top: 10px;">Read more: <a href="/arch/persistence.html" target="_blank">Native Persistence</a></p><br/><br/> |
| </div> |
| </div> |
| |
| <div class="col-sm-12 col-md-12 col-xs-12 fact-panel"> |
| |
| <div class="col-sm-6 col-md-6 col-xs-12 left"> |
| <h3 class="ignite-facts-question">Is Ignite a NoSQL database?</h3> |
| <p> |
| <strong>Not exactly</strong>. Just like other NoSQL databases, Ignite is highly available and |
| horizontally scalable. However, unlike other NoSQL databases, Ignite supports SQL and ACID transactions |
| across multiple cluster nodes. |
| </p> |
| <p style="margin-top: 10px;">Read more: <a href="/use-cases/comparison/ignite-for-nosql.html">Ignite for NoSQL</a></p> |
| </div> |
| |
| <div class="col-sm-6 col-md-6 col-xs-12 right"> |
| <h3 class="ignite-facts-question">Is Ignite a transactional database?</h3> |
| <p> |
| <strong>Not fully</strong>. ACID Transactions are supported, but only at key-value API level. |
| Ignite also supports cross-partition transactions, which means that transactions can span keys |
| residing in different partitions on different servers. <br/> <br/> |
| At SQL level Ignite supports atomic, but not yet transactional consistency. Ignite community plans |
| to implement SQL transactions in version 2.5. |
| </p> |
| <p style="margin-top: 10px;">Read more: <a href="https://apacheignite.readme.io/docs/transactions">ACID Transactions</a></p> |
| </div> |
| </div> |
| |
| <div class="col-sm-12 col-md-12 col-xs-12 fact-panel"> |
| |
| <div class="col-sm-6 col-md-6 col-xs-12 left"> |
| <h3 class="ignite-facts-question">Is Ignite a multi-model database?</h3> |
| <p> |
| <strong>Yes</strong>. Ignite supports both, key-value and SQL for modelling and accessing data. |
| In addition, Ignite provides strong processing APIs for computing on distributed data. |
| </p> |
| <p style="margin-top: 10px;">Read more: <a href="/use-cases/database/distributed-database.html">Distributed Database</a></p> |
| </div> |
| |
| <div class="col-sm-6 col-md-6 col-xs-12 right"> |
| <h3 class="ignite-facts-question">Is Ignite a key-value store?</h3> |
| <p> |
| <strong>Yes</strong>. Ignite provides a feature rich key-value API, that is JCache (JSR-107) compliant |
| and supports Java, C++, <nobr>and .NET.</nobr> |
| </p> |
| <p style="margin-top: 10px;">Read more: <a href="/use-cases/database/key-value-store-database.html">Key-Value Store</a></p><br/><br/> |
| </div> |
| </div> |
| <div class="col-sm-12 col-md-12 col-xs-12 fact-panel"> |
| <h3 style="color:black">Book</h3> |
| <p>Learn even more from <a href="http://a.co/h4MBi1v" target="_blank">High-Performance in-memory computing with Apache Ignite</a> book.</p> |
| </div> |
| </section> |
| </div> |
| </main> |
| |
| <!--#include virtual="/includes/footer.html" --> |
| </div> |
| <!--#include virtual="/includes/scripts.html" --> |
| </body> |
| </html> |