A Comparative Analysis of Efficient Similarity Search in Qdrant as a Vector Database and FAISS as a Vector Search Library
تثبت هذه الدراسة تجريبيًا أنه في ظل ظروف معينة أحادية النواة مع مجموعة بيانات مكونة من 20,000 متجه، يتفوق FAISS المهيأ بـ IndexFlatL2 بشكل كبير على وضع Local Mode القائم على HNSW في Qdrant من خلال تحقيق زمن انتقال أقل بنحو 24.9 مرة وإنتاجية أعلى، مما يسلط الضوء على مقايضات الأداء بين مكتبات البحث عن المتجهات المتخصصة والأنظمة الموجهة نحو قواعد البيانات.
البحث الأصلي مرخَّص بموجب CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل
في العالم الرقمي، تتعلم الحواسيب بشكل متزايد فهم المعنى ليس من خلال قراءة الكلمات، بل عن طريق ترجمتها إلى قوائم طويلة من الأرقام. تخيل مساحة شاسعة وغير مرئية حيث يتم تمثيل كل فكرة أو صورة أو نص كنقطة واحدة. في هذه المساحة، تمثل النقاط المتقاربة أشياءً متشابهة، بينما تمثل النقاط المتباعدة أشياءً مختلفة تماماً. تتيح هذه الطريقة للآلات العثاد على المعلومات ذات الصلة بسرعة، مما يدعم كل شيء بدءاً من محركات البحث التي تفهم قصدك وصولاً إلى أنظمة التوصية التي تقترح عليك الفيلم المناسب. ومع ذلك، مع نمو هذه المجموعات من النقاط لتصل إلى الملايين أو المليارات، يصبح العثور على المطابقة الأقرب لاستعلام جديد تحدياً حوسبياً هائلاً. فإذا اضطر الكمبيوتر إلى مقارنة سؤال جديد مقابل كل عنصر مخزن واحداً تلو الآخر، فستكون العملية بطيئة جداً للاستخدام في العالم الحقيقي. ولحل هذه المشكلة، طور الباحثون نوعين رئيسيين من الأدوات: مكتبات متخصصة مصممة خصيصاً للسرعة في العثور على هذه المطابقات، وقواعد بيانات كاملة تخزن البيانات بشكل دائم وتوفر ميزات إضافية مثل التصفية والإدارة.
لقد وضعت دراسة حديثة أجراها دوكيك هوفسيبيانان في الجامعة الأوروبية في أرمينيا، هدفاً لقياس فرق الأداء في العالم الحقيقي بين هذين النهجين. قارن الباحث بين مكتبة بحث متخصصة تسمى FAISS وقاعدة بيانات شعاعية (vector database) تسمى Qdrant. ولضمان إجراء اختبار عادل، استخدمت التجربة بيئة محكومة حيث طُلب من كلا النظامين حل نفس المشكلة تماماً: العثور على أكثر عشرة عناصر تشابهاً مع استعلام معين ضمن مجموعة مكونة من عشرين ألف عنصر، حيث تم وصف كل عنصر بـ مائة وثمانية وعشرين خاصية مختلفة. أُجريت الاختبارات على نواة معالج كمبيوتر واحدة لعزل السرعة الخام لآليات البحث دون مساعدة معالجات متعددة تعمل معاً.
كشفت النتائج عن فجوة صارخة في السرعة الخام بين التكوينين. فقد تم ضبط المكتبة المتخصصة، FAISS، للقيام بعملية بحث دقيقة، مما يعني أنها تحسب المسافة إلى كل عنصر لضمان الحصول على الإجابة الأكثر دقة. في هذا الإعداد، وجدت المطابقات الصحيحة في متوسط يقل قليلاً عن أربعة أعشار الملي ثانية لكل استعلام. سمح هذا بمعالجة أكثر من ألفين وخمسمائة استعلام في الثانية. في المقابل، كان نظام قاعدة البيانات، Qdrant، يعمل في وضع محلي يخزن البيانات على القرص ويستخدم طريقة مختلفة، أسرع ولكن تقريبية، للتنقل عبر البيانات. وتحت هذه الظروف المحددة، استغرق Qdrant ما يقرب من عشرة مللي ثانية للإجابة على كل استعلام، مما أدى إلى إنتاجية تزيد قليلاً عن مائة استعلام في الثانية. كانت المكتبة المتخصصة أسرع بنحو خمسة وعشرين ضعفاً من حيث عدد الأسئلة التي يمكنها الإجابة عليها في الثانية، وأسرع بخمسة وعشرين ضعفاً في المدة التي تستغرقها للإجابة على سؤال واحد.
ومع ذلك، تؤكد الدراسة أن هذا الاختلاف لا يعني أن أحد التقنيتين متفوق عالمياً على الآخر. لقد صُممت التجربة لمقارنة إعدادات محددة، وليس كامل إمكانات البرامج. فقد تم اختبار المكتبة كأداة بحث نقية في الذاكرة، بينما تم اختبار قاعدة البيانات مع تفعيل ميزات التخزين والإدارة الخاصة بها، على الرغم من أن هذه الميزات الإضافية لم تكن محور اختبار السرعة. يوفر نهج قاعدة البيانات مزايا كبيرة لم يقسها اختبار السرعة، مثل القدرة على الحفاظ على سلامة البيانات على القرص الصلب بعد إيقاف تشغيل الكمبيوتر، وتصفية النتائج بناءً على معلومات أخرى مثل التواريخ أو الفئات، وإدارة مجموعات كبيرة من البيانات كنظام متماسك. وفي المقابل، فإن المكتبة هي محرك متخصص بُني لمهمة واحدة: العثيد على الجيران الأقرب بأسرع ما يمكن، وغالباً ما يكون ذلك على حساب الحاجة إلى إبقاء جميع البيانات في الذاكرة المؤقتة للكمبيوتر.
خلص الباحث إلى أن فجوة الأداء الملحوظة هي سمة من سمات التكوينات المحددة المستخدمة في التجربة وليست قاعدة أساسية تنطبق على جميع الحالات. فإذا كانت مجموعة البيانات أكبر، أو كان لدى الكمبيوتر المزيد من نوى المعالجات، أو إذا تم تشغيل قاعدة البيانات كخادم منفصل بدلاً من أداة محلية، فمن المرجح أن تتغير الأرقام. وتعد هذه الدراسة بمثابة خط أساس واضح، حيث تُظهر أنه بالنسبة لمهمة بحث مباشرة وبسيطة على معالج واحد، يمكن للمكتبة المتخصصة أن تكون أسرع بكثير من نظام قاعدة البيانات الذي يؤدي المهمة نفسها. ومع ذلك، بالنسبة للتطبيقات التي تتطلب تخزين البيانات بشكل دائم، أو التصفية بناءً على قواعد معقدة، أو إدارة مجموعات ضخمة من البيانات، فإن قاعدة البيانات توفر مجموعة أوسع من الأدوات التي لا توفرها المكتبة المتخصصة. ويعتمد الاختيار بينهما على ما إذا كانت الأولوية هي أسرع إجابة ممكنة لسؤال بسيط، أو القدرة على إدارة واسترجاع البيانات ضمن نظام أكبر وأكثر تعقيداً.
غارق في أبحاث مجالك؟
تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.