فهرسة البيانات من Azure Blob Storage

في هذه المقالة، تعرف على كيفية تكوين مفهرس يستورد المحتوى من Azure Blob Storage ويجعله قابلا للبحث في Azure الذكاء الاصطناعي Search. المدخلات إلى المفهرس هي الكائنات الثنائية كبيرة الحجم الخاصة بك، في حاوية واحدة. الإخراج هو فهرس بحث يحتوي على محتوى قابل للبحث وبيانات تعريف مخزنة في حقول فردية.

تكمل هذه المقالة إنشاء مفهرس بمعلومات خاصة ب Blob Storage. ويستخدم واجهات برمجة تطبيقات REST لإظهار سير عمل من ثلاثة أجزاء مشترك بين جميع المفهرسات: إنشاء مصدر بيانات، وإنشاء فهرس، وإنشاء مفهرس. يحدث استخراج البيانات عند إرسال طلب إنشاء مفهرس.

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

المتطلبات الأساسية

  • Azure Blob Storage، الأداء القياسي (الإصدار 2 للأغراض العامة).

  • تتضمن مستويات الوصول الساخنة والباردة والباردة والأرشيف. يمكن للمفهرسات استرداد الكائنات الثنائية كبيرة الحجم على طبقات الوصول الساخنة والباردة والباردة.

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

  • تكوين شبكة مدعوم والوصول إلى البيانات. كحد أدنى، تحتاج إلى أذونات القراءة في Azure Storage. تمنحك سلسلة الاتصال التخزين التي تتضمن مفتاح وصول حق الوصول للقراءة إلى محتوى التخزين. إذا كنت تستخدم بدلا من ذلك عمليات تسجيل الدخول والأدوار من Microsoft Entra، فتأكد من أن الهوية المدارة لخدمة البحث لديها أذونات Storage Blob Data Reader .

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

  • استخدم عميل REST لصياغة استدعاءات REST مشابهة لتلك الموضحة في هذه المقالة.

تنسيقات المستندات المعتمدة

يمكن لمفهرس الكائن الثنائي كبير الحجم استخراج النص من تنسيقات المستندات التالية:

تحديد الكائنات الثنائية كبيرة الحجم التي يجب فهرستها

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

  • ضع الكائنات الثنائية كبيرة الحجم في مجلد ظاهري. يتضمن تعريف مصدر بيانات المفهرس معلمة "استعلام" يمكن أن تأخذ مجلدا ظاهريا. إذا قمت بتحديد مجلد ظاهري، فستتم فهرسة هذه الكائنات الثنائية كبيرة الحجم فقط في المجلد.

  • قم بتضمين الكائنات الثنائية كبيرة الحجم أو استبعادها حسب نوع الملف. يمكن أن تساعدك قائمة تنسيقات المستندات المدعومة في تحديد الكائنات الثنائية كبيرة الحجم التي يجب استبعادها. على سبيل المثال، قد ترغب في استبعاد ملفات الصور أو الصوت التي لا توفر نصا قابلا للبحث. يتم التحكم في هذه الإمكانية من خلال إعدادات التكوين في المفهرس.

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

    اسم الخاصية قيمة الخاصية الشرح
    "AzureSearch_Skip" "true" يرشد مفهرس الكائن الثنائي كبير الحجم إلى تخطي الكائن الثنائي كبير الحجم تماما. لا تتم محاولة بيانات التعريف ولا استخراج المحتوى. هذا مفيد عندما يفشل كائن ثنائي كبير الحجم معين بشكل متكرر ويقاطع عملية الفهرسة.
    "AzureSearch_SkipContent" "true" يتخطى المحتوى ويستخرج بيانات التعريف فقط. هذا يعادل الإعداد الموضح "dataToExtract" : "allMetadata" في إعدادات التكوين ، فقط تم تحديد نطاقه إلى كائن ثنائي كبير الحجم معين.

إذا لم تقم بإعداد معايير التضمين أو الاستبعاد، يبلغ المفهرس عن كائن ثنائي كبير الحجم غير مؤهل كخطأ وينتقل. إذا حدثت أخطاء كافية، فقد تتوقف المعالجة. يمكنك تحديد التسامح مع الخطأ في إعدادات تكوين المفهرس.

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

مستند مركب أو مضمن (مثل أرشيف ZIP أو مستند Word مع بريد إلكتروني مضمن في Outlook يحتوي على مرفقات أو . تتم أيضا فهرسة ملف MSG مع المرفقات) كمستند واحد. على سبيل المثال، جميع الصور المستخرجة من مرفقات . سيتم إرجاع ملف MSG في حقل normalized_images. إذا كانت لديك صور، ففكر في إضافة الذكاء الاصطناعي الإثراء للحصول على المزيد من أداة البحث من هذا المحتوى.

يتم استخراج المحتوى النصي لمستند في حقل سلسلة يسمى "المحتوى". يمكنك أيضا استخراج بيانات التعريف القياسية والمعرفة من قبل المستخدم.

فهرسة بيانات تعريف الكائن الثنائي كبير الحجم

يمكن أيضا فهرسة بيانات تعريف Blob، وهذا مفيد إذا كنت تعتقد أن أي من خصائص بيانات التعريف القياسية أو المخصصة مفيدة في عوامل التصفية والاستعلامات.

يتم استخراج خصائص بيانات التعريف المحددة من قبل المستخدم حرفيا. لتلقي القيم، يجب تعريف الحقل في فهرس البحث من النوع Edm.String، بنفس اسم مفتاح بيانات التعريف للكائن الثنائي كبير الحجم. على سبيل المثال، إذا كان الكائن الثنائي كبير الحجم يحتوي على مفتاح بيانات تعريف بقيمة SensitivityHigh، فيجب عليك تعريف حقل مسمى Sensitivity في فهرس البحث وسيتم ملؤه بالقيمة High.

يمكن استخراج خصائص بيانات تعريف الكائن الثنائي كبير الحجم القياسية في حقول مماثلة مسماة ومكتبة، كما هو موضح أدناه. يقوم مفهرس الكائن الثنائي كبير الحجم تلقائيا بإنشاء تعيينات الحقول الداخلية لخصائص بيانات تعريف الكائن الثنائي كبير الحجم هذه، وتحويل اسم الواصلة الأصلي ("metadata-storage-name") إلى اسم مكافئ تم تأكيده ("metadata_storage_name").

لا يزال يتعين عليك إضافة الحقول المميزة إلى تعريف الفهرس، ولكن يمكنك حذف تعيينات الحقول لأن المفهرس يقوم بإجراء الاقتران تلقائيا.

  • metadata_storage_name (Edm.String) - اسم ملف الكائن الثنائي كبير الحجم. على سبيل المثال، إذا كان لديك كائن ثنائي كبير الحجم /my-container/my-folder/subfolder/resume.pdf، فإن قيمة هذا الحقل هي resume.pdf.

  • metadata_storage_path (Edm.String) - URI الكامل للكائن الثنائي كبير الحجم، بما في ذلك حساب التخزين. على سبيل المثال، https://myaccount.blob.core.windows.net/my-container/my-folder/subfolder/resume.pdf

  • metadata_storage_content_type (Edm.String) - نوع المحتوى كما هو محدد بواسطة التعليمات البرمجية التي استخدمتها لتحميل الكائن الثنائي كبير الحجم. على سبيل المثال، application/octet-stream

  • metadata_storage_last_modified (Edm.DateTimeOffset) - آخر طابع زمني تم تعديله للكائن الثنائي كبير الحجم. يستخدم Azure الذكاء الاصطناعي Search هذا الطابع الزمني لتحديد الكائنات الثنائية كبيرة الحجم المتغيرة، لتجنب إعادة فهرسة كل شيء بعد الفهرسة الأولية.

  • metadata_storage_size (Edm.Int64) - حجم الكائن الثنائي كبير الحجم بالبايت.

  • metadata_storage_content_md5 (Edm.String) - تجزئة MD5 لمحتوى الكائن الثنائي كبير الحجم، إذا كان متوفرا.

  • metadata_storage_sas_token (Edm.String) - رمز SAS مؤقت يمكن استخدامه من قبل المهارات المخصصة للوصول إلى الكائن الثنائي كبير الحجم. لا يجب تخزين هذا الرمز المميز لاستخدامه لاحقا حيث قد تنتهي صلاحيته.

وأخيرا، يمكن أيضا تمثيل أي خصائص بيانات تعريف خاصة بتنسيق المستند للكائنات الثنائية كبيرة الحجم التي تقوم بفهرستها في مخطط الفهرس. لمزيد من المعلومات حول بيانات التعريف الخاصة بالمحتوى، راجع خصائص بيانات تعريف المحتوى.

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

حاليا، فهرسة علامات فهرس كائن ثنائي كبير الحجم غير مدعومة من قبل هذا المفهرس.

تعريف مصدر البيانات

يحدد تعريف مصدر البيانات البيانات للفهرسة وبيانات الاعتماد والنهج لتحديد التغييرات في البيانات. يتم تعريف مصدر البيانات كمورد مستقل بحيث يمكن استخدامه من قبل مفهرسات متعددة.

  1. إنشاء مصدر بيانات أو تحديثه لتعيين تعريفه:

    {
        "name" : "my-blob-datasource",
        "type" : "azureblob",
        "credentials" : { "connectionString" : "DefaultEndpointsProtocol=https;AccountName=<account name>;AccountKey=<account key>;" },
        "container" : { "name" : "my-container", "query" : "<optional-virtual-directory-name>" }
    }
    
  2. تعيين "type" إلى "azureblob" (مطلوب).

  3. تعيين "بيانات الاعتماد" إلى سلسلة الاتصال تخزين Azure. يصف القسم التالي التنسيقات المدعومة.

  4. قم بتعيين "حاوية" إلى حاوية الكائن الثنائي كبير الحجم، واستخدم "الاستعلام" لتحديد أي مجلدات فرعية.

يمكن أن يتضمن تعريف مصدر البيانات أيضا نهج الحذف المبدئي، إذا كنت تريد أن يقوم المفهرس بحذف مستند بحث عند وضع علامة على المستند المصدر للحذف.

بيانات الاعتماد سلسلة الاتصال المدعومة

يمكن للمفهرسات الاتصال بحاوية كائن ثنائي كبير الحجم باستخدام الاتصالات التالية.

سلسلة الاتصال حساب تخزين الوصول الكامل
{ "connectionString" : "DefaultEndpointsProtocol=https;AccountName=<your storage account>;AccountKey=<your account key>;" }
يمكنك الحصول على سلسلة الاتصال من صفحة حساب التخزين في مدخل Microsoft Azure عن طريق تحديد مفاتيح الوصول في جزء التنقل الأيمن. تأكد من تحديد سلسلة الاتصال كامل وليس مجرد مفتاح.
سلسلة الاتصال الهوية المدارة
{ "connectionString" : "ResourceId=/subscriptions/<your subscription ID>/resourceGroups/<your resource group name>/providers/Microsoft.Storage/storageAccounts/<your storage account name>/;" }
لا يتطلب هذا سلسلة الاتصال مفتاح حساب، ولكن يجب أن تكون قد قمت مسبقا بتكوين خدمة بحث للاتصال باستخدام هوية مدارة.
توقيع الوصول المشترك لحساب التخزين** (SAS) سلسلة الاتصال
{ "connectionString" : "BlobEndpoint=https://<your account>.blob.core.windows.net/;SharedAccessSignature=?sv=2016-05-31&sig=<the signature>&spr=https&se=<the validity end time>&srt=co&ss=b&sp=rl;" }
يجب أن يكون لدى SAS أذونات القائمة والقراءة على الحاويات والكائنات (الكائنات الثنائية كبيرة الحجم في هذه الحالة).
توقيع الوصول المشترك للحاوية
{ "connectionString" : "ContainerSharedAccessUri=https://<your storage account>.blob.core.windows.net/<container name>?sv=2016-05-31&sr=c&sig=<the signature>&se=<the validity end time>&sp=rl;" }
يجب أن يكون لدى SAS أذونات القائمة والقراءة على الحاوية. لمزيد من المعلومات، راجع استخدام توقيعات الوصول المشترك.

إشعار

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

إضافة حقول بحث إلى فهرس

في فهرس البحث، أضف حقولا لقبول محتوى وبيانات التعريف الخاصة ب Azure blobs.

  1. إنشاء فهرس أو تحديثه لتعريف حقول البحث التي ستخزن محتوى الكائن الثنائي كبير الحجم وبيانات التعريف:

    POST https://[service name].search.windows.net/indexes?api-version=2020-06-30
    {
        "name" : "my-search-index",
        "fields": [
            { "name": "ID", "type": "Edm.String", "key": true, "searchable": false },
            { "name": "content", "type": "Edm.String", "searchable": true, "filterable": false },
            { "name": "metadata_storage_name", "type": "Edm.String", "searchable": false, "filterable": true, "sortable": true  },
            { "name": "metadata_storage_size", "type": "Edm.Int64", "searchable": false, "filterable": true, "sortable": true  },
            { "name": "metadata_storage_content_type", "type": "Edm.String", "searchable": false, "filterable": true, "sortable": true },        
        ]
    }
    
  2. إنشاء حقل مفتاح مستند ("المفتاح": صحيح). بالنسبة لمحتوى الكائن الثنائي كبير الحجم، فإن أفضل المرشحين هي خصائص بيانات التعريف.

    • metadata_storage_path (افتراضي) المسار الكامل إلى الكائن أو الملف. سيتم ملء حقل المفتاح ("المعرف" في هذا المثال) بقيم من metadata_storage_path لأنه الافتراضي.

    • metadata_storage_name، قابل للاستخدام فقط إذا كانت الأسماء فريدة من نوعها. إذا كنت تريد هذا الحقل كمفتاح، فانتقل "key": true إلى تعريف الحقل هذا.

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

    غالبا ما تتضمن خصائص بيانات التعريف أحرفا، مثل / و -، وهي غير صالحة لمفاتيح المستندات. نظرا لأن المفهرس لديه خاصية "base64EncodeKeys" (صحيح بشكل افتراضي)، فإنه يقوم تلقائيا بترميز خاصية بيانات التعريف، دون الحاجة إلى تكوين أو تعيين حقل.

  3. أضف حقل "محتوى" لتخزين النص المستخرج من كل ملف من خلال خاصية "المحتوى" للكائن الثنائي كبير الحجم. لست مطالبا باستخدام هذا الاسم، ولكن القيام بذلك يتيح لك الاستفادة من تعيينات الحقول الضمنية.

  4. إضافة حقول لخصائص بيانات التعريف القياسية. يمكن للمفهرس قراءة خصائص بيانات التعريف المخصصة وخصائص بيانات التعريف القياسية وخصائص بيانات التعريف الخاصة بالمحتوى.

تكوين وتشغيل مفهرس كائن ثنائي كبير الحجم

بمجرد إنشاء الفهرس ومصدر البيانات، تصبح جاهزا لإنشاء المفهرس. يحدد تكوين المفهرس المدخلات والمعلمات والخصائص التي تتحكم في سلوكيات وقت التشغيل. يمكنك أيضا تحديد أجزاء الكائن الثنائي كبير الحجم المراد فهرستها.

  1. إنشاء مفهرس أو تحديثه عن طريق تسميته والإشارة إلى مصدر البيانات والفهرس الهدف:

    POST https://[service name].search.windows.net/indexers?api-version=2020-06-30
    {
      "name" : "my-blob-indexer",
      "dataSourceName" : "my-blob-datasource",
      "targetIndexName" : "my-search-index",
      "parameters": {
          "batchSize": null,
          "maxFailedItems": null,
          "maxFailedItemsPerBatch": null,
          "base64EncodeKeys": null,
          "configuration": {
              "indexedFileNameExtensions" : ".pdf,.docx",
              "excludedFileNameExtensions" : ".png,.jpeg",
              "dataToExtract": "contentAndMetadata",
              "parsingMode": "default"
          }
      },
      "schedule" : { },
      "fieldMappings" : [ ]
    }
    
  2. تعيين batchSize ما إذا كان الافتراضي (10 مستندات) إما غير مستغل بشكل صحيح أو يغمر الموارد المتوفرة. أحجام الدفعات الافتراضية محددة لمصدر البيانات. تعمل فهرسة Blob على تعيين حجم الدفعة إلى 10 مستندات للتعرف على متوسط حجم المستند الأكبر.

  3. ضمن "التكوين"، تحكم في الكائنات الثنائية كبيرة الحجم التي تتم فهرستها استنادا إلى نوع الملف، أو اتركها غير محددة لاسترداد كافة الكائنات الثنائية كبيرة الحجم.

    بالنسبة إلى "indexedFileNameExtensions"، قم بتوفير قائمة مفصولة بفواصل من ملحقات الملفات (مع نقطة بادئة). قم بنفس الشيء للإشارة "excludedFileNameExtensions" إلى الملحقات التي يجب تخطيها. إذا كان الملحق نفسه في كلتا القائمتين، فسيتم استبعاده من الفهرسة.

  4. ضمن "التكوين"، قم بتعيين "dataToExtract" للتحكم في أجزاء الكائنات الثنائية كبيرة الحجم التي تتم فهرستها:

    • يحدد "contentAndMetadata" فهرسة جميع بيانات التعريف والمحتوى النصي المستخرج من الكائن الثنائي كبير الحجم. وتكون هذه هي القيمة الافتراضية.

    • يحدد "storageMetadata" أنه تتم فهرسة خصائص blob القياسية وبيانات التعريف المحددة من قبل المستخدم فقط.

    • يحدد "allMetadata" أنه يتم استخراج خصائص الكائن الثنائي كبير الحجم القياسية وأي بيانات تعريف بأنواع المحتويات التي تم العثور عليها من محتوى الكائن الثنائي كبير الحجم وفهرستها.

  5. ضمن "configuration"، قم بتعيين "parsingMode". وضع التحليل الافتراضي هو مستند بحث واحد لكل كائن ثنائي كبير الحجم. إذا كانت الكائنات الثنائية كبيرة الحجم نصا عاديا، يمكنك الحصول على أداء أفضل عن طريق التبديل إلى تحليل النص العادي. إذا كنت بحاجة إلى تحليل أكثر دقة يقوم بتعيين الكائنات الثنائية كبيرة الحجم إلى مستندات بحث متعددة، فحدد وضعا مختلفا. يتم دعم تحليل واحد إلى متعدد للكائنات الثنائية كبيرة الحجم التي تتكون من:

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

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

  7. راجع إنشاء مفهرس للحصول على مزيد من المعلومات حول الخصائص الأخرى. للحصول على القائمة الكاملة لأوصاف المعلمات، راجع معلمات تكوين Blob في واجهة برمجة تطبيقات REST.

يتم تشغيل المفهرس تلقائيا عند إنشائه. يمكنك منع ذلك عن طريق تعيين "معطل" إلى صحيح. للتحكم في تنفيذ المفهرس، قم بتشغيل مفهرس عند الطلب أو وضعه في جدول زمني.

التحقق من حالة المفهرس

لمراقبة حالة المفهرس ومحفوظات التنفيذ، أرسل طلب الحصول على حالة المفهرس:

GET https://myservice.search.windows.net/indexers/myindexer/status?api-version=2020-06-30
  Content-Type: application/json  
  api-key: [admin key]

تتضمن الاستجابة الحالة وعدد العناصر التي تمت معالجتها. يجب أن يبدو مشابها للمثال التالي:

    {
        "status":"running",
        "lastResult": {
            "status":"success",
            "errorMessage":null,
            "startTime":"2022-02-21T00:23:24.957Z",
            "endTime":"2022-02-21T00:36:47.752Z",
            "errors":[],
            "itemsProcessed":1599501,
            "itemsFailed":0,
            "initialTrackingState":null,
            "finalTrackingState":null
        },
        "executionHistory":
        [
            {
                "status":"success",
                "errorMessage":null,
                "startTime":"2022-02-21T00:23:24.957Z",
                "endTime":"2022-02-21T00:36:47.752Z",
                "errors":[],
                "itemsProcessed":1599501,
                "itemsFailed":0,
                "initialTrackingState":null,
                "finalTrackingState":null
            },
            ... earlier history items
        ]
    }

يحتوي سجل التنفيذ على ما يصل إلى 50 من أحدث عمليات التنفيذ المكتملة، والتي يتم فرزها بترتيب زمني عكسي بحيث يأتي التنفيذ الأخير أولا.

معالجة الأخطاء

تتضمن الأخطاء التي تحدث عادة أثناء الفهرسة أنواع محتويات غير معتمدة أو محتوى مفقود أو كائنات ثنائية كبيرة الحجم.

بشكل افتراضي، يتوقف مفهرس الكائن الثنائي كبير الحجم بمجرد أن يواجه كائن ثنائي كبير الحجم بنوع محتوى غير معتمد (على سبيل المثال، ملف صوتي). يمكنك استخدام المعلمة "excludedFileNameExtensions" لتخطي أنواع محتوى معينة. ومع ذلك، قد تحتاج إلى الفهرسة للمتابعة حتى في حالة حدوث أخطاء، ثم تصحيح المستندات الفردية لاحقا. لمزيد من المعلومات حول أخطاء المفهرس، راجع إرشاداتاستكشاف أخطاء المفهرس وتحذيراته وإصلاحها.

هناك خمس خصائص مفهرس تتحكم في استجابة المفهرس عند حدوث أخطاء.

PUT /indexers/[indexer name]?api-version=2020-06-30
{
  "parameters" : { 
    "maxFailedItems" : 10, 
    "maxFailedItemsPerBatch" : 10,
    "configuration" : { 
        "failOnUnsupportedContentType" : false, 
        "failOnUnprocessableDocument" : false,
        "indexStorageMetadataOnlyForOversizedDocuments": false
      }
    }
}
المعلمة‬ قيم صحيحة ‏‏الوصف
"maxFailedItems" -1، خال أو 0، عدد صحيح موجب متابعة الفهرسة إذا حدثت أخطاء في أي وقت من المعالجة، إما أثناء تحليل الكائنات الثنائية كبيرة الحجم أو أثناء إضافة مستندات إلى فهرس. تعيين هذه الخصائص إلى عدد حالات الفشل المقبولة. تسمح قيمة -1 بالمعالجة بغض النظر عن عدد الأخطاء التي تحدث. وإلا، تكون القيمة عددا صحيحا موجبا.
"maxFailedItemsPerBatch" -1، خال أو 0، عدد صحيح موجب كما هو موضح أعلاه، ولكن يستخدم للفهرسة الدفعية.
"failOnUnsupportedContentType" صواب أو خطأ إذا لم يتمكن المفهرس من تحديد نوع المحتوى، فحدد ما إذا كان يجب متابعة المهمة أو فشلها.
"failOnUnprocessableDocument" صواب أو خطأ إذا لم يتمكن المفهرس من معالجة مستند من نوع محتوى معتمد بخلاف ذلك، فحدد ما إذا كان يجب متابعة المهمة أو فشلها.
"indexStorageMetadataOnlyForOversizedDocuments" صواب أو خطأ يتم التعامل مع الكائنات الثنائية كبيرة الحجم كأخطاء بشكل افتراضي. إذا قمت بتعيين هذه المعلمة إلى true، فسيحاول المفهرس فهرسة بيانات التعريف الخاصة به حتى إذا تعذر فهرسة المحتوى. للحصول على حدود لحجم الكائن الثنائي كبير الحجم، راجع حدود الخدمة.

(راجع أيضًا )