Udostępnij za pośrednictwem


Co to jest przekształcanie danych w usłudze Azure Databricks?

Przekształcanie danych to proces konwertowania, czyszczenia i tworzenia struktur danych w format do użytku. Transformacja danych zwykle przebiega zgodnie z architekturą medalionu Databricks stopniowego udoskonalania danych z danych pierwotnych do formatu, który jest wykorzystywany przez biznes.

Na poniższym diagramie przedstawiono potok danych zawierający serię przekształceń danych, które przekształcają zestaw danych raw_customers w zestaw danych clean_customers, upuszczając dane klienta bez nazwy klienta w tym przykładzie. Dane raw_transactions są przekształcane w clean_transactions, upuszczając transakcje z wartością zero dolarów. Wynikowy zestaw danych o nazwie sales_report to łączenie clean_customers i clean_transactions. Analitycy mogą używać sales_report do analizy i analizy biznesowej.

przykład przekształcania danych

Typy przekształceń danych

Usługa Databricks uwzględnia dwa typy przekształceń danych: deklaratywne i proceduralne. Potok danych w poprzednim przykładzie można wyrazić przy użyciu obu paradygmatów.

Przekształcenia deklaratywne koncentrują się na żądanym wyniku, a nie na sposobie jego osiągnięcia. Należy określić logikę transformacji przy użyciu abstrakcji wyższego poziomu, a biblioteka DLT określa najbardziej wydajny sposób jego wykonania.

Przekształcenia danych proceduralnych koncentrują się na wykonywaniu obliczeń za pomocą jawnych instrukcji. Te obliczenia definiują dokładną sekwencję operacji w celu manipulowania danymi. Podejście proceduralne zapewnia większą kontrolę nad wykonywaniem, ale kosztem większej złożoności i wyższej konserwacji.

Wybieranie między deklaratywną i proceduralną transformacją danych

Deklaratywne przekształcanie danych przy użyciu biblioteki DLT jest najlepsze, gdy:

  • Wymagane jest szybkie opracowywanie i wdrażanie.
  • Potoki danych mają standardowe wzorce, które nie wymagają kontroli na niskim poziomie wykonania.
  • Potrzebujesz wbudowanych kontroli jakości danych.
  • Konserwacja i czytelność to najważniejsze priorytety.

Przekształcanie danych proceduralnych przy użyciu kodu platformy Apache Spark jest najlepsze, gdy:

  • Migrujesz istniejącą bazę kodu platformy Apache Spark do usługi Databricks.
  • Potrzebujesz precyzyjnej kontroli nad wykonywaniem.
  • Potrzebujesz dostępu do interfejsów API niskiego poziomu, takich jak MERGE lub foreachBatch.
  • Musisz zapisywać dane na platformie Kafka lub w zewnętrznych tabelach Delta.