Salta el contingut

Formats de dades

Resultats d'Aprenentatge

RA1: Aplica tècniques d'anàlisi de dades identificant conceptes fonamentals i construint conjunts de dades complexes.

RA3: Gestiona i emmagatzema dades en grans conjunts extraient valor de diverses fonts.

Criteris d'Avaluació (CA)

CA Descripció
CA1.3 Combina diferents fonts i tipus de dades estructurades, semiestructurades i no estructurades.
CA1.6 Selecciona i integra sistemes d'informació triant el format adequat a cada cas d'ús.
CA3.3 Comprova requisits d'emmagatzematge massiu valorant l'impacte dels formats de dades.
CA4.5 Comprova la manera de programar i processar l'estructura de dades en formats Big Data.

Continguts del Bloc 6

La tria del format de dades correcte pot marcar la diferència entre una consulta que tarda segones i una que tarda minuts, o entre un fitxer que ocupa 10 GB i un que n'ocupa 1. En el context del Big Data, on es processen terabytes o petabytes de dades, aquesta decisió té implicacions directes en el cost d'infraestructura i en el rendiment dels pipelines.

En aquest bloc s'estudien els principals formats de dades usats en l'ecosistema Big Data:

  • Formats tabulars (CSV, TSV): simplicitat, limitacions d'encoding, manca de tipus de dades, casos on encara son la millor opció
  • Formats semiestructurats (JSON, XML): representació d'objectes niuats i arrays, overhead de la verbositat, casos d'ús per a APIs i logs
  • Formats columnars (Parquet, ORC): per qué el format columnar és molt superior per a analítica, predicate pushdown, column pruning, compressió eficient, row groups i bloomfilters
  • Formats d'evolució d'esquema (Avro): serialització binària, schema registry, ús habitual en Kafka
  • Delta Lake: com afegeix transaccions ACID sobre fitxers Parquet, time travel, vacuum i schema evolution

Tot el treball és pràctic: es fan benchmarks reals amb Python (pyarrow, pandas) per mesurar els avantatges de cada format en termes de mida i velocitat de lectura.

Qüestionari inicial

  1. Qué és un format de serialització de dades i per qué és important triar-ne el correcte?
  2. Quins problemes té el CSV quan s'usa a escala de Big Data?
  3. Qué és el JSON? Quines dades s'hi representen millor que en CSV?
  4. Qué significa que un format de dades és "columnar"? Per qué és útil per a analítica?
  5. Has sentit parlar de Parquet? Saps per a qué s'usa?
  6. Qué és la compressió de dades i com afecta el rendiment de lectura?
  7. Qué és el predicate pushdown i per qué és un avantatge dels formats columnars?
  8. Qué és Avro i en quin context s'usa habitualment?
  9. Qué és Delta Lake i quin problema resol sobre un Data Lake tradicional?
  10. Com triaries entre CSV, Parquet i Avro per a un sistema de streaming amb Kafka?

Organització dels continguts

  • Formats tabulars


    CSV i TSV: estructura, limitacions, encoding, dialectes i casos d'ús. Comparativa de rendiment amb pyarrow i pandas.

    Formats tabulars

  • Formats columnar


    Parquet i ORC: estructura interna, row groups, compressió, predicate pushdown, column pruning. Benchmark de lectura vs CSV.

    Formats columnar

  • Formats d'evolució


    Avro: serialització binària i schema registry. Delta Lake: ACID sobre Parquet, time travel, vacuum i schema evolution.

    Formats d'evolució

Durada i avaluació

Element Valor
Hores 9 hores (3 sessions de 3h)
Pes en la qualificació final 9% del mòdul
Pràctica avaluable PR507406 — Benchmark de formats de dades
Activitats AC5074/06/01 fins a AC5074/06/03

Enfocament d'aquest bloc

El coneixement dels formats de dades és una de les competències que millor diferencien un Data Engineer sènior d'un júnior. No és un tema "glamurós", però saber quan usar Parquet vs Avro vs Delta Lake és fonamental per a dissenys eficients. La pràctica de benchmark dona intuïció sobre els ordres de magnitud que importa conèixer.