Kubernetes でのデータパイプライン

Kubernetes入門

Frank Heilmann

Platform Architect and Freelance Instructor

データパイプラインとは

  • データを移動・変換・分析するプロセスの集合
  • 代表的な手順:
    • ETL: さまざまなデータソースから抽出 (Extract)し、 意味のあるスキーマへ変換 (Transform)し、 最後にターゲットのデータシンク(例: データウェアハウス)へ格納 (Load)
    • ELT: さまざまなデータソースから抽出 (Extract)し、 ターゲットのデータシンク(例: データレイク)へ格納 (Load)し、 必要時に意味のあるスキーマへ変換 (Transform)

データパイプライン

Kubernetes入門

Kubernetes でのデータパイプライン

  • データパイプラインの各段階は Kubernetes オブジェクトに対応します:
    • Extract/Transform/Load の各段階: Pod(Deployment または StatefulSet)
    • 抽出・変換後のデータ: PersistentVolume
  • Kubernetes は必要に応じて Deployment とストレージをスケールでき、スループットを向上

Kubernetes 上のデータパイプライン

Kubernetes入門

データパイプライン向け OSS ツール

  • Kubernetes で容易にデプロイ可能な OSS が多数あります
  • 例:
    • 抽出: Apache NiFiApache KafkaKafka Connect
    • 変換: Apache SparkApache KafkaPostgreSQL
    • 格納: Apache SparkApache KafkaKSQL)、PostgreSQL
    • PV 上のストレージ: MinIOCeph
  • これはあくまで一部の例です
Kubernetes入門

演習に進みましょう!

Kubernetes入門

Preparing Video For Download...