変更要約: Professional Data Engineer 第5章を新規作成(ドメイン5「保守と自動化」: リソース最適化と自動化=コスト最小化/Dataproc 永続・ジョブ単位クラスタ/Cloud Composer DAG/スケジュールクエリ/BigQuery Editions・予約、監視とフォールトトレランス=Cloud Monitoring/Logging/BigQuery 管理パネル・クォータ/課金/エラー切り分け・複数リージョン/ゾーン/レプリケーション/フェイルオーバー/冪等再処理/バックアップ・検証)。
5.1リソースの最適化と自動化
コスト最小化と業務に必要なリソースの確保、Dataproc の永続クラスタとジョブ単位クラスタの判断、Cloud Composer の DAG による自動化と反復可能なスケジューリング、そして BigQuery Editions と予約による容量管理を理解します。
データ基盤は作って終わりではなく、コスト効率よく・自動で動かし続けます。リソースの最適化と自動化が運用の要です。
5.1.1リソース最適化
コストは、業務に必要なリソースを確保しつつ 最小化 します。Dataproc では、常時使うなら 永続クラスタ、たまにのバッチなら起動して終わったら消す ジョブ単位(エフェメラル)クラスタ を選び、無駄な常時稼働を避けます。BigQuery の容量は、オンデマンドか、安定利用に向く Editions と予約(reservations) で管理し、コストを予測可能にします。「たまのバッチ=ジョブ単位クラスタ」「安定利用の容量=BigQuery Editions/予約」と結びます。
5.1.2自動化と反復可能性
ジョブは Cloud Composer の DAG(有向非巡回グラフ)で依存関係を表し、反復可能にスケジュール・オーケストレーションします。単純な定期実行は BigQuery の スケジュールクエリ でも足りますが、依存のある複数ステップは Cloud Composer が向きます。インタラクティブクエリかバッチクエリかも、要件で使い分けます。「依存のあるジョブを反復可能に=Cloud Composer の DAG」「単純な定期集計=スケジュールクエリ」を押さえます。
「要件 → 手段」が頻出。例:「たまのバッチでコストを抑える」=Dataproc のジョブ単位クラスタ、「BigQuery の容量を予測可能に」=Editions/予約、「依存のあるジョブを反復可能にスケジュール」=Cloud Composer の DAG、「単純な定期集計」=スケジュールクエリ。
混同に注意:
①永続クラスタ(常時)とジョブ単位クラスタ(使い捨て)をコストで選ぶ。
②Cloud Composer(依存のあるオーケストレーション)とスケジュールクエリ(単純定期)を取り違えない。
③予約は安定利用のコスト予測に有効(少量はオンデマンド)。
5.1.3この節のまとめ
- コスト最小化:Dataproc は永続/ジョブ単位、BigQuery は Editions/予約で容量管理
- 自動化=Cloud Composer の DAG で反復可能に、単純定期はスケジュールクエリ
- インタラクティブ/バッチクエリを要件で使い分ける
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. たまにしか実行しないバッチで、コストを抑えたい。Dataproc の選択として最適なのはどれですか?
Q2. BigQuery の容量を安定利用向けに予測可能なコストで確保したい。最適なのはどれですか?
Q3. 依存のある複数ステップのジョブを反復可能にスケジュール・オーケストレーションしたい。最適なのはどれですか?
Q4. 単純に毎朝同じ集計クエリを自動実行したい。最も手軽なのはどれですか?
Q5. 永続クラスタとジョブ単位クラスタの使い分けとして正しいものはどれですか?
Q6. コスト最適化の姿勢として最も適切なものはどれですか?

