Sdílet prostřednictvím


Co je transformace dat v Azure Databricks?

Transformace dat je proces převodu, čištění a strukturování dat do použitelného formátu. Transformace dat se obvykle řídí architekturou medailiónu Databricks přírůstkového zpřesnění dat z nezpracovaných dat do formátu, který je pro firmu použitelný.

Následující diagram znázorňuje datový kanál obsahující řadu transformací dat, které změní datovou sadu raw_customers na datovou sadu clean_customers tím, že v tomto příkladu zahodí zákaznická data bez názvu zákazníka. Data raw_transactions jsou převedena na clean_transactions vyřazením transakcí s nulovou hodnotou dolaru. Výsledná datová sada s názvem sales_report je spojením clean_customers a clean_transactions. Analytici můžou používat sales_report pro analýzy a business intelligence.

Příklad transformace dat

Typy transformací dat

Databricks považuje dva typy transformací dat: deklarativní a procedurální. Datový kanál v předchozím příkladu lze vyjádřit pomocí obou paradigmat.

Deklarativní transformace se zaměřují na požadovaný výsledek, nikoli na to, jak ho dosáhnout. Logiku transformace určíte pomocí abstrakcí vyšší úrovně a DLT určuje nejúčinnější způsob, jak ji provést.

Procedurální transformace dat se zaměřují na provádění výpočtů prostřednictvím explicitních instrukcí. Tyto výpočty definují přesnou posloupnost operací pro manipulaci s daty. Procedurální přístup poskytuje větší kontrolu nad prováděním, ale za cenu větší složitosti a vyšší údržby.

Volba mezi deklarativní a procedurální transformací dat

Deklarativní transformace dat pomocí DLT je nejlepší v následujících případech:

  • Potřebujete rychlý vývoj a nasazení.
  • Datové kanály mají standardní vzory, které nevyžadují kontrolu nad prováděním na nízké úrovni.
  • Potřebujete integrované kontroly kvality dat.
  • Hlavní prioritou je údržba a čitelnost.

Procedurální transformace dat pomocí kódu Apache Spark je nejlepší v následujících případech:

  • Migrujete existující základ kódu Apache Sparku do Databricks.
  • Potřebujete jemně odstupňovanou kontrolu nad prováděním.
  • Potřebujete přístup k rozhraním API nízké úrovně, jako jsou MERGE nebo foreachBatch.
  • Potřebujete zapisovat data do tabulek Kafka nebo externích tabulek Delta.