UltKit

Prevod CSV do Parquet

CSV sa ľahko vytvára, no pomaly sa v ňom vyhľadáva. Nahrajte CSV a získate súbor Apache Parquet s typom stĺpca pre každé pole, skomprimovaný a pripravený pre analytický nástroj, do ktorého ho načítate.

Prevodník dát

alebo sem presuňte súbory CSV, TSV, TXT … ·

Max. 95 MB na súbor· Až 20 súborov· Odstránenie po 30 minútach

Výstup

Súbory sa spracúvajú na našich serveroch a po 30 minútach sa odstránia.

Ako používať tento nástroj

  1. 1

    Nahrajte súbory CSV

    Pridajte jeden export alebo až 20 súborov s rovnakým usporiadaním, každý do 95 MB. Pri nastavení Oddeľovač na automatické zistenie sa spracujú čiarky, bodkočiarky, tabulátory aj zvislé čiary.

  2. 2

    Ponechajte nastavenia hlavičky a dátumov

    Prvý riadok je hlavička zmení riadok hlavičky na názvy stĺpcov. Dátumy sú nastavené na ISO, takže sa stĺpce s dátumami zapíšu v jednotnom tvare.

  3. 3

    Previeďte do Parquet

    Stlačte Previesť na Parquet a súbor .parquet načítajte do pandas, DuckDB, Sparku alebo dátového skladu.

Prečo dátové tímy prevádzajú CSV do Parquet

Parquet vytvorili v roku 2013 inžinieri z Twitteru a Cloudery podľa stĺpcového usporiadania, ktoré Google opísal v článku o Dremeli z roku 2010, a v roku 2015 sa stal projektom najvyššej úrovne Apache. Myšlienka je jednoduchá: tabuľku neukladá po riadkoch ako CSV, ale všetky hodnoty jedného stĺpca drží pokope. Dotaz, ktorý potrebuje tri stĺpce zo štyridsiatich, prečíta len tie tri a podobné hodnoty vedľa seba sa komprimujú oveľa lepšie.

Preto analytici konvertujú exporty pred načítaním, dátoví inžinieri žiadajú od dodávateľov Parquet namiesto CSV a služby ako Amazon Athena a BigQuery, ktoré môžu účtovať podľa objemu prehľadaných dát, sú lacnejšie na dotazovanie. CSV tiež nevie, či je 0042 číslo alebo kód; Parquet eviduje typ každého stĺpca, takže ďalší nástroj nemusí hádať.

Parquet vs. CSV vs. XLSX pre veľké tabuľky

ParquetCSVXLSX
Typy stĺpcov uložené v súboreyesnoPodľa bunky
Číta len stĺpce, ktoré dotaz potrebujeyesnono
Komprimovanýyesnoyes
Čitateľný v textovom editorenoyesno
Otvorí sa v Exceli dvojklikomnoyesyes
Riadkov na súborBez pevného limituBez pevného limitu1 048 576 na hárok

Čo sa zmení, keď sa z CSV stane Parquet

Čo získate

  • Rýchlejšie dotazy, ktoré čítajú len potrebné stĺpce
  • Menšie súbory na ukladanie a presun
  • Schéma, ktorú ďalší nástroj prečíta namiesto hádania
  • Dátumy zapísané jednotne v tvare ISO

Na čo myslieť

  • Nedá sa upravovať v tabuľkovom ani textovom editore
  • Preklep v číselnom stĺpci môže zmeniť celý stĺpec na text
  • CSV si ponechajte, ak ho ľudia ešte potrebujú otvárať

Fakty o formátoch CSV a Parquet

CSV

Hodnoty oddelené čiarkou

CSV je textový formát pre tabuľky, v ktorom každý riadok je záznam a stĺpce oddeľujú čiarky. Používa sa od počiatkov výpočtovej techniky a popisuje ho RFC 4180, hoci mnohé varianty používajú bodkočiarky alebo tabulátory a rôzne kódovania textu. Importovať a exportovať ho vie takmer každá tabuľka, databáza a analytický nástroj, preto je predvoleným formátom na prenos dát medzi systémami. CSV ukladá iba hodnoty, bez vzorcov, formátovania, viacerých hárkov či dátových typov.

Kompresia
–
Priehľadnosť
–
Animácia
–
Rok vzniku
–
Konvertor CSV

PARQUET

Apache Parquet

Parquet je open-source stĺpcový formát ukladania, ktorý v roku 2013 vytvorili Twitter a Cloudera a spravuje ho Apache Software Foundation. Ukladá dáta po stĺpcoch so silnou kompresiou a typovanými schémami, takže analytické nástroje môžu čítať iba stĺpce, ktoré potrebujú. Je štandardom v dátových jazerách a v nástrojoch ako Spark, pandas, DuckDB, BigQuery a Snowflake. Súbory Parquet sú binárne a nedajú sa otvoriť v textovom editore ani v bežnej tabuľkovej aplikácii.

Kompresia
Bezstratová
Priehľadnosť
–
Animácia
–
Rok vzniku
2013 · Apache Software Foundation (from Twitter and Cloudera)
Konvertor PARQUET

CSV sa mení na Parquet vtedy, keď súbor prestane byť niečím, čo ľudia otvárajú, a stane sa niečím, čo prehľadávajú dotazy: denný export ukladaný do dátového jazera, dataset zdieľaný s analytikmi alebo logy filtrované podľa niekoľkých stĺpcov naraz.

CSV radšej vyčistite pred konverziou než po nej: opravte názvy hlavičiek, odstráňte súhrnné riadky na konci a dbajte, aby každý stĺpec obsahoval jeden druh hodnôt. Ak zdrojom je záloha databázy a nie CSV, začnite cez SQL do CSV. Všetky ostatné cieľové formáty, od JSON po SQL, nájdete na stránke konvertor dát.

Otázky o prevode CSV do Parquet

O koľko menší bude súbor Parquet oproti môjmu CSV?

Záleží na dátach. Stĺpce s mnohými opakovanými hodnotami, napríklad kódy krajín, stavy alebo dátumy, sa komprimujú veľmi dobre, kým stĺpce s unikátnymi ID alebo voľným textom sa zmenšia menej. Súbor Parquet je zvyčajne zlomkom veľkosti CSV, no pevný pomer sľubovať nemožno.

Ktoré nástroje prečítajú prevedený súbor .parquet?

pandas cez read_parquet, Polars, DuckDB s jednoduchým SELECT nad názvom súboru, Apache Spark a cloudové sklady ako BigQuery, Snowflake, Amazon Athena a Redshift Spectrum. Väčšina z nich dokáže priamo dotazovať aj priečinok so súbormi Parquet s rovnakými stĺpcami ako jednu tabuľku.

Ako sa určujú typy stĺpcov?

Podľa hodnôt v každom stĺpci: celé čísla, desatinné čísla, dátumy a hodnoty áno/nie dostanú zodpovedajúce typy a stĺpec so zmiešaným obsahom zostane textový. Po konverzii skontrolujte kódy s úvodnými nulami, napríklad PSČ ako 02134, a ak si majú nulu zachovať, nechajte ich ako text.

Môžem previesť viac súborov CSV s rovnakou štruktúrou?

Áno, až 20 naraz a z každého vznikne samostatný súbor .parquet. Ak ich dáte do jedného priečinka, DuckDB alebo Spark ich prečítajú spolu pomocou zástupného znaku, napríklad sales_*.parquet.

Ako sa pozrieť do súboru Parquet bez písania kódu?

Excel ani Google Sheets neotvoria .parquet dvojklikom. Na riadky ho vrátite cez Parquet do CSV alebo cez príkazový riadok DuckDB, ak vám nerobí problém jeden dotaz SQL.