Как обычно реализуется репликация tarantool с мастер-базой?
Как я понимаю, часто tarantool используют рядом с основной базой данной (пусть для примера это будет mysql), например для кеша.
- Как обычно в этом случае данные из mysql попадают в tarantool? Через код самого приложения (например, через php)? Или есть более красивый способ?
- В Tarantool есть какой-то надежный официальный механизм репликации данных из mysql или postgresql в tarantool? Если есть, то можно ли управлять самой репликацией? Т.е., например, таблицы из mysql преобразовать в определенную структуру tarantool
- Если всего этого нет, то предвидится ли? (Ведь всем вручную каждый раз прописывать перенос данных через код приложения видится мне не очень красивым решением)
Ответы (1 шт):
Автор решения: Konstantin Nazarov
→ Ссылка
Есть еще 2 способа кроме как из кода php приложения:
- когда клиенты читают и пишут в tarantool, а он сам ходит в основную базу по необходимости
- когда tarantool реплицирует данные из базы сам
Для первого варианта вам нужен коннектор из tarantool в mysql. Он позволяет делать запросы из Lua к внешней базе.
Для репликации из mysql мы умеем читать репликационные логи самого mysql и вставлять записи в tarantool. Вот нужный вам модуль.