çoxfunksiyalı DBMS buraxılışı , sənədlərin, qrafiklərin və açar-dəyər formatında məlumatların çevik saxlanma modelləri təqdim edən. Veritabanı ilə iş SQL-bənzəri sorğu dili vasitəsilə həyata keçirilir və ya xüsusi JavaScript dilində uzantılar vasitəsilə. Məlumatların saxlanması ACID (atomiklik, uyğunluq, izolyasiya, etibarlılıq) tələblərinə uyğun gəlir, tranzaksiyaları dəstəkləyir və həm horizontal, həm də vertikal miqyaslana bilir. DBMS-in idarə edilməsi web-interfeys və ya konsol müştərisi vasitəsilə həyata keçirilə bilər . ArangoDB kodu Apache 2 licensiyası altında. Layihə C və JavaScript dillərində yazılmışdır.
ArangoDB-nin əsas xüsusiyyətləri:
- Məlumatların saxlanma sxemini müəyyən etmədən istifadə imkanı (Schema-free) — məlumatlar, metadatalar və struktur haqqında məlumatın istifadəçi məlumatlarından ayrı saxlanıldığı sənəd formasında təşkil edilir;
- REST/Web API vasitəsilə verilənlər bazasına giriş imkanı ilə JavaScript dilində web tətbiqləri üçün ArangoDB-in server kimi istifadəsini dəstəkləyir;
- Verilənlər bazasına müraciət edən brauzer tətbiqləri və DBMS daxilində icra olunan proseslər üçün JavaScript istifadəsi;
- Bütün CPU nüvələri arasında yükü dağıdan çoxirimiçi arxitektura;
- Açar-dəyər cütləri, sənədlər və qeydlər arasındakı əlaqələri müəyyən edən parametrlərin birləşdirilə biləcəyi çevik məlumat saxlanma modeli (qrafın düyünlərində gəzinti üçün vasitələr təqdim olunur);
- Müxtəlif məlumat təsviri modelləri (sənədlər, qrafiklər və açar-dəyər cütləri) eyni sorğuda qarışdırıla bilər ki, bu da heterojen məlumatların yığılmasını asanlaşdırır;
- Birləşdirmə (JOIN) sorğularının dəstəyi;
- Hədəflənən məsələlərə uyğun indeksi seçmə imkanı (məsələn, tam mətni axtaran indeks istifadə edilə bilər);
- Konfiqurasiya edilə bilən etibarlılıq: tətbiq özü daha yüksək etibarlılığı yoxsa daha yüksək performansı prioritetləşdirəcəyini müəyyən edə bilər;
- Müasir avadanlıqların (məsələn, SSD saxlama cihazları) imkanlarından tam istifadə edən effektiv anbar və böyük keşi tətbiq etmək imkanı;
- Tranzaksiyalar: bir neçə sənəd və ya toplu üçün sorğuları bir anda icra etmə imkanı, tranzaksiyaların uyğunluq və izolyasiyası seçimi ilə;
- Replikasiya və şardinq dəstəyi: master-slave konfiqurasiyalarının yaradılması və müəyyən bir meyara əsasən məlumat dəstlərinin müxtəlif serverlərə yayılması imkanı;
- Mikroservislərin yaradılması üçün JavaScript çərçivəsi , verilənlərə birbaşa giriş ilə DBMS serveri içində icra olunur.
, ArangoDB 3.6-da təqdim olunanlar:
- Sub-sorğuların, eləcə də UPDATE və REPLACE əməliyyatlarının performansının optimallaşdırılması həyata keçirilmişdir;
- AQL sorğularının paralel icra olunması imkanı təmin edilib ki, bu da məlumatların müxtəlif klaster düyünləri üzrə toplanma vaxtını azaltmağa imkan verir;
- Sənədlərin gecikmiş materializasiyası həyata keçirilib, bu da bəzi hallarda relevanssız sənədlərin tam çıxarılmasını tələb etmədən imkanı artırır;
- Sənədlərin skan edilməsi zamanı, müəyyən edilmiş filtra uyğun gəlməyən sənədlərin zamanında atılması təmin edilib;
- ArangoSearch tam mətni axtarış motoru təkmilləşdirilib, bu da məlumat oxşarlığına əsaslanan sıralama dəstəkləyir. Sorğular üçün avtomatik tamamlama analizatoru dəstəyi əlavə olunub, dinamik axtarış sorğuları formalaşdırılması üçün TOKENS() və PHRASE() funksiyaları həyata keçirilib;
- Sorğunun icra müddətini seçməli məhdudlaşdırmaq üçün maxRuntime ayarı əlavə olunub;
- Sorğuların işlənməsi zamanı müəyyən optimallaşdırmaların aktivləşdirilməsini idarə etmək üçün —query.optimizer-rules seçimi əlavə olunub;
- Klasterin işini təşkil etmək üçün imkanlar genişləndirilib. Klasterdə düyünlərin yeniləmə rejimini seçmək üçün —cluster.upgrade seçimi əlavə olunub;
- Müştəri və server arasında əlaqənin şifrələnməsi üçün TLS 1.3 dəstəyi əlavə edilib (standartda müştəri TLS 1.2 istifadə etməyə davam edir).
Mənbə: opennet.ru
