Как стать автором
Обновить

Комментарии 7

Очень интересно читать про поступь Tarantool по относительно крупным проектам.

Практически все таблицы содержат по 7-8 индексов, поэтому БД Tarantool на 1 Тб у нас поднималась 20-40 минут, что неприемлемо. Во время запуска система строит индексы и если их убрать, то загрузка пойдёт намного быстрее. В этой ситуации случае нам помогла функция Hot-standby.


Не уловил, как тут помогает Hot standby, можно подробности узнать?

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


Судя по описанию используется мастер-мастер репликация, в случае потери одного из мастеров часть данных может быть безвозвратно утеряна. Как решается эта проблема (если решается)?

. Мы можем задействовать множество библиотек, таких как SciLua, писать логику на обычном языке программирования и т.д. Сейчас мы векторизуем данные с помощью библиотеки SicLua в режиме реального времени непосредственно в Tarantool. Затем с помощью метода косинусного расстояния система ищет похожий вектор за трёхмесячный период.


Интересно как у вас происходит развертывание обновлений той части, которая написана на LUA? Удается ли избежать простоя системы?

Как-то чувствуется когнитивный диссонанс, когда читаю о


Больше всего жалоб, порядка 2,5 тысяч в день, поступает от прилетающих пассажиров

И при этом упоминается тарантул, 4 сервера в репликации мастер-мастер, и 1ТБ памяти. Я чего-то не уловил и оно того стоит, или реально задача уровня простенькой виртуалки из диджитал оушена с PHP и MySql была решена столь суровым инструментарием просто ради прокачки cv? Как-то привык использовать сервера с терабайтом памяти для других объёмов.

В обращении используются личные данные, а вы их в виртуалку DO.
Как я понял, там 2 сервера: мастер-мастер репликация. Объем БД 1 Тб, а не памяти у серверов, у серверов должно быть больше памяти, т.к. тарантул всю базу в памяти хранить.
Мне кажется, что тут неточность. 2,5 тысячи обращений в день, откуда там 1 Тб
В обращении используются личные данные, а вы их в виртуалку DO.

Если что, метафора была исключительно о производительности.

2,5 тысячи обращений в день, откуда там 1 Тб

Может, конечно, где-то терабайт и наскребли данных. Сравнивали текст с неким огромным корпусом текстов, например.

Но, походу, инженеры тупо развели бизнес на интересную для себя задачу и пофармили чуток cv. Ведь, цифры все есть:
за 3 месяца обрабатывается примерно 100 тыс. обращений из всех доступных источников. Среднее время обработки — 120 мс.

Если просто посчитать количество секунд в трех месяцах и количество секунд на отработку 100К запросов, то система была под нагрузкой аж 0.17% всего времени (та и то, вряд ли на все ядра). Учитывая, что не система, где надо давать быстрый летенси, и пассажир вполне может подождать лишние 5 секунд на процессинг своего сообщения, то все выглядит так, что решение на традиционной СУБД дало бы аналогичную ценность. И да, 2.5 тыс обращений в день дают 200К за три месяца, а не 100.

Бизнес логика в хранимках БД на lua скриптах? — Здравствуй раздутый бюджет и сроки.

> Lua очень близок к машинному коду и является одним из самых быстрых языков из семейства C

wikipedia/lua

Lua 1.0 was designed in such a way that its object constructors, being then slightly different from the current light and flexible style, incorporated the data-description syntax of SOL (hence the name Lua: Sol is also the Portuguese word for «Sun», Lua being the word for «Moon»). Lua syntax for control structures was mostly borrowed from Modula (if, while, repeat/until), but also had taken influence from CLU (multiple assignments and multiple returns from function calls, as a simpler alternative to reference parameters or explicit pointers), C++ («neat idea of allowing a local variable to be declared only where we need it»[5]), SNOBOL and AWK (associative arrays). In an article published in Dr. Dobb's Journal, Lua's creators also state that LISP and Scheme with their single, ubiquitous data-structure mechanism (the list) were a major influence on their decision to develop the table as the primary data structure of Lua.[7]
Очень странный выбор платформы под MDM.
На одном из моих прошлых проектов порядка 5 000 новых записей в день создается, но за счет выявления дубликатов и контроля качества данных общий объем справочника под миллион золотых записей. И все это прекрасно работает на 4 ядрах и нескольких гигабайтах памяти.
Я правильно понимаю, что цель была не сделать правильно, а сделать на Tarantool?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий