Rumah > pembangunan bahagian belakang > Tutorial Python > Membina Paip Analitis Data Cuaca dengan AWS dan OpenWeatherMap API

Membina Paip Analitis Data Cuaca dengan AWS dan OpenWeatherMap API

Susan Sarandon
Lepaskan: 2025-01-17 14:12:10
asal
256 orang telah melayarinya

Siaran blog ini membimbing anda membina saluran analisis data cuaca menggunakan API OpenWeatherMap dan perkhidmatan AWS. Saluran paip mengambil data cuaca, menyimpannya dalam S3, mengkatalogkannya dengan AWS Glue dan membenarkan pertanyaan dengan Amazon Athena.

Gambaran Keseluruhan Projek

Projek ini mencipta saluran paip data berskala untuk mengambil data cuaca dari berbilang bandar, menyimpannya dalam AWS S3, mengkatalogkannya melalui AWS Glue dan mendayakan pertanyaan menggunakan Amazon Athena.

Gambarajah Seni Bina & Seni Bina Awal

Building a Weather Data Analytics Pipeline with AWS and OpenWeatherMap API

Building a Weather Data Analytics Pipeline with AWS and OpenWeatherMap API

Struktur & Prasyarat Projek

Sebelum bermula, pastikan anda mempunyai:

  1. Docker: Dipasang secara setempat.
  2. Akaun AWS: Dengan kebenaran yang diperlukan (baldi S3, pangkalan data gam, perangkak gam).
  3. Kunci API OpenWeatherMap: Diperolehi daripada OpenWeatherMap.

Panduan Persediaan

  1. Klon Repositori:

    <code class="language-bash">git clone https://github.com/Rene-Mayhrem/weather-insights.git
    cd weather-data-analytics</code>
    Salin selepas log masuk
  2. Buat .env Fail: Cipta fail .env dalam direktori akar dengan bukti kelayakan AWS dan kunci API anda:

    <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>
    Salin selepas log masuk
  3. Buat cities.json: Cipta cities.json menyenaraikan bandar:

    <code class="language-json">{
      "cities": [
        "London",
        "New York",
        "Tokyo",
        "Paris",
        "Berlin"
      ]
    }</code>
    Salin selepas log masuk
  4. Karang Docker: Bina dan jalankan:

    <code class="language-bash">docker compose run terraform init
    docker compose run python</code>
    Salin selepas log masuk

Building a Weather Data Analytics Pipeline with AWS and OpenWeatherMap API

Penggunaan

  1. Sahkan Infrastruktur: Semak sama ada Terraform mencipta sumber AWS (S3, pangkalan data Glue, perangkak Glue) dalam konsol AWS.

  2. Sahkan Muat Naik Data: Sahkan data cuaca yang dimuat naik skrip Python (fail JSON) ke baldi S3 anda melalui konsol AWS.

Building a Weather Data Analytics Pipeline with AWS and OpenWeatherMap API

  1. Run Glue Crawler: Glue crawler harus berjalan secara automatik; sahkan pelaksanaannya dan pengkatalogan data dalam konsol Gam.

  2. Pertanyaan dengan Athena: Gunakan Konsol Pengurusan AWS untuk mengakses Athena dan jalankan pertanyaan SQL pada data yang dikatalogkan.

Building a Weather Data Analytics Pipeline with AWS and OpenWeatherMap API

Komponen Utama

  • Docker: Menyediakan persekitaran yang konsisten untuk Python dan Terraform.
  • Terraform: Mengurus infrastruktur AWS (S3, Glue, Athena).
  • Python: Mengambil dan memuat naik data cuaca ke S3.
  • Gam: Katalog data S3.
  • Athena: Menanyakan data yang dikatalogkan.

Kesimpulan

Panduan ini membantu anda membina saluran paip analitik data cuaca berskala menggunakan AWS dan OpenWeatherMap. Saluran paip boleh dilanjutkan dengan mudah untuk memasukkan lebih banyak bandar atau sumber data.

Atas ialah kandungan terperinci Membina Paip Analitis Data Cuaca dengan AWS dan OpenWeatherMap API. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan