This package is a pure-python client library for Tarantool.
Documentation | Downloads | PyPI | GitHub | Issue tracker
For Tarantool version < 1.6.0 you must get 0.3.*
connector version:
$ pip install tarantool\<0.4
For later Tarantool use version 0.5.*
connector version:
$ pip install tarantool\>0.4
$ python setup.py install
For Tarantool version < 1.6.0 you must get stable
branch:
$ pip install git+https://github.com/tarantool/tarantool-python.git@stable
For later Tarantool use master
branch:
$ pip install git+https://github.com/tarantool/tarantool-python.git@master
Tarantool is a NoSQL database running inside a Lua program. It combines the network programming power of Node.JS with data persistency capabilities of Redis. It's open source, BSD-2-Clause licensed.
- ANSI SQL, including views, joins, referential and check constraints
- Lua packages for non-blocking I/O, fibers and HTTP
- MsgPack data format and MsgPack based client-server protocol
- Two data engines: * memtx - the in-memory storage engine with optional persistence * vinyl - the on-disk storage engine to use with large data sets
- secondary key and index iterators support (can be non-unique and composite)
- multiple index types: HASH, BITSET, TREE, RTREE
- asynchronous master-master replication
- authentication and access control
This driver is synchronous, so connection mustn't be shared between threads/processes.
Look at asynctnt for asynchronous Python driver based on asyncio. See also the feature comparison table.
On Linux:
$ python setup.py test
On Windows:
- Setup a Linux machine with installed tarantool (called
remote
later). - (on
remote
) Copytest/suites/lib/tarantool_python_ci.lua
to/etc/tarantool/instances.available
. - (on
remote
) Runtarantoolctl start tarantool_python_ci
. - Set the following environment variables:
*
REMOTE_TARANTOOL_HOST=...
, *REMOTE_TARANTOOL_CONSOLE_PORT=3302
. - Run
python setup.py test
.
BSD-2-Clause. See the LICENSE
file.