Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

tarantool_box(1) [debian man page]

TARANTOOL_BOX(1)				     high performance key/value storage server					  TARANTOOL_BOX(1)

NAME
tarantool_box - open-source NoSQL database SYNOPSIS
tarantool_box [OPTIONS] DESCRIPTION
Tarantool is an open-source NoSQL database, developed by Mail.ru. Its key properties include: o Licence: simplified BSD o All data is maintained in RAM o Data persistence is implemented using Write Ahead Log and snapshotting o Supports asynchronous replication and hot standby o Uses coroutines and asynchronous I/O to implement high-performance lock-free access to data o Available on Linux and FreeBSD o Stored procedures in Lua are supported. Data model The basic atom of storage in Tarantool is called tuple. A tuple can have arbitrary number of fields. The first field in the tuple is always the identifying unique key. Tuples form spaces. It is possible to search tuples in spaces using the primary or secondary keys. Fields in a tuple are type-agnostic. It is possible to change, as well as add or remove fields. Command-line options --cfg-get=KEY Returns a value from configuration file described by KEY. --check-config Checks configuration file for errors. -c FILE, --config=FILE Points a path to configuration file (default: /etc/tarantool.cfg). --cat=FILE Cats snapshot file to stdout in readable format and exits. --init-storage Initializes storage (an empty snapshot file) and exits. -v, --verbose Increases verbosity level in log messages. -B, --background Redirects input/output streams to a log file and runs as daemon. -h, --help Displays helpscreen and exits. -V, --version Prints program version and exits. perl v5.14.2 2012-06-29 TARANTOOL_BOX(1)

Check Out this Related Man Page

DR::Tarantool::AsyncClient(3pm) 			User Contributed Perl Documentation			   DR::Tarantool::AsyncClient(3pm)

NAME
DR::Tarantool::AsyncClient - async client for tarantool <http://tarantool.org> SYNOPSIS
use DR::Tarantool::AsyncClient 'tarantool'; DR::Tarantool::AsyncClient->connect( host => '127.0.0.1', port => 12345, spaces => { 0 => { name => 'users', fields => [ qw(login password role), { name => 'counter', type => 'NUM' } ], indexes => { 0 => 'login', 1 => [ qw(login password) ], } }, 2 => { name => 'roles', fields => [ qw(name title) ], indexes => { 0 => 'name', 1 => { name => 'myindex', fields => [ 'name', 'title' ], } } } } sub { my ($client) = @_; ... } ); $client->ping(sub { ... }); $client->insert('space', [ 'user', 10, 'password' ], sub { ... }); $client->call_lua(foo => ['arg1', 'arg2'], sub { }); client->select('space', 1, sub { ... }); $client->delete('space', 1, sub { ... }); $client->update('space', 1, [ passwd => set => 'abc' ], sub { .. }); Class methods connect Connects to <tarantool:http://tarantool.org>, returns (by callback) object that can be used to make requests. DR::Tarantool::AsyncClient->connect( host => $host, port => $port, spaces => $spaces, reconnect_period => 0.5, reconnect_always => 1, sub { my ($obj) = @_; if (ref $obj) { ... # handle errors } ... } ); Arguments host & port Address where tarantool is started. spaces A hash with spaces description or DR::Tarantool::Spaces reference. reconnect_period & reconnect_always See DR::Tarantool::LLClient for more details. Attributes space Returns space object by name (or by number). See perldoc DR::Tarantool::Spaces for more details. Worker methods All methods receive callbacks that will receive the following arguments: status If success the field will have value 'ok'. tuple(s) or code of error If success, the second argument will contain tuple(s) that extracted by request. errorstr Error string if error was happened. sub { if ($_[0] eq 'ok') { my ($status, $tuples) = @_; ... } else { my ($status, $code, $errstr) = @_; } } ping Pings server. $client->ping(sub { ... }); Arguments cb insert Inserts tuple into database. $client->insert('space', [ 'user', 10, 'password' ], sub { ... }); $client->insert('space', @tuple, $flags, sub { ... }); Arguments space_name tuple flags (optional) Flag list described in perldoc ":constant" in DR::Tarantool. callback call_lua Calls lua function. All arguments translates to lua as strings (As is). Returned tuples can be unpacked by space or by format. $client->call_lua(foo => ['arg1', 'arg2'], sub { }); $client->call_lua(foo => [], 'space_name', sub { ... }); $client->call_lua(foo => @args, flags => $f, space => $space_name, sub { ... } ); $client->call_lua(foo => @args, fields => [ qw(a b c) ], sub { ... } ); $client->call_lua(foo => @args, fields => [ qw(a b c), { type => 'NUM', name => 'abc'} ... ], sub { ... } ); Arguments function name function arguments space name or the other optional arguments callback Optional arguments space Space name. Use the argument if Your function returns tuple(s) from a described in connect space. fields Output fields format (like 'fields' in connect method). flags Reserved option. args Argument fields format. select Selects tuple(s) from database. $tuples = $client->select('space', 1, sub { ... }); $tuples = $client->select('space', [1, 2], sub { ... }); $tuples = $client->select('space_name', [1,2,3] => 'index_name', sub { ... }); Arguments space name key(s) optional arguments callback optional arguments The section can contain only one element: index name, or hash with the following fields: index index name or number limit offset delete Deletes tuple. $client->delete('space', 1, sub { ... }); $client->delete('space', $key, $flags, sub { ... }); Arguments space name key flags (optional) Flag list described in perldoc ":constant" in DR::Tarantool. callback update Updates tuple. $client->update('space', 1, [ passwd => set => 'abc' ], sub { .. }); $client->update( 'space', 1, [ [ passwd => set => 'abc' ], [ login => 'delete' ] ], sub { ... } ); Arguments space name key operations list flags (optional) Flag list described in perldoc ":constant" in DR::Tarantool. callback COPYRIGHT AND LICENSE
Copyright (C) 2011 Dmitry E. Oboukhov <unera@debian.org> Copyright (C) 2011 Roman V. Nikolaev <rshadow@rambler.ru> This program is free software, you can redistribute it and/or modify it under the terms of the Artistic License. VCS
The project is placed git repo on github: https://github.com/unera/dr-tarantool/ <https://github.com/unera/dr-tarantool/>. perl v5.14.2 2012-06-04 DR::Tarantool::AsyncClient(3pm)
Man Page