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:
2.11
latest (3.x)
1.10
1.6
Overview
Getting started
First steps
Connecting to the cluster
Updating the data schema
Writing code in a cluster application
How-to guides
Creating Tarantool database
Connecting from your favorite language
Connecting from Python
Connecting from PHP
Connecting from Go
Connecting to Tarantool from C++
Creating your first Tarantool Cartridge application
Defining and manipulating data
CRUD operation examples
Using indexes
Using sequences
Getting started with net.box
Quick start with sharding
Developing applications with Tarantool
Launching an application
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
Developing with an IDE
Lua cookbook recipes
Lua tutorials
C tutorial
Replication tutorials
Bootstrapping a replica set
Adding instances
Removing instances
Configuring synchronous replication
Managing leader elections
SQL guides
SQL beginners’ guide
SQL tutorial
Improving MySQL with Tarantool
More guides
Understanding the binary protocol
libslave tutorial
Concepts
Data model
Data storage
Indexes
Operations
Data schema description
Persistence
Migrations
Fibers, yields, and cooperative multitasking
Transactions
Transaction model
Thread model
Transaction mode: default
Transaction mode: MVCC
Modules
Tarantool Cartridge
Sharding
Architecture
Replication
Replication architecture
Synchronous replication
Automated leader election
Triggers
Storage engines
Storing data with memtx
Storing data with vinyl
Difference between memtx and vinyl storage engines
CRUD operations
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: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
Cluster on Cartridge
Overview
Developer’s guide
Administrator’s guide
Troubleshooting
Cartridge API
Module
cartridge
Module
cartridge.auth
Module
cartridge.roles
Module
cartridge.issues
Module
cartridge.argparse
Module
cartridge.twophase
Module
cartridge.failover
Module
cartridge.topology
Module
cartridge.clusterwide-config
Module
cartridge.rpc
Module
cartridge.tar
Module
cartridge.pool
Module
cartridge.upload
Module
cartridge.confapplier
Module
cartridge.remote-control
Module
cartridge.service-registry
Module
custom-role
Module
cartridge.lua-api.stat
Module
cartridge.lua-api.boxinfo
Module
cartridge.lua-api.get-topology
Module
cartridge.lua-api.edit-topology
Module
cartridge.lua-api.topology
Module
cartridge.lua-api.failover
Module
cartridge.lua-api.vshard
Module
cartridge.lua-api.deprecated
Module
cartridge.lua-api.compression
Class
cartridge.test-helpers.cluster
Class
cartridge.test-helpers.server
Class
cartridge.test-helpers.etcd
Class
cartridge.test-helpers.stateboard
Cartridge CLI
Cartridge application lifecycle
Migration from Cartridge CLI to tt
Installation
Supported Cartridge CLI commands
create
build
start
stop
status
enter
connect
log
clean
pack
TGZ
RPM/DEB
Docker
Building in Docker
repair
admin
replicasets
failover
Global flags
Application instance paths
Pre-build and post-build scripts
Changelog
Administration
Instance configuration
Starting and stopping instances
Managing modules
Logs
Security
Access control
Sharding with vshard
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
Notes for operating systems
Bug reports
Troubleshooting guide
Monitoring
Getting started with monitoring
Installing the metrics module
Getting started with Cartridge application
Metrics reference
API reference
Metrics plugins
Grafana dashboard
Alerting
Connectors
C
Go
Java
Python
Community-supported connectors
C#
C++
Node.js
Perl
PHP
Tarantool Enterprise Edition
Changelog
Setup
Developer’s guide
Cluster administrator’s guide
Security hardening guide
Security audit
LDAP authorization
Tuple compression
Module compress
Submodule compress.zlib
Submodule compress.zstd
Submodule compress.lz4
WAL extensions
Read views
Read views: Lua API
Read views: C API
Flight recorder
Audit module
Upgrading space schema
Migration from Tarantool Cartridge
Monitoring system metrics
Deprecated features
Orchestrator API reference
Modules
Reference
Configuration reference
Tooling
Interactive console
tt CLI utility
Installation
Configuration
Global options
Commands
binaries
build
cartridge
cat
cfg
check
clean
completion
connect
coredump
create
crud
export
help
import
init
install
instances
logrotate
pack
play
restart
rocks
run
search
start
status
stop
uninstall
version
Extending the tt functionality
tt interactive console
tarantoolctl utility (deprecated)
LuaJIT memory profiler
LuaJIT getmetrics
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()
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.gc()
box.info.memory()
box.info.replication_anon()
box.info.replication
box.info.listen
box.info.election
box.info.synchro
box.info.ro_reason
box.info.schema_version
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()
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: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: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
Tutorial: Module compat
Module console
Module crypto
Module csv
Module datetime
datetime.new()
datetime_object
datetime.interval.new()
interval_object
Interval arithmetic
Module decimal
Module digest
Module errno
Module fiber
Module fio
Module fun
Module http
Module iconv
Module jit
Module json
Module key_def
Module log
Module merger
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 uuid
Module utf8
Module uri
Module xlog
Module yaml
Other package components
Database error codes
Debug facilities
JSON paths
Rocks reference
Tarantool Cartridge
Overview
Developer’s guide
Administrator’s guide
Troubleshooting
Cartridge API
Module
cartridge
Module
cartridge.auth
Module
cartridge.roles
Module
cartridge.issues
Module
cartridge.argparse
Module
cartridge.twophase
Module
cartridge.failover
Module
cartridge.topology
Module
cartridge.clusterwide-config
Module
cartridge.rpc
Module
cartridge.tar
Module
cartridge.pool
Module
cartridge.upload
Module
cartridge.confapplier
Module
cartridge.remote-control
Module
cartridge.service-registry
Module
custom-role
Module
cartridge.lua-api.stat
Module
cartridge.lua-api.boxinfo
Module
cartridge.lua-api.get-topology
Module
cartridge.lua-api.edit-topology
Module
cartridge.lua-api.topology
Module
cartridge.lua-api.failover
Module
cartridge.lua-api.vshard
Module
cartridge.lua-api.deprecated
Module
cartridge.lua-api.compression
Class
cartridge.test-helpers.cluster
Class
cartridge.test-helpers.server
Class
cartridge.test-helpers.etcd
Class
cartridge.test-helpers.stateboard
Cartridge CLI
Cartridge application lifecycle
Migration from Cartridge CLI to tt
Installation
Supported Cartridge CLI commands
create
build
start
stop
status
enter
connect
log
clean
pack
TGZ
RPM/DEB
Docker
Building in Docker
repair
admin
replicasets
failover
Global flags
Application instance paths
Pre-build and post-build scripts
Changelog
Module membership
Module metrics
Getting started with monitoring
Installing the metrics module
Getting started with Cartridge application
Metrics reference
API reference
Metrics plugins
Grafana dashboard
Alerting
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
Internals
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
Examples
MessagePack extensions
File formats
The recovery process
Replication internals
Server startup with replication
Orphan status
Limitations
Tips on Lua syntax
Releases
Release calendar
Major features
Tarantool 2.11 (LTS)
EOL versions
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
Release policies
Tarantool release policy
Tarantool legacy 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