Skip to main content
يوفّر واجهة مشابهة للجداول لتنفيذ select/insert على الملفات في Azure Blob Storage. دالة الجدول هذه مشابهة لـ دالة s3.

الصياغة

تكون بيانات الاعتماد مضمنة في سلسلة اتصال، لذلك لا حاجة إلى account_name/account_key بشكل منفصل:

وسيطات الدالة

المجموعات المسماة

يمكن أيضًا تمرير الوسائط باستخدام المجموعات المسماة. في هذه الحالة، تكون المفاتيح التالية مدعومة:
تختلف أسماء مفاتيح المجموعات المسماة عن أسماء الوسائط الموضعية للدالة: container (وليس container_name) وblob_path (وليس blobpath).
مثال:
يمكنك أيضًا تجاوز قيم المجموعة المُسمّاة وقت تنفيذ الاستعلام:

القيمة المعادة

جدول ذو البنية المحددة لقراءة البيانات من الملف المحدد أو كتابتها فيه.

أمثلة

القراءة بصيغة storage_account_url

القراءة باستخدام صيغة connection_string

الكتابة باستخدام التقسيمات

يشير المسار الذي يحتوي على {_partition_id} إلى استراتيجية التقسيم WILDCARD. لا يستخدم المسار الذي يحتوي على نمط glob آخر استراتيجية تقسيم ويتجاهل PARTITION BY. يستخدم المسار الذي لا يحتوي على نمط glob استراتيجية HIVE عندما يكون file_like_engine_default_partition_strategy مضبوطًا على HIVE؛ وإلا فلا يستخدم استراتيجية تقسيم.
ثم أعد قراءة قسم محدد:

الأعمدة الافتراضية

  • _path — مسار الملف. النوع: LowCardinality(String).
  • _file — اسم الملف. النوع: LowCardinality(String).
  • _size — حجم الملف بالبايت. النوع: Nullable(UInt64). إذا كان حجم الملف غير معروف، تكون القيمة NULL.
  • _time — وقت آخر تعديل للملف. النوع: Nullable(DateTime). إذا كان الوقت غير معروف، تكون القيمة NULL.

الكتابة مع التقسيم

استراتيجية التقسيم

مدعومة فقط مع استعلامات INSERT. WILDCARD: يستبدل الرمز البديل {_partition_id} في مسار الملف بمفتاح التقسيم الفعلي. ويُختار افتراضيًا عندما يحتوي المسار على {_partition_id}. عند عدم تعيين partition_strategy، لا يستخدم المسار الذي يحتوي على نمط glob آخر أي استراتيجية للتقسيم ويتجاهل PARTITION BY. أما المسار الذي لا يحتوي على glob، فيستخدم HIVE إذا كانت قيمة file_like_engine_default_partition_strategy هي HIVE؛ وإلا فلا يستخدم أي استراتيجية للتقسيم. يعتمد HIVE التقسيم بأسلوب Hive لعمليات القراءة & الكتابة. ويُنشئ الملفات بالتنسيق التالي: <prefix>/<key1=val1/key2=val2...>/<snowflakeid>.<toLower(file_format)>. مثال على استراتيجية التقسيم HIVE

إعداد use_hive_partitioning

هذا تلميح لـ ClickHouse لتحليل الملفات المُقسَّمة بأسلوب Hive عند القراءة. ولا يؤثر في الكتابة. ولجعل عمليتَي القراءة والكتابة متناظرتين، استخدم الوسيط partition_strategy. عند تعيين use_hive_partitioning إلى القيمة 1، سيكتشف ClickHouse التقسيم بأسلوب Hive في المسار (/name=value/) وسيتيح استخدام أعمدة التقسيم كأعمدة افتراضية في الاستعلام. وستحمل هذه الأعمدة الافتراضية الأسماء نفسها الموجودة في المسار المُقسَّم. مثال استخدم عمودًا افتراضيًا أُنشئ باستخدام التقسيم بأسلوب Hive

استخدام Shared Access Signatures (SAS)

Shared Access Signature ‏(SAS) هو URI يمنح وصولًا مقيّدًا إلى حاوية أو ملف في Azure Storage. استخدمه لتوفير وصول محدود زمنيًا إلى موارد حساب التخزين من دون مشاركة مفتاح حساب التخزين. مزيد من التفاصيل هنا. تدعم الدالة azureBlobStorage Shared Access Signatures ‏(SAS). يحتوي Blob SAS token على جميع المعلومات اللازمة لمصادقة الطلب، بما في ذلك الـ blob المستهدف، والأذونات، وفترة الصلاحية. ولإنشاء URL للـ blob، ألحِق SAS token بنقطة نهاية خدمة الـ blob. على سبيل المثال، إذا كانت نقطة النهاية هي https://clickhousedocstest.blob.core.windows.net/، يصبح الطلب كما يلي:
بدلًا من ذلك، يمكن للمستخدمين استخدام Blob SAS URL الذي أُنشئ:
آخر تعديل في ٢٧ أغسطس ٢٠٢٦