ռազմավարական բազմաօգտակար տվյալների բազայի թողարկում , որը տրամադրում է ճկուն փաստաթղթային, գրաֆիկ և բանալի-արժեք տվյալների պահպանում: Տվյալների հետ աշխատելը կատարվում է SQL-մանրէի նման հարցումների լեզվով կամ հատուկ ընդլայնումներով JavaScript լեզվով: Տվյալների պահպալումը համապատասխանում է ACID (ատոմարություն, համաձայնություն, մեկուսացում, վստահելիություն) պահանջներին, աջակցում է տրանսակցիաներին և ապահովում ինչպես հորիզոնական, այնպես էլ ուղղահայաց մասշտաբավորում: Տվյալների բազայի կառավարման գործընթացը կարող է իրականացվել ինչպես ցանցային ինտերֆեյսի, այնպես էլ консольային հաճախորդի միջոցով . ArangoDB-ի կոդը Apache 2 լիցենզիայով: Ծրագիրը գրված է C և JavaScript լեզուներով:
ArangoDB-ի հիմնական առանձնահատկությունները:
- Դրա կարիքը չունենալու տվյալների պահպանումը (Schema-free)՝ տվյալները կառուցվում են փաստաթղթերի ձևով, որտեղ մետադաթան և կառուցվածքային տեղեկատվությունը կիսվում է օգտատերերի տվյալներից;
- ArangoDB-ն օգտագործվում է որպես JavaScript լեզվով ցանցային ծրագրերի սերվեր, որն աջակցում է տվյալների բազային մուտք գործելու հնարավորությանը REST/Web API-ի միջոցով;
- JavaScript-ի օգտագործումը՝ բրաուզերում տվյալների բազային դիմող ծրագրերի և տվյալների բազայում կատարված պրոցեսորների համար:
- Պնյոտ մասնիկային կառուցվածք, որը բեռը տարածում է բոլոր CPU-ի միջուկների վրա;
- Ճկուն տվյալների պահպանում, որտեղ կարող են համակցվել բանալի-արժեք, փաստաթղթեր և գրառումների միջև կապերը սահմանող պարամետրեր (ողջացման միջոցներ տրամադրվում են գրաֆի գագաթները շրջելու համար);
- Տվյալների ներկայացման տարբեր մոդելներ (փաստաթղթեր, գրաֆեր և բանալի-արժեք կապակցություններ) կարող են խառնվել մեկ հարցման մեջ, ինչը հեշտացնում է տարբեր տվյալների հավաքումը;
- Աջակցություն միացման (JOIN) հարցումների;
- Մեծ հաշվեկշռի պարամետրերի ընտրության հնարավորությունը, որը համապատասխանում է կատարելիք խնդիրներին (օրինակ, կարելի է օգտագործել ամբողջական տեքստային որոնման համար հաշվի մուտք):
- Հարմարեցվող հուսալիություն՝ ծրագիրը ինքն իրեն կարող է որոշել, թե ինչ բանալի է կարևորագույնը՝ բարձր հուսալիություն, թե բարձր կատարողականություն;
- Զարմանալի պահեստ, որտեղ լիովին օգտագործվում են ժամանակակից սարքավորումների հնարավորությունները (օրինակ՝ SSD պահեստներ) և կարող են կիրառվել մեծ կեշեր;
- Տրանսակցիաներ՝ հնարավորությունն արագ գործարկել հարցումներ միաժամանակ մի քանիսիս փաստաթղթերի կամ հավաքել մեջ, ընտրովի տրանսակցիոն համաձայնությամբ և մեկուսացմամբ;
- Աջակցություն կրկնօրնակման և շտապման, հնարավորության ստեղծում master-slave կոնֆիգուրացիաներ և տվյալների հավաքների տարածումը տարբեր սերվերներում ըստ որոշակի նշանի;
- Միկրոսերվերների ստեղծման համար տրամադրվում է JavaScript-ֆրեյմվորկ , որը կատարվում է տվյալների բազայի սերվերի ներսում՝ ուղիղ մուտքով տվյալներին:
, առաջարկված ArangoDB 3.6 թողարկումում:
- Որակի բարելավում ունի ենթահարցումների արտադրողականությունը, ինչպես նաև UPDATE և REPLACE գործողությունները;
- Աշխատանքային է AQL հարցերի զուգահեռ կատարումը, ինչը թույլ է տալիս կրճատել տվյալների հավաքման ժամանակը, որոնք բաժանված են տվյալների կենտրոնի տարբեր узловերում։
- Միասնական փաստաթղթերի ուշացված նյութականացում, որը որոշ դեպքերում թույլ է տալիս խուսափել ոչ համապատասխան փաստաթղթերի լիարժեք հանելու անհրաժեշտությունից։
- Փաստաթղթերը սկանավորելիս ապահովվում է համապատասխան ֆիլտրի պայմաններին չհամապատասխանող փաստաթղթերի վաղ վերացում։
- Բարելավվել է ArangoSearch լիակատար որոնման համակարգը, որը աջակցում է տվյալների նմանությանը համաձայն վարկանիշավորման: Ավելացված է հարցերի հանելու համաչափ թափանցիկ վերլուծիչի աջակցություն, իրականացվել են TOKENS() և PHRASE() ֆունկցիաները որոնման հարցերի դինամիկ ձևավորման համար;
- Ավելացված է maxRuntime կարգավորումը հարցի կատարումը ընտրովի սահմանափակելու համար;
- Ավելացված է «—query.optimizer-rules» տարբերակը հարցերի մշակման ժամանակ որոշ օպտիմալացման ակտիվացման վերահսկման համար;
- Հնարավորությունները ընդլայնվել են կլաստերի աշխատանքը կազմակերպելու համար: Ավելացված է «—cluster.upgrade» տարբերակը կլաստերի узловերի թարմացման ռեժիմը ընտրելու համար;
- Ավելացված է TLS 1.3-ի աջակցությունը հաճախորդի և սերվերի միջև կապի ազդանշանիEncryption- ի համար (Պայմանավորվածություն կա, որ հաճախորդը շարունակել է օգտագործել TLS 1.2)।
Ընտանիք: opennet.ru
