K dispozici je nová verze Tarantool 2.8 DBMS, která poskytuje trvalé ukládání dat s informacemi načítanými z databáze v paměti. DBMS kombinuje vysokou rychlost zpracování dotazů charakteristickou pro systémy NoSQL (například Memcached a Redis) se spolehlivostí tradičních DBMS (Oracle, MySQL a PostgreSQL). Tarantool je napsán v C a umožňuje vytvářet uložené procedury v Lua. Kód je distribuován pod licencí BSD.
DBMS umožňuje efektivně pracovat s velkými objemy dat při vysokém zatížení. Mezi vlastnosti Tarantool patří možnost vytvářet handlery v jazyce Lua (LuaJIT je vestavěný), použití formátu MessagePack při výměně dat s klientem, přítomnost dvou vestavěných enginů (úložiště v RAM s resetem na trvalý disk a dvouúrovňové diskové úložiště založené na LSM-stromu, podpora sekundárních klíčů, čtyři typy indexů (HASH, TREE, RTREE, BITSET), nástroje pro synchronní a asynchronní replikaci v režimu master-master, podpora pro ověřování připojení a řízení přístupu, schopnost zpracovávat SQL dotazy.
Hlavní změny:
- Stabilizace MVCC (Multi-Version Concurrency Control) v memtx in-memory engine.
- Podpora transakcí v binárním protokolu IPROTO. Dříve transakce vyžadovala zápis uložené procedury v Lua.
- Podpora synchronní replikace, která funguje ve vztahu k jednotlivým tabulkám.
- Mechanismus pro automatické přepínání na záložní uzel (failover) založený na protokolu RAFT. Asynchronní replikace založená na WAL je v Tarantool již dlouho implementována; nyní nemusíte ručně monitorovat hlavní uzel.
- Automatické přepínání hlavních uzlů je k dispozici i v případě topologie s datovým shardingem (používá se knihovna vshard, která distribuuje data mezi servery pomocí virtuálních bucketů).
- Vylepšení rámce pro vytváření klastrových aplikací Tarantool Cartridge při práci ve virtuálních prostředích. Tarantool Cartridge nyní lépe drží náklad.
- Práce role Ansible pro nasazení clusteru byla zrychlena až 15-20krát. To usnadňuje práci s velkými clustery.
- Objevil se nástroj pro zjednodušenou migraci ze starších verzí >1.6 a <1.10, který je dostupný pomocí doplňkové volby při startu. Dříve se migrace musela provádět prostřednictvím nasazení prozatímní verze 1.10.
- Bylo optimalizováno ukládání malých n-tic.
- SQL nyní podporuje UUID a zlepšuje konverzi typů.
Stojí za zmínku, že počínaje verzí 2.10 dojde k přechodu na novou politiku pro generování vydání. U významných vydání, která narušují zpětnou kompatibilitu, se změní první číslice verze, u přechodných vydání - druhá a u opravných vydání - třetí (po 2.10 bude vydána verze 3.0.0).
Zdroj: opennet.ru