Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

PuffinMetadata

الوصف

تنسيق إدخال خاص لقراءة البيانات الوصفية لتذييل ملفات Apache Iceberg Puffin. يُنتج صفًا واحدًا لكل إدخال blob في قائمة التذييل BlobMetadata.

deletion-vector-v1 هو نوع blob الوحيد المدعوم؛ ويُرفض أي ملف يحتوي على نوع blob آخر (مثل apache-datasketches-theta-v1).

أعمدة الإخراج الثابتة:

  • blob_type (String) - نوع blob، مثل deletion-vector-v1
  • snapshot_id (Int64) - معرّف لقطة blob
  • sequence_number (Int64) - رقم تسلسل blob
  • fields (Array(Int32)) - قائمة معرّفات الحقول التي ينطبق عليها blob
  • offset (Int64) - إزاحة حمولة blob في الملف
  • length (Int64) - طول حمولة blob بالبايت
  • compression_codec (String) - ترميز ضغط حمولة blob، إن وُجد
  • properties (Map(String, String)) - خصائص خاصة بـ blob

تخضع FileMetadata.properties الاختيارية ذات المستوى الأعلى في التذييل (مثل created-by) للتحقق من النوع عند وجودها، لكنها لا تُعاد كأعمدة. إذا كان المفتاح موجودًا، فيجب أن تكون قيمته كائن JSON ذي قيم نصية (وتُرفض القيمة null).

تُدعم تذييلات Puffin المضغوطة بـ LZ4 وغير المضغوطة. يُقيَّد حجم حمولة التذييل (وحجم محتوى LZ4 المُعلن) بنسبة ضغط، عند الاقتضاء، وبحد أقصى مطلق؛ وتُرفض التذييلات كبيرة الحجم قبل تخصيص الذاكرة.

مثال على الاستخدام

افحص كائنات blob في التذييل:

SELECT blob_type, snapshot_id, sequence_number, offset, length, compression_codec,
       mapKeys(properties), mapValues(properties)
FROM file(deletes.puffin, PuffinMetadata);

استخدمه مع تنسيق Puffin لقراءة حمولات blob لـ deletion-vector-v1.

Navigation