مقالات
يُحدد تعريف القائمة (أو يُكتب DESC اختصارًا) المخطط الجديد للقائمة المُؤكدة، مع سطر واحد لكل عمود (الوظيفة أو السمة). الأنواع المدعومة هي JSON، والأنواع العددية المُدمجة، والسلاسل. يجب أن تدعم جميع الميزات الأنواع المُتاحة. تُعد أنواع INTN وINT8N وFLOATN شائعة. الأنواع الفرعية المُعترف بها هي FAISS_Dot وFAISS_L1 وHNSW_L1 وHNSW_L2 وHNSW_Mark وSQ4 وSQ8.
قم بتثبيت الإنشاء الجديد على تلك التي تحتوي على طلبات
في عمليات البحث عن الأسماء المنخفضة، تُؤخذ في الاعتبار جميع الصفوف الحية (الفريدة) التي تم ربطها (أحيانًا من قائمة السمات، أو من مسح كامل). عند انتهاء المهلة، يتم رفع وضع الحصار الجديد تلقائيًا. يتم السماح بسجلات WAL (سجلات الإنشاء المسبق) افتراضيًا، وتكون جميع النتائج آمنة افتراضيًا، حيث يمكن استعادة عمليات البحث من الأعطال عن طريق إعادة تشغيل سجلات WAL.
عناكب HNSW
- تتيح لك أجهزة "الوقت المتوقع" الجديدة تمامًا إلغاء الاستفسارات بشكل قاطع بعد أن تتجاوز ميزانية تاريخ التسليم (الافتراضي) الخاصة بها.
- (لأن إنشاء قائمة متجهات الحجز الزائد لا ينجح أبداً.)
- هل ينبغي حقاً أن نؤمن بأن الأوزان لها علاقة بأي مجال آخر، بينما كنا نعتزم بالتأكيد الحد من مظهرنا حتى تتمكن من الوصول إلى العناوين؟
- في قناة SNIPPET(DOCUMENT(), …) يتم استدعاء فهارس النص الكامل مرة أخرى أثناء التحليل.
- عند ضبط القيمة على 1، يقوم الفهرس بتحليل سطر subscribe_file الأولي كقائمة من المقالات، وستقوم بفحص كل مقال مقابل المخطط الجديد.
عند البحث وترتيب النتائج، يصنف Sphinx جميع كلمات البحث الرئيسية وفقًا لعدد من الفئات. في الإصدار 3.5، يُتيح لك الوصول إلى مؤشرات مستوى دفعات bank transfer الوظيفة، إما من فهرس الوظائف أو من هوية المجتمع. بالتالي، ضمن كل من الدوال المعرفة من قبل المستخدم (UDFs) وكلمات البحث، يمكنك الحصول على هذه القيم، والتي قد تحتاج إلى اعتبارها قيمًا فارغة (null). يتم تجاهل هذه القيم الفارغة في أداء JSON لنقاط المجتمع (Points()). أخيرًا، تُعد نقاط المجتمع أكثر دقة، حيث يتم حسابها لكل وظيفة على حدة.
في الواقع، يتم استخدام قيم كبيرة لـ mem_limit داخليًا، لفترة طويلة. ولكن، هناك بعض المشكلات (الاختيارية) التي يجب تجاهلها، وأبرزها sql_query_place و subscribe_attrs. القيمة الموصى بها، والقيمة الافتراضية هي 0، أي nolimit.

يتتبع محرك البحث التكميلي الجديد فقط تكرارات الكلمات المفتاحية المقترنة، وليس سبب اقترانها. لم تكن إحدى الكلمات المفتاحية الحشو موجودة في منطقة "I"، ومن المتوقع أن تكون مناسبة، أليس كذلك؟! لذا فهو يشير تحديدًا إلى تطابق المسار الأول لمنطقة أخرى (المنطقة "B")، ولكن كيف يتطابق النطاق التالي للمنطقة التالية الأحدث (المنطقة "I") أيضًا؟ تُنتج الدالة ZONESPANLIST() قائمة بالنطاقات التي طابقها عامل ZONESPAN، باستخدام نمط نصي بسيط. تُحسب الدالة VSUM() جميع أجزاء متجه الوسيط.
توفير الأوراق الجديدة
في الخطوة الثالثة، يتم تخزين الدوال التي تحتوي على أنواع البيانات UINT وBIGINT وFloat_Assortment باستخدام 24 بايت لكل صف (4+8+12 بايت على التوالي). تحتوي الملفات عادةً على قائمة من حقول نصية مُعنونة، وميزات مُكوّنة بشكل عشوائي. وهذا يعني أنه يمكنه الاتصال بقواعد البيانات بشكل مباشر، والعمل مع استعلامات SQL، واستخراج البيانات، وإنشاء فهارس نصية كاملة.
البحث: صيغة الاستعلام
نعم، في المثال السابق، استغرقت الاستعلامات المتوسطة 0.011 ثانية فقط من وقت المعالجة المركزية، بينما استغرقت عمليات البحث الإجمالية 7.5 مليون ثانية من وقت المعالجة المركزية منذ آخر إعادة تشغيل (لخدمة 661 مليون استعلام). عند تفعيل خيار –cpustats، ستظهر عدادات عامة إضافية في حالة العرض، ولكل سطح استعلام في مخرجات SHOW META، بالإضافة إلى تحليلات إضافية في سجل الاستعلامات البطيئة، تمامًا كما هو الحال مع خيار –iostats. ومع مجموعات بيانات تضم أكثر من 100 مليون صف، لن يكون الأمر سريعًا! على عكس المجموعات المدربة مسبقًا على البيانات التي اخترتها يدويًا، لا يقوم Sphinx حاليًا بإعادة تجميع مجموعة بيانات الإدخال بالكامل. لتعطيل ذاكرة التخزين المؤقت للاستعلامات، اضبط حد النسب (akaqcache_max_bytes) على 0.