Size: a a a

2021 February 04

MA

Mons Anderson in Tarantool
Ярослав Шумаков
Другими словами, если вам нужно разместить 0,5 Тб данных, индексов и т.д. - то у Вас должно быть минимум 0,5Тб*1,5+10% физической RAM
Это очень грубый и некорректный расчёт
источник

ИЕ

Илья Ермолин... in Tarantool
Mons Anderson
Это очень грубый и некорректный расчёт
а есть рекомендации / логика расчета более праивльная (размер данных + колчиество вторичных индексов на входе) - итого сколько нужно памяти для норм работы с учетом накладных расходов?
Такая методичка бы мне кажется пригодилась...
источник

MA

Mons Anderson in Tarantool
Илья Ермолин
а есть рекомендации / логика расчета более праивльная (размер данных + колчиество вторичных индексов на входе) - итого сколько нужно памяти для норм работы с учетом накладных расходов?
Такая методичка бы мне кажется пригодилась...
Есть страничка в wiki https://github.com/tarantool/tarantool/wiki/Memory-size-calculation
Она описывает методику с точки зрения структур хранения данных

По хорошему, чтобы посчитать довольно точно, нужны:
* оценочное количество записей (в пределе) (N)
*  средний размер записи (строки/тапла). можно проверить в консоли, создав примерный тапл и посмотрев bsize (box.tuple.new{ "abc", 1e5, 42 }:bsize()) (S)
* размер чисто спейса будет N * ( S + 14 ) (без индексов)

далее считаем индексы.
* в зависимости от версии тарантула и типа индекса он занимает от 16 до 22 байт. можно взять оценку сверху в 22. итого все индексы: N * 22 * I, где I — это кличество индексов.

следующий этап: нагрузка.
тут нужно учесть 2 момент
* таплы "в полёте"  (обычно это малая величина в сравнении с общим объёмом. пример расчёта есть по ссылке)
* сетевые буфера. на одно соединение обычно расходуется 2 x readahead. дефолтный буфер всего 16Kb, но если его подкрутить в сторону нескольких мегабайт и подключить несколько тысяч клиентов, то может получиться очень внушительная цифра.

теперь Lua. "нормальным" можно считать потребление памяти в луа до 0.5 гб (но вообще предел в 2 гб).

Ну и напоследок можно выбрать коэффициент "ошибки". Вот тут уже те самые 10% вполне можно накинуть. туда войдёт фрагментация, какие-то неучтённые вещи.

Завершает расчёт умножение на количество реплик. Оптимальным считается использование 3х реплик в репликасете. Бывает используют 2, бывает 5 или больше.
источник

ИЕ

Илья Ермолин... in Tarantool
спасибо - очень актуально
источник

NV

Nick Volynkin in Tarantool
Mons Anderson
Есть страничка в wiki https://github.com/tarantool/tarantool/wiki/Memory-size-calculation
Она описывает методику с точки зрения структур хранения данных

По хорошему, чтобы посчитать довольно точно, нужны:
* оценочное количество записей (в пределе) (N)
*  средний размер записи (строки/тапла). можно проверить в консоли, создав примерный тапл и посмотрев bsize (box.tuple.new{ "abc", 1e5, 42 }:bsize()) (S)
* размер чисто спейса будет N * ( S + 14 ) (без индексов)

далее считаем индексы.
* в зависимости от версии тарантула и типа индекса он занимает от 16 до 22 байт. можно взять оценку сверху в 22. итого все индексы: N * 22 * I, где I — это кличество индексов.

следующий этап: нагрузка.
тут нужно учесть 2 момент
* таплы "в полёте"  (обычно это малая величина в сравнении с общим объёмом. пример расчёта есть по ссылке)
* сетевые буфера. на одно соединение обычно расходуется 2 x readahead. дефолтный буфер всего 16Kb, но если его подкрутить в сторону нескольких мегабайт и подключить несколько тысяч клиентов, то может получиться очень внушительная цифра.

теперь Lua. "нормальным" можно считать потребление памяти в луа до 0.5 гб (но вообще предел в 2 гб).

Ну и напоследок можно выбрать коэффициент "ошибки". Вот тут уже те самые 10% вполне можно накинуть. туда войдёт фрагментация, какие-то неучтённые вещи.

Завершает расчёт умножение на количество реплик. Оптимальным считается использование 3х реплик в репликасете. Бывает используют 2, бывает 5 или больше.
А не затащить ли нам это в документацию? )
источник
2021 February 05

AC

Alexey Choffу in Tarantool
Захожу удаленно через консоль

tarantool> console.connect('root:root@xxx.ru:3302')

а как пароль не светить в консоли?
источник

AT

Alexander Turenko in Tarantool
tarantoolctl connect, например.
источник

AT

Alexander Turenko in Tarantool
Тогда оно осядет в логах шелла, но тут уже стандартные способы выкрутиться.
источник

AT

Alexander Turenko in Tarantool
(read -r password; tarantoolctl connect "me:${password}@localhost:3311")
источник

AT

Alexander Turenko in Tarantool
Например.
источник

AC

Alexey Choffу in Tarantool
спс
источник

SC

Sergey Chernetsky in Tarantool
Добрый день! Такой вопрос:
Есть спейс с полями field0, field1 и field2. Два индекса index1 по field0+field1 и index2 по field0+field2. Будет ли расти индекс index2, при добавлении строк, в которых field2=nil?
источник

DS

Dmitry Sharonov in Tarantool
да
источник

SC

Sergey Chernetsky in Tarantool
А если бы в индексах не было field0 - всё-равно бы рос?
источник

DS

Dmitry Sharonov in Tarantool
да
источник

DS

Dmitry Sharonov in Tarantool
индексы не частичные
источник

DS

Dmitry Sharonov in Tarantool
nil - еще одно значение
источник

SC

Sergey Chernetsky in Tarantool
ок, спасибо
источник
2021 February 06

O

Oybek in Tarantool
Всем привет, простой вопрос как запусаем docker konteiner на виртувалке? @ochaton
источник

VG

Vladislav Grubov in Tarantool
Ну вообще docker run tarantool/tarantool за подробностями настройки репликации, приложения и тп можно почитать тут: https://hub.docker.com/r/tarantool/tarantool
источник