概要
JEDA データエンジニア分科会 #1 集まれデータエンジニア!というイベントにて、誰も教えてくれないメダリオンアーキテクチャの デザインメソッドというタイトルで発表をしたため、その内容を整理します。あまりイベントで発表することはないため、Speake Deck やドクセルなどの利用に少し苦戦しました。
発表内容
発表資料
発表概要
レイクハウスを実装する際のデータアーキテクチャとして、下記図のように構築することがおすすめですという話をしました。
そのアーキテクチャをベースとして、下記図のように Databricks で開発を実施しています。処理の共通化を図り、データエンジニアリングの開発者に対する要件技術要件を下げることで開発生産性向上を実施しています。
関連情報
データ分析基盤について
下記のようなデータ分析基盤を前提としています。
引用元:最強のデータ分析基盤を目指して~汎用的なデータ分析基盤の選定方法の提案~ #AWS - Qiita
データアーキテクチャ
下記図のレイヤー詳細項目を組み合わせました。
引用元: Databricks ( Spark ) における Spark テーブル(データレイク)のディレクトリ構成の検討 #Python - Qiita
データエンジニアリングパイプラインの実装方法
パイプラインを実装する際には下記のように実装しています。
- Bronze テーブルから Silver テーブルへのデータローディングパターン #SQL - Qiita
- Silver テーブルへ差分連携する際の Bronze テーブルからデータを抽出方法の注意事項 #SQL - Qiita
テストの実施方法
pytest にてパイプラインで利用しているテーブルなどを作成後にdbutils.notebook.run
によりパイプラインのノートブックを実行し、実行結果の確認を実施しています。