UltKit

تحويل CSV إلى Parquet

إنشاء ملف CSV سهل، لكن الاستعلام عنه بطيء. ارفع ملف CSV واحصل على ملف Apache Parquet يحمل نوع عمود لكل حقل، مضغوطًا وجاهزًا لأداة التحليل التي ستحمّله فيها.

محوّل البيانات

أو أفلت ملفات CSV, TSV, TXT … هنا ·

الحد الأقصى 95 MB لكل ملف· حتى 20 ملفًا· تُحذف بعد 30 دقيقة

الإخراج

تُعالج الملفات على خوادمنا وتُحذف بعد 30 دقيقة.

طريقة استخدام هذه الأداة

  1. 1

    ارفع ملفات CSV

    أضف ملف تصدير واحدًا أو حتى 20 ملفًا بالتخطيط نفسه، بحجم يصل إلى 95 MB لكل ملف. يتعامل الخيار الفاصل عند ضبطه على الكشف التلقائي مع الفواصل والفواصل المنقوطة والتبويبات والخطوط العمودية.

  2. 2

    أبقِ إعدادات العناوين والتواريخ كما هي

    يحوّل الخيار الصف الأول عناوين سطر العناوين إلى أسماء الأعمدة. أما التواريخ فهو مضبوط على ISO لتُكتب أعمدة التاريخ بصيغة موحّدة.

  3. 3

    حوّل إلى Parquet

    اضغط التحويل إلى Parquet ثم حمّل ملف .parquet في pandas أو DuckDB أو Spark أو مستودع بياناتك.

لماذا تحوّل فرق البيانات CSV إلى Parquet

أنشأ مهندسون في Twitter وCloudera صيغة Parquet عام 2013، مستندين إلى التخطيط العمودي الذي وصفته Google في ورقة Dremel عام 2010، وأصبحت مشروعًا رئيسيًا في Apache عام 2015. الفكرة بسيطة: بدل تخزين الجدول صفًا بصف كما يفعل CSV، تُخزَّن كل قيم العمود الواحد معًا. فالاستعلام الذي يحتاج ثلاثة أعمدة من أربعين يقرأ هذه الثلاثة فقط، والقيم المتشابهة المتجاورة تُضغط بكفاءة أكبر بكثير.

لهذا يحوّل المحللون ملفات التصدير قبل تحميلها، ويطلب مهندسو البيانات من الموردين Parquet بدل CSV، وتصبح خدمات مثل Amazon Athena وBigQuery، التي قد تحاسب بحسب كمية البيانات الممسوحة، أرخص في الاستعلام. كما أن CSV لا يعرف هل 0042 رقم أم رمز؛ أما Parquet فيسجّل نوعًا لكل عمود، فلا تضطر الأداة التالية إلى التخمين.

Parquet مقابل CSV مقابل XLSX للجداول الكبيرة

ParquetCSVXLSX
أنواع الأعمدة مخزّنة في الملفyesnoلكل خلية
يقرأ الأعمدة التي يحتاجها الاستعلام فقطyesnono
مضغوطyesnoyes
قابل للقراءة في محرر نصوصnoyesno
يُفتح في Excel بنقرة مزدوجةnoyesyes
عدد الصفوف في الملفبلا حد ثابتبلا حد ثابت1,048,576 في الورقة الواحدة

ما الذي يتغير عند تحويل CSV إلى Parquet

ما تكسبه

  • استعلامات أسرع تقرأ الأعمدة المطلوبة فقط
  • ملفات أصغر للتخزين والنقل
  • مخطط تقرؤه الأداة التالية بدل أن تخمّن
  • تواريخ مكتوبة مرة واحدة بصيغة ISO

ما يجب مراعاته

  • لا يمكن تعديله في جدول بيانات أو محرر نصوص
  • خطأ مطبعي في عمود رقمي قد يحوّل العمود كله إلى نص
  • احتفظ بملف CSV إن كان الناس ما زالوا يحتاجون إلى فتحه

معلومات عن صيغتي CSV وParquet

CSV

قيم مفصولة بفواصل

CSV هو تنسيق نص عادي للجداول، يمثل فيه كل سطر صفًّا وتفصل الفواصل بين الأعمدة. يُستخدم منذ بدايات الحوسبة ووصفه المعيار RFC 4180، مع أن كثيرًا من صيغه تستخدم الفاصلة المنقوطة أو علامات الجدولة وترميزات نصية مختلفة. يمكن لكل جداول البيانات وقواعد البيانات وأدوات التحليل تقريبًا استيراده وتصديره، مما يجعله التنسيق الافتراضي لنقل البيانات بين الأنظمة. يخزّن CSV القيم فقط، دون صيغ حسابية أو تنسيق أو أوراق متعددة أو أنواع بيانات.

الضغط
–
الشفافية
–
الحركة
–
سنة الظهور
–
محول CSV

PARQUET

Apache Parquet

Parquet هي صيغة تخزين عمودية مفتوحة المصدر أنشأتها Twitter وCloudera عام 2013 وتشرف عليها Apache Software Foundation. تخزّن البيانات حسب الأعمدة مع ضغط قوي ومخططات محددة الأنواع، فتقرأ أدوات التحليل الأعمدة التي تحتاجها فقط. وهي معيار في بحيرات البيانات وأدوات مثل Spark وpandas وDuckDB وBigQuery وSnowflake. ملفات Parquet ثنائية ولا يمكن فتحها في محرر نصوص أو تطبيق جداول عادي.

الضغط
دون فقدان
الشفافية
–
الحركة
–
سنة الظهور
2013 · Apache Software Foundation (from Twitter and Cloudera)
محول PARQUET

يتحول CSV إلى Parquet حين يتوقف الملف عن كونه شيئًا يفتحه الناس ويصبح شيئًا تمسحه الاستعلامات: تصدير يومي يصل إلى بحيرة بيانات، أو مجموعة بيانات تُشارك مع المحللين، أو سجلات تُصفّى بحسب بضعة أعمدة في كل مرة.

نظّف ملف CSV قبل التحويل لا بعده: صحّح أسماء العناوين، واحذف أسطر الملخص في الأسفل، وتأكد من أن كل عمود يحمل نوعًا واحدًا من القيم. وإن كان المصدر نسخة احتياطية لقاعدة بيانات لا ملف CSV، فابدأ بـتحويل SQL إلى CSV. وجميع الصيغ الأخرى، من JSON إلى SQL، في صفحة محول البيانات.

أسئلة حول تحويل CSV إلى Parquet

كم سيكون ملف Parquet أصغر من ملف CSV؟

يعتمد ذلك على البيانات. الأعمدة ذات القيم المتكررة كثيرًا، مثل رموز الدول أو الحالات أو التواريخ، تُضغط جيدًا، بينما تتقلص أعمدة المعرّفات الفريدة أو النصوص الحرة بدرجة أقل. يكون ملف Parquet عادةً جزءًا صغيرًا من حجم CSV، لكن لا توجد نسبة ثابتة يمكن الوعد بها.

ما الأدوات التي تقرأ ملف ‎.parquet الناتج؟

pandas عبر read_parquet، وPolars، وDuckDB باستعلام SELECT بسيط على اسم الملف، وApache Spark، ومستودعات البيانات السحابية مثل BigQuery وSnowflake وAmazon Athena وRedshift Spectrum. ويستطيع معظمها أيضًا الاستعلام عن مجلد من ملفات Parquet ذات الأعمدة نفسها كأنه جدول واحد.

كيف تُحدَّد أنواع الأعمدة؟

من القيم في كل عمود: الأعداد الصحيحة والعشرية والتواريخ وقيم صح/خطأ تأخذ أنواعًا مطابقة، ويبقى العمود ذو المحتوى المختلط نصًا. تحقق بعد التحويل من الرموز التي تبدأ بأصفار، مثل الرموز البريدية كـ 02134، وأبقها نصًا إن كان يجب الحفاظ على الصفر.

هل يمكنني تحويل عدة ملفات CSV لها البنية نفسها؟

نعم، حتى 20 ملفًا في الدفعة الواحدة، ويصبح كل ملف ملف .parquet مستقلًا. ضعها في مجلد واحد ويستطيع DuckDB أو Spark قراءتها معًا باستخدام نمط عام مثل sales_*.parquet.

كيف أطّلع على محتوى ملف Parquet دون كتابة شيفرة؟

لا يستطيع Excel وGoogle Sheets فتح ملفات .parquet بنقرة مزدوجة. أعدها إلى صفوف عبر تحويل Parquet إلى CSV، أو استخدم سطر أوامر DuckDB إن كنت مرتاحًا لاستعلام SQL واحد.