blob: b7bea99f1f9adf92594f21a366d5c0eafa848e22 [file] [log] [blame]
<!--
▄▄▄ ██▓███ ▄▄▄ ▄████▄ ██░ ██ ▓█████ ██▓ ▄████ ███▄ █ ██▓▄▄▄█████▓▓█████
▒████▄ ▓██░ ██▒▒████▄ ▒██▀ ▀█ ▓██░ ██▒▓█ ▀ ▓██▒ ██▒ ▀█▒ ██ ▀█ █ ▓██▒▓ ██▒ ▓▒▓█ ▀
▒██ ▀█▄ ▓██░ ██▓▒▒██ ▀█▄ ▒▓█ ▄ ▒██▀▀██░▒███ ▒██▒▒██░▄▄▄░▓██ ▀█ ██▒▒██▒▒ ▓██░ ▒░▒███
░██▄▄▄▄██ ▒██▄█▓▒ ▒░██▄▄▄▄██ ▒▓▓▄ ▄██▒░▓█ ░██ ▒▓█ ▄ ░██░░▓█ ██▓▓██▒ ▐▌██▒░██░░ ▓██▓ ░ ▒▓█ ▄
▓█ ▓██▒▒██▒ ░ ░ ▓█ ▓██▒▒ ▓███▀ ░░▓█▒░██▓░▒████▒ ░██░░▒▓███▀▒▒██░ ▓██░░██░ ▒██▒ ░ ░▒████▒
▒▒ ▓▒█░▒▓▒░ ░ ░ ▒▒ ▓▒█░░ ░▒ ▒ ░ ▒ ░░▒░▒░░ ▒░ ░ ░▓ ░▒ ▒ ░ ▒░ ▒ ▒ ░▓ ▒ ░░ ░░ ▒░ ░
▒ ▒▒ ░░▒ ░ ▒ ▒▒ ░ ░ ▒ ▒ ░▒░ ░ ░ ░ ░ ▒ ░ ░ ░ ░ ░░ ░ ▒░ ▒ ░ ░ ░ ░ ░
░ ▒ ░░ ░ ▒ ░ ░ ░░ ░ ░ ▒ ░░ ░ ░ ░ ░ ░ ▒ ░ ░ ░
░ ░ ░ ░░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░ ░
-->
<!--
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/use-cases/database/sql-database.html" />
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>SQL Database - Apache Ignite</title>
<link media="all" rel="stylesheet" href="/css/all.css?v=1514336027">
<link href="https://netdna.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.css" rel="stylesheet">
<link media="all" rel="stylesheet" href="/css/syntaxhighlighter.css">
<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">
<section id="sql-queries" class="page-section">
<h1 class="first">SQL Database</h1>
<div class="col-sm-12 col-md-12 col-xs-12" style="padding:0 0 20px 0;">
<div class="col-sm-6 col-md-7 col-xs-12" style="padding-left:0;">
<p>
SQL is still considered to be a mainstream language for non trivial data processing. Nowadays,
the language is no longer a prerogative of relational databases and being supported by
databases and platforms of architectures different from the relational one.
</p>
<p>
Apache Ignite's SQL level of support is so extensive that the platform is widely used as a
full-fledged <b>SQL database</b>. Combining Ignite's SQL capabilities together with its
distributed core you get a horizontally scalable, fault tolerant and always available SQL database.
</p>
<div class="page-heading">Performance and Durability</div>
<p>
With Ignite <a href="/features/durablememory.html">Durable Memory</a>
architecture, data as well as indexes can be stored both in memory and, optionally, on disk.
This allows executing distributed SQL operations across different memory layers
achieving in-memory performance with the durability of disk.
If the <a href="/features/persistence.html">disk layer</a>
is disabled Apache Ignite can be utilized as an
<a href="/use-cases/database/in-memory-database.html"><b>in-memory</b> database</a>.
</p>
</div>
<div class="col-sm-6 col-md-5 col-xs-12" style="padding-right:0">
<img class="img-responsive" src="/images/sql_database.png" width="400px" style="float:right;"/>
</div>
</div>
<div class="page-heading">SQL ANSI-99 Compliance</div>
<p>
Ignite complies with SQL ANSI-99 standard supporting all <b>SQL</b> and <b>DML</b> commands,
including SELECT, UPDATE, INSERT, MERGE, DELETE statements and distributed joins. It also provides
support for a subset of <b>DDL</b> commands relevant for distributed SQL databases.
</p>
<div class="page-heading">Languages and Tools</div>
<p>
You can interact with Apache Ignite using the SQL language via natively developed APIs for Java,
.NET and C++, or via the Ignite <b>JDBC</b> or <b>ODBC</b> drivers. This provides a true
cross-platform connectivity from an endless number of SQL tools and programming languages.
</p>
<p>
Check <a href="/features/sql.html">SQL</a> section for more details or start using
Ignite as a SQL database referring to
<a href="https://apacheignite.readme.io/docs/getting-started-sql" target="_blank">SQL Getting Started Guide</a>
</p>
</section>
</main>
<!--#include virtual="/includes/footer.html" -->
</div>
<!--#include virtual="/includes/scripts.html" -->
</body>
</html>