format_schema
تفيد هذه المعلمة عند استخدام تنسيقات تتطلب تعريفًا للمخطط، مثل Cap’n Proto أو Protobuf. وتعتمد القيمة على التنسيق.format_schema_message_name
حدِّد اسم الرسالة المطلوبة في المخطط المحدد فيformat_schema.
للحفاظ على التوافق مع تنسيق format_schema القديم (file_name:message_name):
- إذا لم يتم تحديد
format_schema_message_name، فسيُستدل على اسم الرسالة من جزءmessage_nameفي قيمةformat_schemaالقديمة. - إذا تم تحديد
format_schema_message_nameعند استخدام التنسيق القديم، فسيتم إصدار خطأ.
format_schema_source
حدّد مصدرformat_schema.
القيم الممكنة:
- ‘file’ (الافتراضي): يكون
format_schemaاسم ملف مخطط موجود في الدليلformat_schemas. - ‘string’: يكون
format_schemaالمحتوى الحرفي للمخطط. - ‘query’: يكون
format_schemaاستعلامًا لاسترجاع المخطط. عند ضبطformat_schema_sourceعلى ‘query’، تنطبق الشروط التالية: - يجب أن يُرجع الاستعلام قيمة واحدة فقط: صفًا واحدًا بعمود نصي واحد.
- تُعامَل نتيجة الاستعلام على أنها محتوى المخطط.
- تُخزَّن هذه النتيجة مؤقتًا محليًا في الدليل
format_schemas. - يمكنك مسح الذاكرة المؤقتة المحلية باستخدام الأمر:
SYSTEM DROP FORMAT SCHEMA CACHE FOR Files. - بعد تخزينها مؤقتًا، لا تُنفَّذ الاستعلامات المتطابقة الصادرة عن المستخدم نفسه مرة أخرى لجلب المخطط إلى أن تُمسَح الذاكرة المؤقتة صراحةً
- بالإضافة إلى ملفات الذاكرة المؤقتة المحلية، تُخزَّن أيضًا رسائل Protobuf مؤقتًا في الذاكرة. وحتى بعد مسح ملفات الذاكرة المؤقتة المحلية، يجب مسح الذاكرة المؤقتة الموجودة في الذاكرة باستخدام
SYSTEM DROP FORMAT SCHEMA CACHE [FOR Protobuf]لتحديث المخطط بالكامل. - شغّل الاستعلام
SYSTEM DROP FORMAT SCHEMA CACHEلمسح الذاكرة المؤقتة لكلٍّ من ملفات الذاكرة المؤقتة ومخططات رسائل Protobuf دفعةً واحدة. - يُنفَّذ الاستعلام نيابةً عن المستخدم الذي يُشغّله، ولذلك فهو خاضع لصلاحيات الوصول الخاصة بذلك المستخدم، ولا يُعاد استخدام نتيجته المخزَّنة مؤقتًا إلا للمستخدم نفسه. ولا يمكن تنفيذه حيث لا يوجد مستخدم: في مهمة خلفية، مثل مستهلك محرك تدفق، أو عند تحليل بيانات
INSERTفي جهة العميل. استخدم في تلك الحالاتformat_schema_sourceمضبوطًا علىfileأوstring.