انتشار یک DBMS چند منظوره که مدلهای ذخیرهسازی انعطافپذیری را برای اسناد، نمودارها و دادههای کلید-مقدار ارائه میدهد. دسترسی به پایگاه داده از طریق یک زبان پرسوجوی شبیه به SQL امکانپذیر است. یا از طریق افزونههای اختصاصی جاوا اسکریپت. روشهای ذخیرهسازی دادهها با الزامات ACID (اتمیک بودن، سازگاری، جداسازی و دوام) مطابقت دارند، از تراکنشها پشتیبانی میکنند و مقیاسپذیری افقی و عمودی را فراهم میکنند. DBMS را میتوان از طریق رابط وب یا یک کلاینت کنسول مدیریت کرد. کد آرانگو دیبی تحت مجوز آپاچی ۲.۰. این پروژه با زبانهای سی و جاوا اسکریپت نوشته شده است.
ویژگیهای کلیدی ArangoDB:
- امکان انجام بدون تعریف طرحواره ذخیره سازی داده (بدون طرحواره) - داده ها به شکل اسنادی ساختار یافته اند که در آنها ابرداده و اطلاعات مربوط به ساختار از داده های کاربر جدا می شوند.
- پشتیبانی از استفاده از ArangoDB به عنوان سرور برای برنامههای وب جاوا اسکریپت با قابلیت دسترسی به پایگاه داده از طریق REST/Web API؛
- استفاده از جاوا اسکریپت برای برنامههای مرورگر که به پایگاه داده دسترسی دارند و برای هندلرهایی که در سمت DBMS اجرا میشوند؛
- معماری چند رشتهای که بار را بین تمام هستههای پردازنده توزیع میکند؛
- یک مدل ذخیرهسازی داده انعطافپذیر که میتواند جفتهای کلید-مقدار، اسناد و پارامترهایی را که روابط بین رکوردها را تعریف میکنند، ترکیب کند (وسیلهای برای پیمایش رئوس گراف فراهم میکند)؛
- مدلهای مختلف نمایش دادهها (اسناد، نمودارها و نگاشتهای کلید-مقدار) را میتوان در یک پرسوجوی واحد ترکیب کرد و تجمیع دادههای ناهمگن را آسانتر کرد.
- پشتیبانی از ادغام کوئریها (JOIN)؛
- امکان انتخاب نوع شاخص متناسب با وظایفی که حل میشوند (برای مثال، میتوانید از شاخص برای جستجوی متن کامل استفاده کنید)؛
- قابلیت اطمینان قابل تنظیم: خود برنامه میتواند تعیین کند که چه چیزی برایش مهمتر است: قابلیت اطمینان بالاتر یا عملکرد بالاتر؛
- ذخیرهسازی کارآمد که از سختافزارهای مدرن (مانند SSDها) نهایت استفاده را میبرد و میتواند از حافظههای پنهان بزرگ استفاده کند؛
- تراکنشها: توانایی اجرای پرسوجوها روی چندین سند یا مجموعه به طور همزمان، با قابلیت اختیاری سازگاری و جداسازی تراکنشها؛
- پشتیبانی از تکثیر و شاردینگ: امکان ایجاد پیکربندیهای master-slave و توزیع مجموعه دادهها در سرورهای مختلف بر اساس یک ویژگی خاص؛
- یک چارچوب جاوا اسکریپت برای ایجاد میکروسرویسها ارائه شده است. ، درون سرور DBMS با دسترسی مستقیم به دادهها اجرا میشود.
، معرفی شده در نسخه ArangoDB 3.6:
- عملکرد زیرکوئریها و همچنین عملیاتهای UPDATE و REPLACE بهینه شده است؛
- قابلیت موازیسازی اجرای کوئریهای AQL پیادهسازی شده است که امکان کاهش زمان مورد نیاز برای جمعآوری دادههای توزیعشده در گرههای خوشهای مختلف را فراهم میکند.
- امکان به تعویق انداختن تحقق اسناد فراهم شده است که در برخی شرایط، نیاز به استخراج کامل اسناد نامربوط را از بین میبرد.
- هنگام اسکن اسناد، رد زودهنگام اسنادی که با فیلتر مشخص شده مطابقت ندارند، تضمین میشود.
- موتور جستجوی متن کامل ArangoSearch بهبود یافته است و از رتبهبندی بر اساس شباهت دادهها پشتیبانی میکند. پشتیبانی از تحلیلگر برای تکمیل خودکار پرسوجو اضافه شده است و توابع TOKENS() و PHRASE() برای تولید پویای پرسوجوهای جستجو پیادهسازی شدهاند.
- تنظیم maxRuntime برای محدود کردن انتخابی زمان اجرای پرس و جو اضافه شد.
- گزینه "--query.optimizer-rules" برای کنترل فعالسازی بهینهسازیهای خاص هنگام پردازش کوئریها اضافه شد؛
- قابلیتهای گستردهتر برای سازماندهی عملیات کلاستر. گزینه "--cluster.upgrade" برای انتخاب حالت ارتقاء گره کلاستر اضافه شده است.
- پشتیبانی از TLS 1.3 برای رمزگذاری کانال ارتباطی بین کلاینت و سرور اضافه شد (به طور پیشفرض، کلاینت همچنان از TLS 1.2 استفاده میکند).
منبع: opennet.ru
