UltKit
รูปภาพ11
PDF13
เอกสารและข้อมูล7
วิดีโอ6
เสียง4
เครื่องมืออื่น ๆ22

แปลง Parquet เป็น CSV

เปิดอ่านไฟล์ .parquet ได้โดยไม่ต้องติดตั้งชุดเครื่องมือข้อมูล คอลัมน์ที่เก็บอยู่ภายในจะถูกเขียนออกมาเป็นแถว CSV ธรรมดา ที่สเปรดชีต เครื่องมือ BI หรือเพื่อนร่วมงานเปิดดูได้ทันที

แปลงไฟล์ข้อมูล

หรือลากไฟล์ CSV, TSV, TXT … มาวางที่นี่ ·

สูงสุด 95 MB ต่อไฟล์· ได้สูงสุด 20 ไฟล์· ลบหลังจาก 30 นาที

ผลลัพธ์

ไฟล์จะถูกประมวลผลบนเซิร์ฟเวอร์ของเราและถูกลบหลังจาก 30 นาที

วิธีใช้เครื่องมือนี้

  1. 1

    อัปโหลดไฟล์ Parquet

    เพิ่มไฟล์ .parquet หนึ่งไฟล์ หรือไฟล์ part ได้สูงสุด 20 ไฟล์จากชุดข้อมูลเดียวกัน โดยแต่ละไฟล์ต้องมีขนาดไม่เกิน 95 MB

  2. 2

    ตรวจสอบวันที่และการเข้ารหัสอักขระ

    ตัวเลือก วันที่ ตั้งเป็น ISO ไว้ให้ ค่าเวลาจึงแสดงเป็น 2026-10-18 แทนที่จะเป็นตัวเลขดิบ ใน การตั้งค่าขั้นสูง ให้เลือก ตัวคั่น เป็นเซมิโคลอนสำหรับ Excel ที่ใช้ในยุโรป หรือเลือก UTF-8 with BOM ใน การเข้ารหัสข้อความ

  3. 3

    แปลงเป็น CSV

    กด แปลงเป็น CSV แล้วดาวน์โหลด จากนั้นเปิดไฟล์ในโปรแกรมสเปรดชีต หรือนำเข้าไปยังที่ใดก็ได้ที่รองรับ CSV

ใครบ้างที่ต้องการ Parquet ในรูปแบบ CSV

Parquet เริ่มต้นในปี 2013 จากโครงการร่วมกันของ Twitter และ Cloudera โดยอิงแนวคิด record-shredding ในบทความ Dremel ของ Google และกลายเป็นโครงการระดับสูงสุดของ Apache ในปี 2015 ปัจจุบันเป็นฟอร์แมตจัดเก็บมาตรฐานของ data lake BigQuery และ Snowflake ส่งออกเป็นฟอร์แมตนี้ได้ Spark เขียนเป็นค่าเริ่มต้น และ Hugging Face Hub แปลงชุดข้อมูลสาธารณะเป็นฟอร์แมตนี้โดยอัตโนมัติ

สิ่งนี้ดีสำหรับวิศวกร แต่ไม่สะดวกสำหรับคนอื่น ๆ ผู้จัดการผลิตภัณฑ์ที่ได้รับไฟล์ .parquet นักวิจัยที่ดาวน์โหลดชุดข้อมูล หรือนักบัญชีที่ได้รับข้อมูลสกัดจากคลังข้อมูล มักไม่มีเครื่องมือที่เปิดไฟล์นี้ได้ CSV เป็นฟอร์แมตกลางที่สเปรดชีตและตัวนำเข้าทุกตัวอ่านได้ หากผู้รับข้อมูลต้องการเวิร์กบุ๊กที่จัดรูปแบบแล้ว ให้แปลง CSV ต่อด้วย CSV เป็น XLSX

Parquet กับ CSV: จัดเก็บเป็นคอลัมน์บนดิสก์ เทียบกับแถวข้อความ

ต้นทาง

Parquet

ไบนารี จัดเก็บทีละคอลัมน์ และเก็บสคีมาไว้ที่ส่วนท้ายของไฟล์

  • ค่ามีชนิดข้อมูล: int64, decimal, timestamp, boolean
  • รองรับ struct และ list ซ้อนกัน
  • บีบอัดทีละคอลัมน์ และอ่านเฉพาะส่วนที่ต้องการได้
เหมาะสำหรับ: คลังข้อมูล, Spark, pandas และ DuckDB
ปลายทาง

CSV

ข้อความธรรมดา หนึ่งเรกคอร์ดต่อบรรทัด คั่นค่าด้วยเครื่องหมายจุลภาคตามที่ RFC 4180 กำหนด

  • ทุกค่าเป็นข้อความ
  • แบน: หนึ่งค่าต่อหนึ่งเซลล์
  • เปิดได้ในสเปรดชีตหรือโปรแกรมแก้ไขข้อความทุกโปรแกรม
เหมาะสำหรับ: ผู้ใช้ทั่วไป สเปรดชีต และหน้าจอนำเข้าข้อมูล
from ↓ · to →CSVXLSXJSONParquet
ParquetParquet to CSV: yesParquet to XLSX: yesParquet to JSON: yes– Parquet to Parquet: no
CSV– CSV to CSV: noCSV to XLSX: yesCSV to JSON: yesCSV to Parquet: yes
JSONJSON to CSV: yesJSON to XLSX: yes– JSON to JSON: noJSON to Parquet: yes
supported not offeredทุกคู่ที่แสดงใช้ตัวแปลงข้อมูลเดียวกัน เครื่องหมายขีดหมายถึงฟอร์แมตเดียวกันทั้งขาเข้าและขาออก

สิ่งที่เปลี่ยนไปเมื่อไฟล์ Parquet กลายเป็น CSV

สิ่งแรกที่เสียไปคือชนิดข้อมูล จำนวนเงินแบบ decimal(18,2) ID แบบ int64 และ timestamp แบบ UTC ล้วนกลายเป็นตัวอักษร และผู้เปิด CSV ต้องตัดสินใจเองว่าจะอ่านค่าเหล่านี้อย่างไร ตัวอย่างเช่น Excel แสดงเลขนัยสำคัญเพียง 15 หลัก ดังนั้น ID 19 หลักจากคลังข้อมูลควรนำเข้าเป็นข้อความ ไม่ใช่เปิดด้วยการดับเบิลคลิก ความแตกต่างระหว่าง null กับสตริงว่างก็หายไปด้วย เพราะทั้งสองถูกเขียนเป็นช่องว่าง

สิ่งที่สองคือขนาดไฟล์ การบีบอัดแบบคอลัมน์คือเหตุผลที่ไฟล์ Parquet มีขนาดเล็ก ข้อความธรรมดาไม่มีการบีบอัดเช่นนั้น CSV จึงใหญ่ขึ้น ชีตใน Excel รองรับได้ 1,048,576 แถว ตารางขนาดใหญ่อาจเกินจำนวนนี้ได้ง่าย จึงควรตรวจสอบจำนวนแถวก่อนส่งไฟล์ให้ผู้ใช้สเปรดชีต ปลายทางอื่น ๆ ตั้งแต่ SQL ถึง JSON อยู่ในหน้า ตัวแปลงข้อมูล

ข้อมูลฟอร์แมต Apache Parquet และ CSV

PARQUET

Apache Parquet

Parquet เป็นรูปแบบการจัดเก็บข้อมูลแบบคอลัมน์ (columnar) แบบโอเพนซอร์สที่ Twitter และ Cloudera สร้างขึ้นในปี 2013 และดูแลโดย Apache Software Foundation จัดเก็บข้อมูลตามคอลัมน์พร้อมการบีบอัดประสิทธิภาพสูงและสคีมาที่กำหนดชนิดข้อมูล เครื่องมือวิเคราะห์ข้อมูลจึงอ่านเฉพาะคอลัมน์ที่ต้องการได้ เป็นมาตรฐานใน data lake และเครื่องมืออย่าง Spark, pandas, DuckDB, BigQuery และ Snowflake ไฟล์ Parquet เป็นไฟล์ไบนารีและเปิดในโปรแกรมแก้ไขข้อความหรือแอปสเปรดชีตทั่วไปไม่ได้

การบีบอัด
แบบไม่สูญเสียข้อมูล
พื้นหลังโปร่งใส
–
ภาพเคลื่อนไหว
–
เปิดตัว
2013 · Apache Software Foundation (from Twitter and Cloudera)
ตัวแปลงไฟล์ PARQUET

CSV

ค่าที่คั่นด้วยจุลภาค (CSV)

CSV คือรูปแบบข้อความธรรมดาสำหรับตาราง โดยแต่ละบรรทัดคือหนึ่งแถวและใช้จุลภาคคั่นคอลัมน์ ใช้กันมาตั้งแต่ยุคแรกของคอมพิวเตอร์และมีคำอธิบายใน RFC 4180 แม้ว่าหลายรูปแบบย่อยจะใช้อัฒภาคหรือแท็บและการเข้ารหัสข้อความที่ต่างกัน สเปรดชีต ฐานข้อมูล และเครื่องมือวิเคราะห์ข้อมูลแทบทุกตัวนำเข้าและส่งออก CSV ได้ จึงเป็นรูปแบบมาตรฐานสำหรับย้ายข้อมูลระหว่างระบบ CSV เก็บเฉพาะค่า ไม่มีสูตร การจัดรูปแบบ หลายชีต หรือชนิดข้อมูล

การบีบอัด
–
พื้นหลังโปร่งใส
–
ภาพเคลื่อนไหว
–
เปิดตัว
–
ตัวแปลงไฟล์ CSV

ต้องแปลง Parquet เป็น CSV เมื่อข้อมูลออกจากฝั่งวิศวกรรม เช่น ข้อมูลที่ส่งออกจาก BigQuery ชุดข้อมูลของ Hugging Face หรือตารางใน data lake ที่ต้องส่งถึงนักวิเคราะห์ ทีมการเงิน หรือเครื่องมือที่อ่านได้เฉพาะแถวข้อความ

คำถามเกี่ยวกับการแปลง Parquet เป็น CSV

เปิดไฟล์ Parquet โดยไม่ใช้ Python ได้อย่างไร

แปลงไฟล์ที่นี่แล้วเปิด CSV ได้เลย Excel, Numbers และ Google Sheets เปิดไฟล์ .parquet ด้วยการดับเบิลคลิกไม่ได้ ส่วนทางเลือกทั่วไปอย่าง pandas, Spark หรือบรรทัดคำสั่งของ DuckDB ล้วนต้องติดตั้งและรันโค้ดเอง

ทำไมไฟล์ CSV จึงใหญ่กว่าไฟล์ Parquet มาก

Parquet เก็บข้อมูลทีละคอลัมน์ เข้ารหัสค่าที่ซ้ำกันเพียงครั้งเดียวในพจนานุกรม แล้วบีบอัดผลลัพธ์ ซึ่งมักใช้ Snappy หรือ Zstandard ส่วน CSV เขียนทุกค่าเป็นข้อความเต็มในทุกแถว CSV ที่ใหญ่กว่าไฟล์ Parquet ต้นฉบับหลายเท่าจึงเป็นเรื่องปกติ ควรเผื่อพื้นที่ดิสก์ไว้ และตรวจสอบจำนวนแถวก่อนเปิดใน Excel

คอลัมน์แบบซ้อนชนิด struct และ list จะเป็นอย่างไร

struct จะถูกกระจายเป็นคอลัมน์เพิ่มโดยใช้ชื่อแบบมีจุด เช่น address.city ส่วน list จะอยู่ในเซลล์เดียวเป็นข้อความ JSON เพราะแถวของ CSV ไม่สามารถมีจำนวนเซลล์ต่างกันในแต่ละเรกคอร์ดได้

งาน Spark เขียนไฟล์ part ออกมาเป็นโฟลเดอร์ ต้องอัปโหลดไฟล์ไหน

ได้ทุกไฟล์ Spark, Hive และเอนจินที่คล้ายกันจะแบ่งชุดข้อมูลหนึ่งชุดเป็นไฟล์ที่ตั้งชื่อเช่น part-00000.parquet ซึ่งแต่ละไฟล์เป็นไฟล์ Parquet ที่สมบูรณ์และมีสคีมาเดียวกัน อัปโหลดพร้อมกันได้สูงสุด 20 ไฟล์ จะได้ CSV หนึ่งไฟล์ต่อหนึ่ง part แล้วนำมารวมกันภายหลังได้

แก้ไขแล้วแปลง CSV กลับเป็น Parquet ได้หรือไม่

ได้ ใช้ CSV เป็น Parquet ระบบจะอนุมานชนิดคอลัมน์จากข้อความใหม่อีกครั้ง จึงควรตรวจสอบว่า ID ที่ขึ้นต้นด้วยศูนย์และจำนวนเงินที่มีทศนิยมกลับมาเป็นชนิดที่ไปป์ไลน์ของคุณต้องการ