الوصف
ITZMA هي مكتبة قاعدة بيانات متجهات مبنية على Rust مصممة للبحث الفعال عن المتجهات مباشرة على تخزين الكائنات. توفر حلاً قابلاً للتوسع، دائماً، وسحابياً لتطبيقات الذكاء الاصطناعي التي تتطلب أن تكون بياناتها متاحة بسهولة دون عبء خادم قاعدة بيانات وسيط. من خلال تضمين ITZMA داخل عملية تطبيقك، يمكنك التفاعل مباشرة مع تخزين الكائنات مثل S3، GCS، Azure، القرص المحلي، أو حتى التخزين في الذاكرة، معاملةً إياها كمصدر دائم للحقيقة لبيانات المتجهات الخاصة بك.
قراءة المزيد
تم تصميم الهيكل الأساسي لـ ITZMA لبيئات السحابة، مما يسمح لعمليات متعددة بقراءة وكتابة إلى نفس دلو تخزين الكائنات بشكل متزامن دون الحاجة إلى منسق أو قفل أو قائد. يتم تحقيق ذلك من خلال الاستفادة من الوظائف المدمجة `put-if-absent` و`conditional update` لمخازن الكائنات، مما يضمن صحة البيانات وتناسقها. يتم تأكيد عملية الكتابة في الدلو قبل أن تعود المكالمة، مما يضمن الديمومة.
يدعم ITZMA كلاً من بحث المتجهات الكثيفة والنادرة. يمكن فهرسة المتجهات الكثيفة باستخدام خوارزميات HNSW أو SQ8، يتم اختيارها لكل جزء، مع إعادة ترتيب المرشحين بناءً على المتجهات الدقيقة لضمان نتائج دقيقة. يتم تخزين المتجهات النادرة، الممثلة كأزواج (معرف المصطلح، الوزن)، بجانب المتجهات الكثيفة، مما يمكّن من الاستعلامات النادرة الدقيقة مع فهرس مقلوب اختياري. بالإضافة إلى ذلك، يوفر قدرات بحث مفلترة، مما يسمح للمستخدمين بتعريف سمات محددة (Bool، Number، Text، TextSet، NumberSet) عند إنشاء مساحة اسم وتطبيق الفلاتر بشكل مستقل أو لتضييق استعلامات المتجهات.
تشمل الميزات الرئيسية الكتابات الدفعة الذرية، دعم لمختلف خلفيات تخزين الكائنات، واستراتيجية فهرسة مرنة يمكن أن تتكيف مع أنماط الوصول المختلفة (مثل HNSW للقراءات المخزنة، SQ8 للقراءات غير المخزنة). توفر المكتبة أيضًا روابط بايثون فوق نواتها الآمنة في الذاكرة، مما يجعلها متاحة لمجتمع المطورين الأوسع. المهام الصيانة مثل الضغط والفهرسة واضحة، مما يمنح المطورين السيطرة الكاملة على إدارة بياناتهم. تم بناء ITZMA بواسطة سيرجيو مارسيال، مهندس برمجيات رئيسي ذو خبرة واسعة في الأنظمة الموزعة، بهدف توفير حل بحث متجهات دقيق ودائم.
- الفئةقواعد البيانات المتجهة والاسترجاع
- نموذج التسعيرمفتوح المصدر
- النشرLibrary
- المنصاتالويب
الميزات الأساسية لـ ITZMA
بحث المتجهات على تخزين الكائنات
مكتبة Rust مع روابط بايثون
تخزين بيانات قابل للتوسع ودائم
معمارية سحابية بدون خادم
يدعم بحث المتجهات الكثيفة (HNSW، SQ8)
يدعم بحث المتجهات النادرة مع فهرس مقلوب
بحث مفلتر على السمات المحددة
كتابات متزامنة من عمليات متعددة
كتابات وعمليات حذف ذرية
متوافق مع S3، GCS، Azure، القرص المحلي، الذاكرة
ضغط وفهرسة واضحة
ذاكرة قراءة RAM وNVMe
تقرير صحة للقراءة فقط
مدخلات NumPy وArrow في بايثون
كيفية استخدام ITZMA؟
تثبيت ITZMA: أضف حزمة Rust من crates.io أو قم بتثبيت حزمة بايثون من PyPI.
إنشاء مساحة اسم: عرّف مساحة اسم بأبعاد ثابتة، مقياس (L2، جيب التمام، حاصل الضرب النقطي)، وسمات محددة.
كتابة المستندات: أرسل عمليات إدخال وحذف دفعة إلى مساحة الاسم، والتي يتم تخزينها في دلو الكائنات.
استعلام البيانات: قم بإجراء استعلامات متجهات كثيفة أو نادرة، مع فلاتر اختيارية، لاسترجاع أقرب النتائج.
إدارة الصيانة: استدعاء الضغط، جمع القمامة، والفهرسة بشكل صريح حسب الحاجة لتحقيق أداء مثالي.
حالات استخدام ITZMA
- بناء تطبيقات الذكاء الاصطناعي
- تخزين البيانات السحابية
- استرجاع في الوقت الحقيقي
- بحث المتجهات الكثيفة والنادرة
- استعلامات المتجهات المفلترة
- إدارة البيانات الموزعة
- تطوير Rust وPython



