Пускане на Tarantool 2.8 СУБД

Налична е нова версия на СУБД Tarantool 2.8, която осигурява постоянно съхранение на данни с информация, извлечена от базата данни в паметта. СУБД съчетава високата скорост на обработка на заявки, характерна за NoSQL системите (например Memcached и Redis) с надеждността на традиционните СУБД (Oracle, MySQL и PostgreSQL). Tarantool е написан на C и ви позволява да създавате съхранени процедури в Lua. Кодът се разпространява под BSD лиценз.

СУБД ви позволява да работите ефективно с големи обеми данни при големи натоварвания. Сред характеристиките на Tarantool, възможността за създаване на манипулатори на езика Lua (LuaJIT е вграден), използването на формата MessagePack при обмен на данни с клиента, наличието на два вградени двигателя (съхранение в RAM с нулиране към постоянно устройство и дисково хранилище на две нива, базирано на LSM-дърво), поддръжка на вторични ключове, четири вида индекси (HASH, TREE, RTREE, BITSET), инструменти за синхронна и асинхронна репликация в режим master-master, поддръжка на удостоверяване на връзката и контрол на достъпа, възможност за обработка на SQL заявки.

Основни промени:

  • Стабилизиране на MVCC (многоверсичен контрол на паралелността) в memtx in-memory engine.
  • Поддръжка на транзакции в бинарния протокол IPROTO. Преди транзакция изискваше писане на съхранена процедура в Lua.
  • Поддръжка за синхронна репликация, която работи по отношение на отделни таблици.
  • Механизъм за автоматично превключване към резервен възел (failover), базиран на протокола RAFT. Асинхронната WAL-базирана репликация отдавна е внедрена в Tarantool; сега не е нужно ръчно да наблюдавате главния възел.
  • Автоматичното превключване на главния възел също е налично в случай на топология с шардинг на данни (използва се библиотеката vshard, която разпределя данни между сървъри, използвайки виртуални кофи).
  • Подобряване на рамката за изграждане на клъстерни приложения на Tarantool Cartridge при работа във виртуални среди. Tarantool Cartridge вече държи товара по-добре.
  • Работата на ролята Ansible за внедряване на клъстери е ускорена до 15-20 пъти. Това улеснява работата с големи клъстери.
  • Появи се инструмент за опростена миграция от по-стари версии >1.6 и <1.10, който е достъпен чрез допълнителна опция при стартиране. Преди това миграцията трябваше да се извърши чрез внедряване на междинната версия 1.10.
  • Съхранението на малки кортежи е оптимизирано.
  • SQL вече поддържа UUID и подобрява преобразуването на типове.

Струва си да се отбележи, че от версия 2.10 ще има преход към нова политика за генериране на версии. За значителни издания, които нарушават обратната съвместимост, първата цифра на версията ще се промени, за междинните издания - втората, а за коригиращите издания - третата (след 2.10 ще бъде пусната версия 3.0.0).

Източник: opennet.ru

Добавяне на нов коментар