🚀 جرب Zilliz Cloud، الـ Milvus المدارة بالكامل، مجاناً — تجربة أداء أسرع بـ 10 أضعاف! جرب الآن>>

milvus-logo
LFAI
الصفحة الرئيسية
  • دليل المستخدم
  • Home
  • Docs
  • دليل المستخدم

  • البحث وإعادة التصنيف

  • التصفية

  • مشغلات JSON

مشغلات JSON

تدعم Milvus مشغلات متقدمة للاستعلام عن حقول JSON وتصفيتها، مما يجعلها مثالية لإدارة البيانات المعقدة والمنظمة. تتيح هذه المشغلات الاستعلام الفعال للغاية عن مستندات JSON، مما يسمح لك باسترداد الكيانات بناءً على عناصر أو قيم أو شروط محددة داخل حقول JSON. سيرشدك هذا القسم إلى كيفية استخدام مشغلي JSON في Milvus، مع تقديم أمثلة عملية لتوضيح وظائفهم.

لا يمكن لحقول JSON التعامل مع البنى المعقدة والمتداخلة وتتعامل مع جميع البنى المتداخلة كسلاسل عادية. ولذلك، عند العمل مع حقول JSON، يُنصح بتجنب التداخل العميق بشكل مفرط والتأكد من أن هياكل البيانات الخاصة بك مسطحة قدر الإمكان لتحقيق الأداء الأمثل.

معاملات JSON المتاحة

يوفر ميلفوس العديد من عوامل تشغيل JSON القوية التي تساعد في تصفية بيانات JSON والاستعلام عنها، وهذه العوامل هي

دعونا نستكشف هذه العوامل مع أمثلة لنرى كيف يمكن تطبيقها في سيناريوهات العالم الحقيقي.

JSON_CONTAINS

يتحقق المشغل json_contains مما إذا كان هناك عنصر معين أو مصفوفة فرعية موجودة داخل حقل JSON. يكون مفيدًا عندما تريد التأكد من احتواء مصفوفة أو كائن JSON على قيمة معينة.

مثال

تخيل أن لديك مجموعة من المنتجات، كل منها يحتوي على حقل tags يحتوي على مصفوفة JSON من السلاسل، مثل ["electronics", "sale", "new"]. تريد تصفية المنتجات التي تحتوي على العلامة "sale".

# JSON data: {"tags": ["electronics", "sale", "new"]}
filter = 'json_contains(tags, "sale")'

في هذا المثال، سيعيد Milvus جميع المنتجات التي يحتوي فيها الحقل tags على العنصر "sale".

json_contains_all

يضمن المشغل json_contains_all وجود جميع عناصر تعبير JSON المحدد في الحقل الهدف. وهو مفيد بشكل خاص عندما تحتاج إلى مطابقة قيم متعددة داخل مصفوفة JSON.

مثال

استمرارًا لسيناريو علامات المنتج، إذا كنت تريد العثور على جميع المنتجات التي تحتوي على العلامات "electronics" و "sale" و "new" ، يمكنك استخدام المشغل json_contains_all.

# JSON data: {"tags": ["electronics", "sale", "new", "discount"]}
filter = 'json_contains_all(tags, ["electronics", "sale", "new"])'

سيعيد هذا الاستعلام جميع المنتجات حيث تحتوي المصفوفة tags على العناصر الثلاثة المحددة: "electronics" و "sale" و "new".

json_cotains_any

يقوم المشغل json_contains_any بتصفية الكيانات التي يوجد فيها عضو واحد على الأقل من تعبير JSON داخل الحقل. يكون هذا مفيدًا عندما تريد مطابقة الكيانات استنادًا إلى أي قيمة من عدة قيم ممكنة.

مثال

لنفترض أنك تريد تصفية المنتجات التي تحتوي على واحدة على الأقل من العلامات "electronics" أو "sale" أو "new". يمكنك استخدام المشغل json_contains_any لتحقيق ذلك.

# JSON data: {"tags": ["electronics", "sale", "new"]}
filter = 'json_contains_any(tags, ["electronics", "new", "clearance"])'

في هذه الحالة، سيعيد Milvus جميع المنتجات التي تحتوي على واحدة على الأقل من العلامات في القائمة ["electronics", "new", "clearance"]. حتى إذا كان المنتج يحتوي على إحدى هذه العلامات فقط، فسيتم تضمينه في النتيجة.

جرب Managed Milvus مجاناً

Zilliz Cloud خالي من المتاعب، ويعمل بواسطة Milvus ويعمل بسرعة 10 أضعاف.

ابدأ
التعليقات

هل كانت هذه الصفحة مفيدة؟