データスループットアクセラレータ は何をしますか?
このスキルは、大量のデータを移動、変換、保存する際にボトルネックとなっている場合に使用します。 目標は単なる速度ではありません。目標は、正しいデータを正しい場所に、証明可能な形でより速く届けることです。
最初の区別
最適化の前に、以下を分離します:
- ソース抽出速度
- ネットワーク転送速度
- ウェアハウス/ロード速度
- 変換速度
- サービングテーブルの鮮度
- ジョブ実行中に到着するライブテールの増加
パイプラインが「高速」でも、新しいデータが最終的なキャッチアップウィンドウよりも速く到着する場合、未処理として見えることがあります。
高速パスのヒューリスティック
- 計算を、データがすでに存在する場所に移動する。
- 大規模な着地ファイルには、ウェアハウスネイティブのスキャン、結合、追加を優先する。
- マニフェストまたはチェックポイントを使用して、完了したファイル/パーティションをスキップする。
- 読み取りと追加のパターンに一致するパーティショニングとクラスタリングを使用する。
- 小さなファイル、リクエスト、書き込みをバッチ処理する。
- 一意キー、マニフェスト、または置換可能なステージングを使用して、書き込みを冪等にする。
- 生データ、派生データ、サービングテーブルを別々に管理可能にする。
ワークフロー
- 現在のソース、ターゲット、マニフェストの契約を読み取る。
- バックログを計測する:外部ファイル、マニフェスト行、生行、派生行、最小/最大タイムスタンプ、未処理カウント。
- 安全なキャッチアップまたはサンプルベンチマークを実行する。
- バリエーションを比較する:バッチサイズ、ワーカー数、ウェアハウスSQL、ファイルグループ化、ステージング形状、マニフェスト更新方法。
- カウントとタイムスタンプが整合性を保っている最速のパスのみを採用する。
- そのパスをCLI、スケジュールジョブ、ワークフロー、またはRunbookとしてコード化する。
- コード化されたパス実行後、最終的な会計を再実行する。
会計出力
次のようなハードな会計ブロックを使用します:
データスループット結果:
- 検出されたソースファイル:294
- 今回の実行で処理されたファイル:294
- 追加された生行:9,683,598
- 追加された派生行:8,917,585
- 残りテール:読み戻し時点で24ファイル
- 実行時間:38.7秒
- 正確性ゲート:マニフェストカウントとテーブルの最大タイムスタンプが一致
ガードレール
- メトリクスを良く見せるために生データを削除しない。
- 失敗したファイルを黙ってスキップしない。
- 履歴バックフィルのステータスとライブテールの鮮度を混同しない。
- ターゲットテーブルとマニフェストが一致するまで、パイプラインを完了と呼んではならない。
- 金融、医療、規制対象、または顧客に影響するデータについては、リプレイ証跡と承認ゲートを保持する。