Building production-ready data pipelines using Dataflow: Planningのメモ
開発前に気にすることが紹介されている資料のメモです。他の章のメモはこちら。
サービスレベル
Data Freshness
何%のデータが時間内で処理される、未処理の一番古いデータがある時間、パイプラインが一定時間内に終るなどの指標。
Data correctness
開発時はユニットテスト・結合テスト(Building production-ready data pipelines using Dataflow: Developing and testing data pipelinesで説明)で確認。
Data isolation/load balancing
重要度の異なるメッセージを処理する時、パイプラインを分けた方がやりやすい。
ソースとシンク
スケーラビリティを確保するために、ソースとシンクに関して
を気にする必要がある
外部システムの負荷を減らすためには、batching(element毎に呼ぶのではなく貯めて呼ぶ)や、ワーカー増えると外部サービスの呼び出しも増える事に注意。
リージョン
- ソースやシンクの近く
- 法的な制限
- 特定のリージョンしかサポートされていない機能(Shuffle,Streaming Engine)
などで決定。
ワーカーとEndpointは別に設定出来るが、同じにした方が良い(特にStreaming EngineとShuffle)。
暗号化とネットワーク