Udgivelsen af databasesystemet Tarantool 2.8

Den nye version af databasen Tarantool 2.8 er nu tilgængelig, hvilket muliggør konstant datalagring med information hentet fra hukommelsen (in-memory database). Databasen kombinerer den høje forespørgselsbehandling, som er kendetegnet ved NoSQL-systemer (f.eks. Memcached og Redis), med pålideligheden fra traditionelle databaser (Oracle, MySQL og PostgreSQL). Tarantool er skrevet i C og tillader oprettelse af gemte procedurer i Lua. Koden distribueres under BSD-licensen.

Databasen gør det muligt at arbejde effektivt med store datamængder under høje belastninger. Blandt funktionerne i Tarantool bemærkes muligheden for at oprette behandlere i Lua (LuaJIT er indbygget), anvendelse af MessagePack-formatet til dataudveksling med klienten, eksistensen af to indbyggede motorer (lagring i RAM med nedskrivning til permanent opbevaring og to-niveau diskopbevaring baseret på LSM-tree), understøttelse af sekundære nøgler, fire typer indekser (HASH, TREE, RTREE, BITSET), værktøjer til synkron og asynkron replikation i master-master-tilstand, understøttelse af autentifikation af forbindelser og kontrol med adgang samt mulighed for at behandle SQL-forespørgsler.

Vigtigste ændringer:

  • Stabilisering af MVCC (Multi-Version Concurrency Control) i in-memory motoren memtx.
  • Understøttelse af transaktioner i det binære protokol IPROTO. Tidligere var det nødvendigt at skrive en gemt procedure i Lua for at udføre en transaktion.
  • Understøttelse af synkron replikation, der arbejder knyttet til enkelte tabeller.
  • Automatisk failover-mekanisme til skift til en backup-node baseret på RAFT-protokollen. Der har længe været implementeret asynkron WAL-baseret replikation i Tarantool, så man nu ikke behøver at overvåge master-noden manuelt.
  • Automatisk skift af master-node er også tilgængeligt i tilfælde af en topologi med data-sharding (den bruger vshard-biblioteket, som fordeler data på servere ved hjælp af virtuelle kurve (bucket)).
  • Forbedringer i rammeværket til opbygning af klyng-applikationer Tarantool Cartridge ved arbejde i virtuelle miljøer. Tarantool Cartridge kan nu bedre håndtere belastningen.
  • Hastigheden for Ansible-rollen til implementering af klynger er blevet forbedret 15-20 gange. Dermed er arbejdet med store klynger blevet lettere.
  • Der er kommet et værktøj til forenklet migration fra gamle versioner >1.6 og <1.10, som er tilgængeligt via en ekstra mulighed ved opstart. Tidligere skulle migration ske ved at implementere den mellemliggende version 1.10.
  • Der er foretaget optimering af opbevaring af små tuples.
  • Der er implementeret understøttelse af UUID i SQL, og typekonverteringen er forbedret.

Det skal bemærkes, at fra version 2.10 vil der blive overgået til en ny politik for udgivelse af versioner. Ved væsentlige udgivelser med brud på bagudkompatibilitet vil det første versionsnummer ændres, ved mellemliggende udgivelser det andet, og ved rettelsesudgivelser det tredje (efter 2.10 vil version 3.0.0 blive udgivet).

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster