Skip to content

Commit ed13dca

Browse files
committed
Add the Overview article draft
1 parent 78fd958 commit ed13dca

File tree

2 files changed

+133
-0
lines changed

2 files changed

+133
-0
lines changed

conf.py

+1
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
'sphinx.ext.ifconfig',
2222
'sphinx.ext.intersphinx',
2323
'sphinx.ext.extlinks',
24+
'sphinx_panels',
2425
'sphinxcontrib.plantuml',
2526
'ext.custom',
2627
'ext.LuaDomain',

doc/overview.rst

+132
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,132 @@
1+
Overview
2+
========
3+
4+
What is Tarantool?
5+
------------------
6+
7+
Tarantool combines an in-memory DBMS and a Lua server in a single platform, which
8+
provides ACID-compliant storage. It comes in :ref:`open-source and commercial editions <overview-editions>`.
9+
The :ref:`use cases <overview-use_cases>` for Tarantool vary from ultra-fast cache
10+
to product data marts and smart queue services.
11+
12+
Here are some of Tarantool's key characteristics:
13+
14+
.. panels::
15+
:container: doc-cards
16+
:column: doc-card doc-card_big
17+
:card: doc-card__content
18+
:header: doc-card__title
19+
:body: doc-card__text
20+
21+
Row-based storage data
22+
^^^^^^^^^^^^^^^^^^^^^^
23+
Data is stored in tuples
24+
---
25+
Easy handling of OLTP workloads
26+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
27+
Processes hundreds of thousands RPS
28+
---
29+
Data integrity
30+
^^^^^^^^^^^^^^
31+
Write-ahead log (WAL) and data snapshots
32+
---
33+
Cooperative multitasking
34+
^^^^^^^^^^^^^^^^^^^^^^^^
35+
Transactions are performed in lightweight coroutines with no interthread locking
36+
---
37+
Advanced indexing
38+
^^^^^^^^^^^^^^^^^
39+
Composite indexes, locale support, indexing by nested fields and arrays
40+
---
41+
Compute close to data
42+
^^^^^^^^^^^^^^^^^^^^^
43+
Lua server and Just-In-Time compiler on board
44+
---
45+
Durable replication
46+
^^^^^^^^^^^^^^^^^^^
47+
Multiple failover modes and RAFT-based synchronous replication available
48+
49+
Tarantool allows executing code alongside data, which helps increase the speed of operations.
50+
Developers can implement any business logic with Lua,
51+
and a single Tarantool instance can also receive SQL requests.
52+
53+
Tarantool has a variety of compatible `modules <https://www.tarantool.io/en/download/rocks>`__ (Lua rocks).
54+
You can pick the ones that you need and install them manually.
55+
56+
Tarantool runs on Linux (x86_64, aarch64), Mac OS X (x86_64, M1), and FreeBSD (x86_64).
57+
58+
You can use Tarantool with a programming language you're familiar with.
59+
For this purpose, a number of :ref:`connectors <getting_started_connectors>` are provided.
60+
61+
.. _overview-editions:
62+
63+
Editions
64+
--------
65+
66+
Tarantool comes in two editions: the open-source **Community Edition (CE)**
67+
and the commercial **Enterprise Edition (EE)**.
68+
69+
**Tarantool CE** lets you develop applications and speed up a system in operation.
70+
It features :ref:`synchronous replication <repl_sync>`, affords easy :ref:`scalability <sharding>`,
71+
and includes tools to develop efficient :ref:`applications <app_server>`.
72+
The `Tarantool community <https://t.me/tarantool>`__ helps with any practical questions
73+
regarding the Community Edition.
74+
75+
**Tarantool EE** `provides advanced tools <https://www.tarantool.io/en/compare/>`__ for
76+
administration, deployment, and security management, along with premium support services.
77+
This edition includes all the Community Edition features
78+
and is more predictable in terms of solution cost and maintenance.
79+
The Enterprise Edition is shipped as an SDK and includes a number of closed-source modules.
80+
See the `documentation for Tarantool EE <https://www.tarantool.io/en/enterprise_doc/>`__.
81+
82+
For a focus on business logic, try `Tarantool Data Grid <https://www.tarantool.io/en/datagrid/>`__ --
83+
a data integration tool with a web GUI perfectly suitable for non-programmers.
84+
Tarantool Data Grid is also based on the Community Edition.
85+
See the `documentation for Tarantool Data Grid <https://www.tarantool.io/en/tdg/1.6/>`__.
86+
87+
.. _overview-use_cases:
88+
89+
Use cases
90+
---------
91+
92+
Fast first-class storage
93+
~~~~~~~~~~~~~~~~~~~~~~~~
94+
95+
* Primary storage
96+
97+
- No secondary storage required
98+
99+
* Tolerance to high write loads
100+
* Support of relational approaches
101+
* Composite secondary indexes
102+
103+
- Data access, data slices
104+
105+
* Predictable request latency
106+
* Read available even when the disk is down
107+
108+
Advanced cache
109+
~~~~~~~~~~~~~~
110+
111+
* Write-behind caching
112+
* Secondary index support
113+
* Complex invalidation algorithm support
114+
115+
Smart queue
116+
~~~~~~~~~~~
117+
118+
* Support of various identification techniques
119+
* Advanced task lifecycle management
120+
121+
- Task scheduling
122+
- Archiving of completed tasks
123+
124+
Data-centric applications
125+
~~~~~~~~~~~~~~~~~~~~~~~~~
126+
127+
* Arbitrary data flows from many sources
128+
* Incoming data processing
129+
* Storage
130+
* Background cycle processing
131+
132+
- Scheduling support

0 commit comments

Comments
 (0)