Apache Parquet (تخزين عمودي)
Parquet هو تنسيق تخزين عمودي محسّن للاستعلامات التحليلية على مجموعات البيانات الكبيرة. من خلال تخزين البيانات عموداً بعمود بدلاً من صف بصف، يتيح Parquet ضغطاً فعالاً واستعلامات سريعة تقرأ فقط الأعمدة المطلوبة.
نوع MIME
application/vnd.apache.parquet
النوع
ثنائي
الضغط
بدون فقدان
المزايا
- + Excellent compression through columnar encoding
- + Fast analytical queries — reads only needed columns
- + Predicate pushdown skips irrelevant row groups entirely
- + Standard in Spark, DuckDB, Pandas, and cloud data lakes
العيوب
- − Not suited for transactional row-level updates
- − More complex to write than CSV or JSON
- − Schema evolution has some limitations
متى تستخدم .PARQUET
استخدم Parquet لبحيرات البيانات وأحمال عمل التحليلات ومعالجة Spark/Pandas وأي مجموعة بيانات كبيرة حيث تسيطر الاستعلامات العمودية.
التفاصيل التقنية
تحتوي ملفات Parquet على مجموعات صفوف، كل منها مقسمة إلى أجزاء أعمدة مع ترميز على مستوى الصفحة (قاموسي وRLE ودلتا). تمكّن الإحصائيات (الحد الأدنى/الأقصى) لكل عمود من predicate pushdown. يدعم البيانات المتداخلة عبر ترميز Dremel.
التاريخ
أنشأت Twitter وCloudera تنسيق Parquet في 2013 مستوحى من ورقة Dremel من Google. أصبح مشروع Apache وهو الآن التنسيق الافتراضي لبحيرات البيانات وSpark ومنصات التحليلات الحديثة.