Dqlite 1.0، نسخه توزیع شده SQLite از Canonical، در دسترس است

ابتدایی опубликовала انتشار پروژه مهم Dqlite 1.0 (Distributed SQLite)، که یک موتور SQL تعبیه شده سازگار با SQLite را توسعه می دهد که از تکرار داده ها، بازیابی خودکار از خرابی ها و تحمل خطا با توزیع کنترل کننده ها در چندین گره پشتیبانی می کند. DBMS در قالب یک کتابخانه C متصل به برنامه ها و توزیع شده توسط تحت مجوز Apache 2.0 (SQLite اصلی در دامنه عمومی ارائه شده است). صحافی زبان موجود است Go.

این کتابخانه یک افزونه به پایگاه کد SQLite موجود است که پشتیبانی از پروتکل شبکه را برای اتصال چندین نمونه از یک برنامه کاربردی که بر روی هاست های مختلف اجرا می شود، اضافه می کند. یک برنامه کاربردی که با Dqlite کامپایل شده است می تواند به عنوان یک خوشه خودکفا برای تحمل خطا، مستقل از DBMS های خارجی عمل کند. در عمل، Dqlite توسط Canonical در سیستم مدیریت کانتینر خود استفاده می شود LXD. از جمله حوزه‌های کاربردی کتابخانه، ایجاد دستگاه‌ها و پردازنده‌های اینترنت اشیا مقاوم در برابر خطا در سیستم‌ها نیز ذکر شده است.
لبه- محاسبات.

برای اطمینان از سازگاری در تکرار داده ها، یک روش اجماع مبتنی بر الگوریتم استفاده می شود قایقکه در پروژه هایی مانند etcd، RethinkDB، CockroachDB و OpenDaylight استفاده می شود. Dqlite از پیاده سازی ناهمزمان خود استفاده می کند مهارت، به زبان C نوشته شده است. کتابخانه های آماده برای پردازش اتصال چندگانه و سازماندهی راه اندازی کوروتین ها استفاده می شوند لیبوو и libco.

در مقایسه با پروژه مشابه rqliteDqlite پشتیبانی کامل از تراکنش ها را ارائه می دهد، می تواند با هر پروژه C ارتباط برقرار کند، استفاده از تابع time() را امکان پذیر می کند و به جای Replication مبتنی بر ترجمه SQL از Replication مبتنی بر فریم استفاده می کند.

ویژگی های Dqlite:

  • انجام کلیه عملیات دیسک و شبکه به صورت ناهمزمان.
  • در دسترس بودن مجموعه آزمایشی برای تأیید صحت داده ها؛
  • مصرف کم حافظه و تبادل کارآمد داده از طریق شبکه؛
  • ذخیره سازی دائمی پایگاه داده و لاگ تراکنش ها بر روی دیسک (با امکان کش در حافظه).
  • بازیابی سریع از شکست؛
  • مشتری CLI پایدار در زبان Go، که می تواند برای مقداردهی اولیه پایگاه داده، پیکربندی تکرار و اتصال/قطع گره ها استفاده شود.
  • از معماری های ARM، X86، POWER و IBM Z پشتیبانی می کند.
  • اجرای الگوریتم Raft برای به حداقل رساندن تاخیر در هنگام انجام تراکنش ها بهینه شده است.

منبع: opennet.ru

اضافه کردن نظر