انتشار Tarantool 2.8 DBMS

نسخه جدیدی از Tarantool 2.8 DBMS موجود است که ذخیره سازی دائمی داده را با اطلاعات بازیابی شده از پایگاه داده درون حافظه فراهم می کند. DBMS سرعت بالای پردازش پرس و جو ویژگی های سیستم های NoSQL (به عنوان مثال Memcached و Redis) را با قابلیت اطمینان DBMS های سنتی (Oracle، MySQL و PostgreSQL) ترکیب می کند. Tarantool به زبان C نوشته شده است و به شما امکان می دهد رویه های ذخیره شده را در Lua ایجاد کنید. کد تحت مجوز BSD توزیع شده است.

DBMS به شما این امکان را می دهد که به طور موثر با حجم زیادی از داده ها تحت بارهای بالا کار کنید. از جمله ویژگی های Tarantool، امکان ایجاد هندلر به زبان Lua (LuaJIT داخلی است)، استفاده از فرمت MessagePack هنگام تبادل داده با مشتری، وجود دو موتور داخلی (ذخیره سازی در رم با ریست) به یک درایو دائمی و ذخیره سازی دیسک دو سطحی مبتنی بر LSM-tree)، پشتیبانی از کلیدهای ثانویه، چهار نوع شاخص (HASH، TREE، RTREE، BITSET)، ابزارهایی برای تکرار همزمان و ناهمزمان در حالت Master-Master، پشتیبانی از احراز هویت اتصال و کنترل دسترسی، توانایی پردازش پرس و جوهای SQL.

تغییرات اصلی:

  • تثبیت MVCC (Multi-Version Concurrency Control) در موتور حافظه داخلی memtx.
  • پشتیبانی از تراکنش در پروتکل باینری IPROTO. قبلاً، یک تراکنش نیاز به نوشتن رویه ذخیره شده در Lua داشت.
  • پشتیبانی از تکرار همزمان، که در رابطه با جداول جداگانه کار می کند.
  • مکانیزمی برای تغییر خودکار به یک گره پشتیبان (failover) بر اساس پروتکل RAFT. تکرار ناهمزمان مبتنی بر WAL مدت‌هاست که در Tarantool پیاده‌سازی شده است؛ حالا دیگر نیازی به نظارت دستی بر گره اصلی ندارید.
  • سوئیچینگ خودکار گره اصلی در مورد توپولوژی با اشتراک گذاری داده نیز در دسترس است (کتابخانه vshard استفاده می شود که داده ها را در سرورها با استفاده از سطل های مجازی توزیع می کند).
  • بهبود چارچوب برای ساخت برنامه های کلاستر کارتریج Tarantool هنگام کار در محیط های مجازی. کارتریج Tarantool اکنون بار را بهتر نگه می دارد.
  • کار نقش Ansible برای استقرار خوشه تا 15-20 برابر تسریع شده است. این کار با خوشه های بزرگ را آسان تر می کند.
  • ابزاری برای انتقال ساده از نسخه های قدیمی > 1.6 و <1.10 ظاهر شده است که با استفاده از یک گزینه اضافی در هنگام راه اندازی در دسترس است. پیش از این، مهاجرت باید از طریق استقرار نسخه موقت 1.10 انجام می شد.
  • ذخیره سازی تاپل های کوچک بهینه شده است.
  • SQL اکنون از UUID ها پشتیبانی می کند و تبدیل نوع را بهبود می بخشد.

شایان ذکر است که از نسخه 2.10 انتقال به یک سیاست جدید برای تولید نسخه ها وجود خواهد داشت. برای نسخه های قابل توجهی که سازگاری رو به عقب را از بین می برند، رقم اول نسخه تغییر می کند، برای نسخه های میانی - دوم، و برای نسخه های اصلاحی - رقم سوم (پس از 2.10، نسخه 3.0.0 منتشر خواهد شد).

منبع: opennet.ru

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