Size: a a a

2021 June 28

SB

Sergey Bakhtiarov in Tarantool
Перед запуском Tarantool можно задать TARANTOOL_LOG.
Вариант для Docker:
ENV TARANTOOL_LOG="tmp/tarantool.log"

Из приложения в лог писать так:
local log = require('log')
log.info('Message')
источник

VV

Vladimir Voznesensky in Tarantool
Спасибо.
источник

D

Denis in Tarantool
Привет,
вопрос по использованию винила. В чате был озвучен совет по возможности использовать только праймари индекс для винил спейсов. Но при использовании vshard всё равно придётся прикрутить bucket_id индекс. Или это не так критично для перформанса?
И ещё, если нужно удаление записей через какое-то время и использовать indexpiration, придётся делать ещё один индекс по полю с временной меткой. Возможно для винила тогда лучше использовать expirationd, который будет ходить по праймари индексу?
источник

AS

Andrei 🦉 Sergeev in Tarantool
indexpiration ходит по индексу, чтобы быстро фильтровать записи, которые пора чистить
indexpiration по primary key, если этот ключ не является меткой времени, вырождается в просто expirationd, то есть делает фулскан по всей таблице
В сочетании с винилом эффект будет просто бомбический)
источник

D

Denis in Tarantool
Вопрос и был в том, что хуже для винила относительно перформанса - дополнительный вторичный индекс или размазанный по времени фуллскан по первичному.
источник

VV

Vladimir Voznesensky in Tarantool
Пытаюсь запускать приложение с тарантулом с помощью tarantoolctl. При запуске требуется некий модуль (в моём случае tarantool/websocket). Пытаюсь его поставить с, опять же, tarantoolctl rocks install. Даже из-под sudo модуль ставится не в системный каталог, а в текущий в подкаталог .rocks, так что при запуске через sudo tarantoolctl start всё равно не хватает websocket. Что я делаю не так?
источник

AS

Andrei 🦉 Sergeev in Tarantool
Из того что я видел в чатике (сами пользуемся только memtx), вторичные индексы на виниле по сути не работают и я даже не знаю, есть ли вообще где то хоть один продовый кластер vinyl + vshard, думаю @kostja_osipov здесь может точно сказать
источник

KO

Konstantin Osipov in Tarantool
есть опыт винила в проде в vshard. полёт в целом стабильный, но при обновлении схемы стреляют известные и открытые баги
источник

KO

Konstantin Osipov in Tarantool
(обновлении схемы под нагрузкой)
источник

KO

Konstantin Osipov in Tarantool
мы что-то чиним, но пока без особого прогресса.
источник

D

Denis in Tarantool
Понятно, спасибо
источник

DS

Dmitry Sharonov in Tarantool
работают, просто не оч хайлоадно
источник

DS

Dmitry Sharonov in Tarantool
вообще бакет_айди можно прямо праймаком же сделать
источник

D

Denis in Tarantool
Но он ведь не уникальный? Или через составной индекс как-то?
источник

KO

Konstantin Osipov in Tarantool
ооочень широко поставлен вопрос. зависит от характера нагрузки
источник

KO

Konstantin Osipov in Tarantool
в общем случае только проверять
источник

MA

Mons Anderson in Tarantool
Есть. Но лучше бы не было 😂
источник

DS

Dmitry Sharonov in Tarantool
да, через составной. индекс тогда получается bucket_id+primary_id
источник

VV

Vladimir Voznesensky in Tarantool
Наверное, спросил ерунду, но как-то не могу поймать тарантуловый стиль администрирования. С одной стороны, для администрирования лучше unix socket, с другой - не понятно, как к нему подключаться, если запустил приложение для отладки из командной строки, а не через tarantoolctl. Запускаешь через tarantoolctl - не может найти камень websocket...
источник

MA

Mons Anderson in Tarantool
если вы запускаете как tarantool init.lua, то консоли нет, потому что никто её не создал
ну и запуск через tarantool init.lua не может считаться "администрированием" — это режим разработки.

можно запустить консоль самому (require "console".start() или require "console".listen("/path/to/socket"))
источник