gzippedテキストファイルをインジェストするDataflowジョブが、SideInputsを使用してデータを結合し、エラーをデッドレターキューに書き込んでいますが、ジョブの実行時間が予想よりも長くなっています。パイプラインを高速化するには、どのような変更が必要ですか?
解答を選択
オプションをタップして解答を確認してください。
正解: SideInputの代わりにCoGroupByKeyを使用する。.
これが解答である理由
SideInputは、小さなデータセットをパイプラインの各ワーカーにブロードキャストするのに適していますが、データセットが大きくなるとパフォーマンスが低下します。大規模なデータセットを結合する場合、CoGroupByKeyは、キーに基づいて要素をグループ化し、結合操作を分散処理するため、より効率的です。これにより、ワーカー間のデータ転送が最適化され、ジョブの実行時間が短縮されます。圧縮されたAvroファイルはストレージ効率は良いですが、結合処理自体の高速化には直接寄与しません。バッチサイズの縮小は、処理オーバーヘッドを増加させ、ジョブを遅くする可能性があります。エラーの再試行は、ジョブの実行時間をさらに延長させます。
試験に合格 — 終わりのない解答探しなしで
この試験のすべての検証済み問題と解説を1か所で入手し、準備時間を大幅に節約しましょう。1,000以上の認定 · 20以上の言語 · 無料で開始。
試験に早く合格する → カード不要