次の方法で共有


Azure Databricks でのデータ変換とは

データ変換は、データを使用可能な形式に変換、クレンジング、および構造化するプロセスです。 データ変換は通常、Databricks medallion アーキテクチャに従います。、生データからビジネスで使用できる形式にデータを段階的に絞り込みます。

次の図は、この例で顧客名のない顧客データを削除することによって、raw_customers データセットを clean_customers データセットに変換する一連のデータ変換を含むデータ パイプラインを示しています。 raw_transactions データは、0 ドルの値を持つトランザクションを削除することで、clean_transactions に変換されます。 sales_report と呼ばれる結果のデータセットは、clean_customersclean_transactionsを結合することです。 アナリストは、分析とビジネス インテリジェンスに sales_report を使用できます。

データ変換の例

データ変換の種類

Databricks では、宣言型の と手続き型 という 2 種類のデータ変換が考慮されます。 前の例のデータ パイプラインは、いずれかのパラダイムを使用して表すことができます。

宣言型変換では、それを実現する方法ではなく、目的の結果に焦点を当てます。 上位レベルの抽象化を使用して変換のロジックを指定すると、DLT によって最も効率的な実行方法が決定されます。

手続き型データ変換は、明示的な命令による計算の実行に重点を置くものです。 これらの計算は、データを操作する操作の正確なシーケンスを定義します。 手続き型のアプローチでは、実行をより詳細に制御できますが、複雑さとメンテナンスが増えます。

宣言型と手続き型のデータ変換の選択

DLT を使用した宣言型データ変換は、次の場合に最適です。

  • 迅速な開発とデプロイが必要です。
  • データ パイプラインには、実行を低レベルで制御する必要のない標準パターンがあります。
  • 組み込みのデータ品質チェックが必要です。
  • メンテナンスと読みやすさが最優先事項です。

Apache Spark コードを使用した手続き型データ変換は、次の場合に最適です。

  • 既存の Apache Spark コードベースを Databricks に移行しています。
  • 実行をきめ細かく制御する必要があります。
  • MERGEforeachBatchなどの低レベルの API にアクセスする必要があります。
  • Kafka テーブルまたは外部 Delta テーブルにデータを書き込む必要があります。