「AWSを基にしたカスケーディングデータパイプラインの構築方法」

Building a Cascading Data Pipeline based on AWS

自動的でスケーラブルかつ強力

今日は、常に誇りに思っているデータエンジニアリングプロジェクトの構築経験を共有します。なぜ私がツールやAWSのコンポーネントを使用したのか、そしてアーキテクチャをどのように設計したのかを学ぶことができます。

Image by Author

免責事項: このテキストの内容は、無名のエンティティとの経験に触発されています。ただし、商業上の重要な利益や詳細は意図的に架空のデータ/コードで置き換えたり、省略したりして機密性とプライバシーを維持するために行われています。したがって、実際の商業上の利益の全体的かつ正確な範囲は予約されています。

前提条件

  1. Pythonの知識
  2. DynamoDB、Lambdaサーバーレス、SQS、CloudWatchなどのAWSコンポーネントの理解
  3. YAMLおよびSAM CLIでの快適なコーディング経験

背景

データエンジニアであり、常にデータウェアハウスのデータを更新する必要があるとします。例えば、定期的にダンダー・ミフリン・ペーパー社の販売記録と同期する責任があります。(これは現実的なシナリオではありませんが、楽しんでください 🙂 !)データはベンダーのAPI経由で送信され、支店の情報、従業員(実際には営業員のみが考慮されます)、および売上が最新であることを確認する責任があります。提供されるAPIには次の3つのパスがあります:

  1. /branches :指定された支店のメタデータを取得するためのクエリパラメータとして支店名を受け入れます;
  2. /employees :特定の支店のすべての従業員の情報を取得するためのクエリパラメータとして支店IDを受け入れます。応答には従業員の職種を示すキーバリューペアが含まれます;
  3. /sales :販売員のIDをクエリパラメータとして受け入れ、販売員の過去の売上記録を取得します。応答にはトランザクションが完了した時点を示すキーバリューペアが含まれます。

一般的に言って、APIの返り値は次のようになります:

/branches パス:

{  "result": [   {     "id": 1,     "branch_name": "スクラントン"…

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more