Ir pieejama jauna Tarantool 2.8 datu bāzes versija, kas nodrošina pastāvīgu datu glabāšanu ar informācijas atgriezenisko saiti no operatīvās atmiņas (in-memory database). Datu bāze apvieno augstu pieprasījumu apstrādes ātrumu, kas raksturīgs NoSQL sistēmām (piemēram, Memcached un Redis), ar tradicionālo datu bāzu (Oracle, MySQL un PostgreSQL) uzticamību. Tarantool ir uzrakstīts C valodā un ļauj izveidot glabātas procedūras Lua valodā. Kods tiek izplatīts saskaņā ar BSD licenci.
Datu bāze ļauj efektīvi strādāt ar lieliem datu apjomiem augstu slodžu apstākļos. No Tarantool īpašībām jānorāda iespēja izveidot apstrādātājus Lua valodā (iekļauts LuaJIT), MessagePack formāta lietošana datu apmaiņai ar klientu, kā arī divu iebūvētu dzinēju klātbūtne (glabāšana RAM un noklusēšana uz pastāvīgo nesēju, kā arī divlīmeņu diskā glabāšana LSM-tree bāzes). Atbalsta sekundāros atslēgas, četrus indeksu tipus (HASH, TREE, RTREE, BITSET), līdzekļus sinhronai un asinhonai replikācijai master-master režīmā, kā arī autentifikācijas atbalstu un piekļuves kontroli, iespēju apstrādāt SQL pieprasījumus.
Galvenās izmaiņas:
- MVCC (Vairāku versiju vienlaicīgas piekļuves vadība) stabilizācija in-memory dzinējiem memtx.
- Atbalsts transakcijām binārajā protokolā IPROTO. Agrāk transakcijai bija nepieciešams uzrakstīt glabātas procedūras Lua valodā.
- Atbalsts sinhronai replikācijai, kas darbojas saistīta ar atsevišķām tabulām.
- Automātiska pārslēgšanās uz rezerves mezglu (failover) RAFT protokola pamatā. Tarantool jau sen ir īstenota asinhona WAL-bāzes replikācija, tagad nav nepieciešams manuāli uzraudzīt master mezglu.
- Automātiska pārslēgšanās uz master mezglu ir pieejama arī gadījumā, ja datos notiek segmentēšana (sharding), izmantojot bibliotēku vshard, kas sadala datus pa serveriem, izmantojot virtuālas grozus (bucket).
- Uzlabošana Tarantool Cartridge ietvara klastera aplikāciju izveidē, strādājot virtuālajos vidēs. Tarantool Cartridge tagad labāk iztur slodzi.
- Ansible lomas klastera izvēršanai darbs ir paātrināts līdz 15-20 reizēm. Tādējādi darbs ar lieliem klasteriem kļuvis vienkāršāks.
- Parādījies rīks, kas vienkāršo migrāciju no vecākām versijām >1.6 un < 1.10, pieejams, izvēloties papildu opciju startēšanas laikā. Iepriekš migrācija bija jāveic, izmantojot starpposma versijas 1.10 izlaišanu.
- Veikta mazo tupliku uzglabāšanas optimizācija.
- SQL ir ieviesta UUID atbalsts un uzlabota tipa konversija.
Jāatzīmē, ka sākot ar versiju 2.10 tiks ieviesta jauna politiku attiecībā uz versiju veidošanu. Būtisku izlaidumu gadījumā, kas pārkāpj atpakaļsaderību, tiks mainīta versijas pirmā cipars, savukārt starpposma izlaidumos tiks mainīts otrais, un labojumu izlaidumos — trešais (pēc 2.10 tiks izdota versija 3.0.0).
Avots: opennet.lv
