Documentation
Getting started
Get started in minutes
Tarantool
In-memory computing platform
Data Grid
Enterprise data services with ease
Tarantool Cluster Manager
Cluster Management for Tarantool
Modules
Extensions for the database
Connectors
Language APIs
Enterprise Edition
Advanced support and features
Tarantool Queue Enterprise (MQ)
Distributed in‑memory message queuing system
Tarantool DB
NoSQL DBMS
Tarantool DB (RESP)
RESP endpoint
Tarantool Clusters Federation
Cross data center replication (xDCR) module
Tarantool CDC
Sign in
Sign in
Sign up
Download
En
Ru
Sign in
Sign up
Download
Products
Tarantool Еnterprise
Tarantool Cloud Edition
Tarantool Data Grid
Tarantool Kubernetes Operator
Tarantool CDC
Tarantool Clusters Federation
Tarantool DB
VK Cloud Storage
Enterprise vs Community
Documentation
Architectural patterns
Tarantool
Cartridge
Data Grid
Connectors
Modules
Tarantool Enterprise
How to guides
Services
Premium support
Learn
Solutions
Architecture
Company
Contacts
Careers
Clients
Version:
latest (3.x)
2.11
1.10
1.6
Overview
Getting started
Installing Tarantool
Creating your first Tarantool database
Creating a sharded cluster
Getting started with Tarantool Cluster Manager
Platform
Concepts
Storage engines
Storing data with memtx
Storing data with vinyl
Difference between memtx and vinyl storage engines
Configuration
Centralized configuration storages
Configuration in code
Storage
In-memory storage
Persistence
WAL extensions
Defining and manipulating data
Data storage
Indexes
Using indexes
Tuple compression
Data schema description
Operations
CRUD operation examples
Using sequences
Migrations
Centralized migrations with tt
Basic tt migrations tutorial
Data migrations with space.upgrade()
Extending the cluster
Troubleshooting migrations
Upgrading space schema
Read views
SQL guides
SQL beginners’ guide
SQL tutorial
Improving MySQL with Tarantool
Transactions
Transaction model
Thread model
Transaction mode: default
Transaction mode: MVCC
Replication
Replication architecture
Synchronous replication
Automated leader election
Supervised failover
Replication tutorials
Master-replica: manual failover
Master-replica: automated failover
Master-master
Sharding
Architecture
Sharding with vshard
Connections and authentication
Connections
Credentials
Authentication
Security
Audit module
Security audit
Security hardening guide
Triggers
Applications
Launching an application
Application roles
Fibers, yields, and cooperative multitasking
Lua cookbook recipes
Lua tutorials
Tips on Lua syntax
Enterprise modules
Creating an application
Modules, rocks and applications
Avro schemas
Bootstrapping a database
GIS
Index iterators
Fibers, yields and cooperative multitasking
Logging
nginx
Non-blocking IO
C tutorial
Developing with an IDE
Tooling
tt CLI utility
Installation
Configuration
Global options
Developing applications
Application environment
Starting and stopping instances
Commands
binaries
build
cartridge
cat
cfg
check
clean
cluster
completion
connect
coredump
create
crud
download
enable
export
help
import
init
install
instances
kill
log
logrotate
migrations
pack
play
replicaset
restart
rocks
run
search
start
status
stop
tdg2
uninstall
version
Extending the tt functionality
tt interactive console
Migration from tarantoolctl to tt
Tarantool Cluster Manager
Web interface overview
Connecting clusters
Cluster management
Viewing cluster state
Configuring clusters
Managing cluster users and roles
Security settings
Viewing cluster metrics
Using supervised failover
Performing migrations
TCF integration
Accessing cluster data
Access control
Role-based access control
LDAP authentication
Access control list
API tokens
Sessions
Audit log
Configuration
Backend store
Development mode
Configuration reference
Releases
Tarantool Cluster Manager 1.2
Tarantool Cluster Manager 1.1
Tarantool Cluster Manager 1.0
Interactive console
LuaJIT memory profiler
LuaJIT getmetrics
Administration
Managing modules
Logs
Security
Access control
Replication administration
Monitoring a replica set
Recovering from a degraded state
Reseeding a replica
Resolving replication conflicts
Server introspection
Daemon supervision
Disaster recovery
Backups
Upgrades
Standalone instance upgrade
Replication cluster upgrade
Live upgrade from Tarantool 1.6 to 1.10
Upgrade from 1.6 directly to 2.x with downtime
Fix decimal values in vinyl spaces when upgrading to 2.10.1
Fix illegal type names when upgrading to 2.10.4
Recover from WALs with mixed transactions when upgrading to 2.11.0
Bug reports
Flight recorder
Monitoring
Getting started with monitoring
Grafana dashboard
Alerting
Metrics reference
Notes for operating systems
Troubleshooting guide
Connectors
Go
Java
C
Python
C++
Connecting to Tarantool from C++
C++ connector API
Community-supported connectors
C#
Node.js
Perl
PHP
Reference
Configuration reference
Configuration reference (box.cfg)
tarantool command-line options
SQL reference
What Tarantool’s SQL product delivers
SQL user guide
SQL statements and clauses
SQL PLUS LUA – Adding Tarantool/NoSQL to Tarantool/SQL
SQL features
Built-in modules reference
Module box
Submodule box.backup
box.backup.start()
box.backup.stop()
Submodule box.cfg
Submodule box.ctl
box.ctl.wait_ro()
box.ctl.wait_rw()
box.ctl.on_schema_init()
box.ctl.on_shutdown()
box.ctl.on_recovery_state()
box.ctl.on_election()
box.ctl.set_on_shutdown_timeout()
box.ctl.is_recovery_finished()
box.ctl.promote()
box.ctl.demote()
box.ctl.make_bootstrap_leader()
Submodule box.error
box.error()
box.error.last()
box.error.clear()
box.error.new()
box.error.set()
error_object
Submodule box.index
Examples for
box.index
space_object:create_index()
index_object.unique
index_object.type
index_object:parts
index_object:pairs()
index_object:select()
index_object:get()
index_object:min()
index_object:max()
index_object:random()
index_object:count()
index_object:update()
index_object:delete()
index_object:alter()
index_object:drop()
index_object:rename()
index_object:bsize()
index_object:stat()
index_object:compact()
index_object:tuple_pos()
index_object extensions
Submodule box.info
box.info()
box.info.cluster
box.info.config
box.info.election
box.info.gc()
box.info.hostname
box.info.id
box.info.listen
box.info.lsn
box.info.memory()
box.info.name
box.info.package
box.info.pid
box.info.replicaset
box.info.replication
box.info.replication_anon()
box.info.ro
box.info.ro_reason
box.info.schema_version
box.info.signature
box.info.sql
box.info.status
box.info.synchro
box.info.uptime
box.info.uuid
box.info.vclock
box.info.version
box.info.vinyl()
Submodule box.iproto
box.iproto.key
box.iproto.type
box.iproto.flag
box.iproto.ballot_key
box.iproto.metadata_key
box.iproto.raft
box.iproto.protocol_version
box.iproto.protocol_features
box.iproto.feature
box.iproto.override()
box.iproto.send()
Submodule box.read_view
box.read_view.list()
box.read_view.open()
Submodule box.schema
box.schema.space.create()
box.schema.upgrade()
box.schema.downgrade()
box.schema.downgrade_versions()
box.schema.downgrade_issues()
box.schema.user.create()
box.schema.user.drop()
box.schema.user.exists()
box.schema.user.grant()
box.schema.user.revoke()
box.schema.user.password()
box.schema.user.passwd()
box.schema.user.info()
box.schema.role.create()
box.schema.role.drop()
box.schema.role.exists()
box.schema.role.grant()
box.schema.role.revoke()
box.schema.role.info()
box.schema.func.create()
box.schema.func.drop()
box.schema.func.exists()
box.schema.func.reload()
Sequences
box.schema.sequence.create()
sequence_object:next()
sequence_object:alter()
sequence_object:reset()
sequence_object:set()
sequence_object:current()
sequence_object:drop()
specifying a sequence in create_index()
Submodule box.session
box.session.id()
box.session.exists()
box.session.peer()
box.session.sync()
box.session.user()
box.session.type()
box.session.su()
box.session.uid()
box.session.euid()
box.session.storage
box.session.on_connect()
box.session.on_disconnect()
box.session.on_auth()
box.session.on_access_denied()
box.session.push()
Submodule box.slab
box.runtime.info()
box.slab.info()
box.slab.stats()
Submodule box.space
box.schema.space.create()
space_object:alter()
space_object:auto_increment()
space_object:bsize()
space_object:count()
space_object:create_index()
space_object:delete()
space_object:drop()
space_object:format()
space_object:frommap()
space_object:get()
space_object:insert()
space_object:len()
space_object:on_replace()
space_object:before_replace()
space_object:pairs()
space_object:put()
space_object:rename()
space_object:replace() / put()
space_object:run_triggers()
space_object:select()
space_object:stat()
space_object:truncate()
space_object:update()
space_object:upsert()
space_object extensions
box.space.create_check_constraint()
space_object:enabled
space_object:field_count
space_object.id
space_object.index
box.space._cluster
box.space._func
box.space._index
box.space._vindex
box.space._priv
box.space._vpriv
box.space._schema
box.space._sequence
box.space._sequence_data
box.space._space
box.space._vspace
box.space._space_sequence
box.space._vspace_sequence
box.space._user
box.space._vuser
box.space._ck_constraint
box.space._collation
box.space._vcollation
System space views
box.space._session_settings
Submodule box.stat
box.stat()
box.stat.net()
box.stat.memtx()
box.stat.vinyl()
box.stat.reset()
Submodule box.tuple
box.tuple.new()
box.tuple.is()
#tuple_object
box.tuple.bsize()
tuple_object[field-number]
tuple_object[field-name]
tuple_object[field-path]
tuple_object:find(), tuple_object:findall()
tuple_object.info()
tuple_object:next()
tuple_object:pairs(), tuple_object:ipairs()
tuple_object:totable()
tuple_object:tomap()
tuple_object:transform()
tuple_object:unpack()
tuple_object:update()
tuple_object:upsert()
Functions for transaction management
box.begin()
box.commit()
box.rollback()
box.savepoint()
box.rollback_to_savepoint()
box.atomic()
box.on_commit()
box.on_rollback()
box.is_in_txn()
Functions for SQL
box.execute()
box.prepare()
object prepared_table
Event watchers
box.watch()
box.broadcast()
System events
Function box.once
Function box.snapshot
Constant box.NULL
Module buffer
Module checks
Module clock
Module compat
JSON encode escape forward slash
Lua-YAML prettier multiline output
Fiber channel close mode
Default value for replication_sync_timeout
Default value for sql_seq_scan session setting
Default value for max fiber slice
Decoding binary objects
Tutorial: Module compat
Module compress
Submodule compress.zlib
Submodule compress.zstd
Submodule compress.lz4
Module config
Submodule experimental.config.utils.schema
Module console
Module crypto
Module csv
Module datetime
Module decimal
Module digest
Module errno
Module experimental.connpool
Module fiber
Module fio
Module fun
Module http
Module iconv
Module jit
Module json
Module key_def
Module log
Module merger
Module metrics
metrics.plugins.prometheus
metrics.plugins.graphite
metrics.plugins.json
Module msgpack
Module net.box
Module os
Module pickle
Module popen
Module socket
Module strict
Module string
Module swim
Module table
Module tap
Module tarantool
Module uri
Module utf8
Module uuid
Module varbinary
Module xlog
Module yaml
Other package components
Database error codes
Debug facilities
JSON paths
Rocks reference
Module membership
Module luatest
Module
luatest.helpers
Module
luatest.justrun
Module
luatest.hooks
Module
luatest.treegen
Class
luatest.group
Class
luatest.http_response
Class
luatest.runner
Class
luatest.server
Class
luatest.replica_set
Class
luatest.cbuilder
Module vshard
Configuration reference
API Reference
Router API
Storage API
SQL DBMS Modules
Other rocks
C API reference
Module box
Module clock
Module coio
Module error
Module fiber
Module index
Module latch
Function on_shutdown
Module lua/utils
Module say (logging)
Module schema
Module trivia/config
Module tuple
Module txn
Read views: C API
Internals
Binary protocol
Understanding the binary protocol
MP_* MessagePack types
Request and response format
Keys used in requests and responses
Client-server requests and responses
Session start and authentication
Streams
Events and subscriptions
Graceful shutdown protocol
SQL-specific requests and responses
Replication requests and responses
MessagePack extensions
File formats
The recovery process
Replication internals
Server startup with replication
Orphan status
Limitations
Releases
Tarantool 3.2
Tarantool 3.1
Tarantool 3.0
Tarantool 2.11 (LTS)
EOL versions
Major features
Tarantool legacy release policy
Tarantool 2.10.8
Tarantool 2.10.7
Tarantool 2.10.6
Tarantool 2.10.5
Tarantool 2.10.4
Tarantool 2.10.3
Tarantool 2.10.2
Tarantool 2.10.1
Tarantool 2.10.0
Tarantool 2.8.4
Tarantool 2.8.3
Tarantool 2.8.2
Tarantool 2.8.1
Tarantool 2.7.3
Tarantool 2.7.2
Tarantool 2.7.1
Tarantool 2.6.3
Tarantool 2.6.2
Tarantool 2.6.1
Tarantool 2.5.3
Tarantool 2.5.2
Tarantool 2.5.1
Tarantool 2.4.3
Tarantool 2.4.2
Tarantool 2.4.1
Tarantool 2.3.3
Tarantool 2.3.2
Tarantool 2.3.1
Tarantool 2.2.3
Tarantool 2.2.2
Tarantool 2.2.1
Tarantool 2.1.2 and earlier
Tarantool 1.10.15
Tarantool 1.10.14
Tarantool 1.10.13
Tarantool 1.10.12
Tarantool 1.10.11
Tarantool 1.10.10
Tarantool 1.10.9
Tarantool 1.10.8
Tarantool 1.10.7
Tarantool 1.10.6
Tarantool 1.10.5
Tarantool 1.10.0–1.10.4
Tarantool 1.9
Tarantool 1.8
Tarantool 1.7
Tarantool 1.6
Enterprise SDK changelog
Tarantool release policy
Compatibility guarantees
Contributing
How to get involved in Tarantool
How to write release notes
Building to contribute
Contributing a module
Guidelines
Developer guidelines
Documentation & Localization guidelines
Language and style
Localization
State of localization
Glossaries
Localization guidelines
Defining and using terms
Markup reference
General syntax guidelines
Headings
Links and references
Tables
Writing about code
Referring to GUI elements
Admonitions
Documenting the API
Images
Building Tarantool Docs
Sphinx-build warnings reference
Documentation infrastructure
Git workflow
C Style Guide
Python Style Guide
Lua style guide
Reference
Internals
Replication internals
Replication internals
Server startup with replication
Orphan status
The recovery process
Server startup with replication