Heim > Backend-Entwicklung > Python-Tutorial > Aufbau einer Wetterdatenanalyse-Pipeline mit AWS und OpenWeatherMap API

Aufbau einer Wetterdatenanalyse-Pipeline mit AWS und OpenWeatherMap API

Susan Sarandon
Freigeben: 2025-01-17 14:12:10
Original
257 Leute haben es durchsucht

Dieser Blogbeitrag führt Sie durch den Aufbau einer Wetterdatenanalyse-Pipeline mithilfe der OpenWeatherMap-API und AWS-Services. Die Pipeline ruft Wetterdaten ab, speichert sie in S3, katalogisiert sie mit AWS Glue und ermöglicht Abfragen mit Amazon Athena.

Projektübersicht

Dieses Projekt erstellt eine skalierbare Datenpipeline zum Abrufen von Wetterdaten aus mehreren Städten, zum Speichern in AWS S3, zum Katalogisieren über AWS Glue und zum Ermöglichen von Abfragen mit Amazon Athena.

Erste Architektur und Architekturdiagramme

Building a Weather Data Analytics Pipeline with AWS and OpenWeatherMap API

Building a Weather Data Analytics Pipeline with AWS and OpenWeatherMap API

Projektstruktur und Voraussetzungen

Bevor Sie beginnen, stellen Sie sicher, dass Sie Folgendes haben:

  1. Docker:Lokal installiert.
  2. AWS-Konto: Mit den erforderlichen Berechtigungen (S3-Buckets, Glue-Datenbanken, Glue-Crawler).
  3. OpenWeatherMap-API-Schlüssel: Von OpenWeatherMap erhalten.

Einrichtungsanleitung

  1. Das Repository klonen:

    <code class="language-bash">git clone https://github.com/Rene-Mayhrem/weather-insights.git
    cd weather-data-analytics</code>
    Nach dem Login kopieren
  2. Erstellen Sie eine .env-Datei: Erstellen Sie eine .env-Datei im Stammverzeichnis mit Ihren AWS-Anmeldeinformationen und Ihrem API-Schlüssel:

    <code>AWS_ACCESS_KEY_ID=<your-access-key-id>
    AWS_SECRET_ACCESS_KEY=<your-secret-access-key>
    AWS_REGION=us-east-1
    S3_BUCKET_NAME=<your-s3-bucket-name>
    OPENWEATHER_API_KEY=<your-openweather-api-key></code>
    Nach dem Login kopieren
  3. Erstellen Sie cities.json: Erstellen Sie eine cities.jsonAuflistung der Städte:

    <code class="language-json">{
      "cities": [
        "London",
        "New York",
        "Tokyo",
        "Paris",
        "Berlin"
      ]
    }</code>
    Nach dem Login kopieren
  4. Docker Compose: Erstellen und ausführen:

    <code class="language-bash">docker compose run terraform init
    docker compose run python</code>
    Nach dem Login kopieren

Building a Weather Data Analytics Pipeline with AWS and OpenWeatherMap API

Nutzung

  1. Infrastruktur überprüfen:Überprüfen Sie, ob Terraform die AWS-Ressourcen (S3, Glue-Datenbank, Glue-Crawler) in der AWS-Konsole erstellt hat.

  2. Daten-Upload überprüfen:Bestätigen Sie, dass das Python-Skript Wetterdaten (JSON-Dateien) über die AWS-Konsole in Ihren S3-Bucket hochgeladen hat.

Building a Weather Data Analytics Pipeline with AWS and OpenWeatherMap API

  1. Glue-Crawler ausführen: Der Glue-Crawler sollte automatisch ausgeführt werden; Überprüfen Sie die Ausführung und Datenkatalogisierung in der Glue-Konsole.

  2. Abfrage mit Athena:Verwenden Sie die AWS-Managementkonsole, um auf Athena zuzugreifen und SQL-Abfragen für die katalogisierten Daten auszuführen.

Building a Weather Data Analytics Pipeline with AWS and OpenWeatherMap API

Schlüsselkomponenten

  • Docker: Bietet konsistente Umgebungen für Python und Terraform.
  • Terraform: Verwaltet die AWS-Infrastruktur (S3, Glue, Athena).
  • Python: Ruft Wetterdaten ab und lädt sie auf S3 hoch.
  • Kleber:Katalogisiert S3-Daten.
  • Athena: Fragt die katalogisierten Daten ab.

Fazit

Dieser Leitfaden hilft Ihnen beim Aufbau einer skalierbaren Wetterdatenanalyse-Pipeline mit AWS und OpenWeatherMap. Die Pipeline kann problemlos um weitere Städte oder Datenquellen erweitert werden.

Das obige ist der detaillierte Inhalt vonAufbau einer Wetterdatenanalyse-Pipeline mit AWS und OpenWeatherMap API. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage