Questions tagged [tarantool]

Tarantool is a Lua application server with a built-in database. It's best to think of as a Redis or Memcached with high level of customization. Alternatively, it's Node.JS with object persistency and master-master replication.

Tarantool is a Lua application server with a built-in database.

The key idea is in a new way of building Web applications - a data grid approach, when the database serves as the application backend as well, and there are many database instances running in parallel, to scale up and out.

Tarantool features:

  • a drop-in replacement for Lua 5.1, based on LuaJIT 2.0; simply use #!/usr/bin/tarantool instead of #!/usr/bin/lua in your script
  • Lua packages for non-blocking I/O, fibers and HTTP
  • document data model with secondary keys
  • two data engines: 100% in-memory with optional persistence and a 2-level disk-based B-tree, to use with large data sets
  • iteration over data in forward and reverse order
  • asynchronous master-master replication
  • authentication and access control
218 questions
2
votes
1 answer

How would Tarantool be embedded inside OpenResty?

Openresty has an option for specifying the path to the LuaJIT. The NGXIN/Lua module uses co-routines for each request. However, Tarantool uses Fibers instead of Co-routines. Does this mean you would have to create a custom lua-nginx-module that…
dgo.a
  • 2,634
  • 23
  • 35
2
votes
3 answers

How i can perform request to tarantool like in mysql?

I need select from tarantool all datat by two values from one space. How i can perform request to tarantool like in mysql? select from aaa where a=1a22cadbdb or a=7f626e0123 Now i can make two…
agent-0007
  • 109
  • 6
2
votes
1 answer

Cases when tarantool yields

i'm newbie in tarantool and want to ask general question about implicit yelds. At documentation: "There are implicit yields: every data-change operation or network-access causes an implicit yield, and every statement that goes through the tarantool…
b10s
  • 63
  • 4
2
votes
2 answers

Tarantool shiny dashboard

I want to use Tarantool database for logging user activity. Are there any out of the box solutions to create web dashboard with nice charts based on the collected data?
Nikola
  • 21
  • 1
2
votes
1 answer

Run Tarantool Lua function in another coroutine

I use NoSQL database Tarantool and try to do some complex work on DB side using Lua stored procedures. I think it`s a good idea, because i can do less DB calling and have less overhead with network data transfer. I have some table: user_counters:…
1
vote
1 answer

Communication between to goland services

I need to organize the communication between two goland services but have some problems func main() { ctxWithCancel, cancel := context.WithCancel(context.Background()) sig := make(chan os.Signal) signal.Notify(sig, os.Interrupt) …
Roman Kazmin
  • 931
  • 6
  • 18
1
vote
1 answer

Tarantool Error - Procedure 'vshard.storage.buckets_count' is not defined

I'm trying to initialize a router and I get this error. Procedure 'vshard.storage.buckets_count' is not defined All respose: response screen shote I also do not have buckets. What could be the problem?
AofA Group
  • 309
  • 2
  • 3
1
vote
1 answer

when selecting data from the storage, an exception is thrown 'Procedure 'ddl.get_schema' is not defined'

I created the users space: s = box.schema.space.create('users') s:format({ > {name = 'id', type = 'unsigned'}, > {name = 'user_name', type = 'string'}, > {name = 'age', type = 'unsigned'} …
1
vote
1 answer

Tarantool cartridge-springdata(spring data for tarantool) does not work when language is kotlin

We want to use tarantool in out project that is based on kotlin language and spring framework so we tried the spring-data project for tarantool which is cartridge-springdata. The example explained in cartridge-springdata does not work when language…
Milad Amery
  • 198
  • 1
  • 9
1
vote
2 answers

How to mass upsert on Tarantool?

In MySQL I can do something like this: -- post_id-user_id is unique pair INSERT INTO userviews(post_id, user_id, view_count) VALUES(1,1,1),(2,1,1),(3,1,1),(4,1,1) ON DUPLICATE KEY UPDATE view_count = view_count + 1; Or in PostgreSQL: INSERT INTO…
Kokizzu
  • 24,974
  • 37
  • 137
  • 233
1
vote
1 answer

Is Tarantool just a cache?

Like the title says - is it just a cache? What about persistence? What about storing on disk? A lot of times there can be a wrong idea that Tarantool is just a different version of Memcached.
LapaevPavel
  • 226
  • 1
  • 5
1
vote
1 answer

PostgreSQL's JSONB-like indexable column in Tarantool?

In PostgreSQL we can create a JSONB column that can be indexed and accessed something like this: CREATE TABLE foo ( id BIGSERIAL PRIMARY KEY -- createdAt, updatedAt, deletedAt, createdBy, updatedBy, restoredBy, deletedBy data…
Kokizzu
  • 24,974
  • 37
  • 137
  • 233
1
vote
1 answer

Kubernetes. Is it possible one release in two namespaces?

We have tarantool in the Kubernetes cluster. One of tarantool's part has big in size. We need to be able to manage this separately from the main release. Our idea is to divide by two namespaces. Is it possible? What problems will we have? Are there…
Aleksandr
  • 55
  • 1
  • 6
1
vote
1 answer

How to copy specific columns from one table to another in Tarantool

I have 2 tables, for example: table X, columns: A integer B string C number table X2, columns: A integer C number how to copy contents of X to X2 (excluding the missing columns) in Tarantool? tried, but didn't work: INSERT INTO "X2" SELECT…
Kokizzu
  • 24,974
  • 37
  • 137
  • 233
1
vote
1 answer

How to convert vinyl to memtx in tarantool?

I've created a table in vinyl engine (disk), how can I convert it to memtx engine (ram)? I have some small table that would be better if it converted to memtx for something like this: WITH x AS ( -- big table that wont fit in memory SELECT…
Kokizzu
  • 24,974
  • 37
  • 137
  • 233