عن المشروع
rudb هي قاعدة بيانات تحليلية مدمجة مكتوبة بلغة Rust، صُممت كبديل متوافق مع DuckDB مع أهداف طموحة في الأداء واستهلاك الموارد. يستهدف المشروع أداءً يفوق DuckDB بعشرة أضعاف في ClickBench وTPC-H، مع حد أدنى لكل استعلام بعدم تجاوز بطء DuckDB أبداً، وتخفيضات بعشرة أضعاف في استخدام القرص والذاكرة ووحدة المعالجة المركزية. يراهن تصميمها الأساسي على تخطيطات فيزيائية تُختار في وقت التشغيل، وضغط متعدد الأعمدة بقواميس عامة، ومشغلات تنفذ مباشرة على البيانات المشفرة بدلاً من فك التشفير أولاً.
الحالة الحالية مبكرة: اكتمل M0 اعتباراً من الإصدار v0.1.0، ويوفر مساحة عمل تضم 27 صندوقاً (crates)، ومحرك استعلامات داخل الذاكرة، وواجهة أوامر متوافقة مع DuckDB بستة عشر وضع إخراج، واجتياز اختبارات التكامل المستمر على Linux وmacOS وWindows. لا يوجد بعد تنسيق تخزين دائم، ولا مُحسِّن، ولا معاملات، والصلات تستخدم حلقات متداخلة. المعلم التالي، M1، هو تجربة تنسيق لقياس ما إذا كانت نسب الضغط المتوقعة قابلة للتحقيق قبل البناء الإضافي.
يتضمن المستودع مواصفات تفصيلية من عشرين وثيقة كُتبت قبل التنفيذ، تغطي التخزين والضغط والتنفيذ وتوليد الكود والتحسين وتوافق SQL والمعاملات ومنهجية قياس الأداء والاختبار. يُنظم التطوير حول اثني عشر معلماً تُتبع كمسائل، مع تحديد M3 وM6 وM10 كنقاط توقف مفيدة. المشروع مرخص بموجب Apache-2.0 وغير تابع لشركة DuckDB Labs؛ يُعاد تنفيذ التوافق وفقاً للتنسيقات والترويسات المنشورة.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.