이 블로그 게시물에서는 OpenWeatherMap API 및 AWS 서비스를 사용하여 기상 데이터 분석 파이프라인을 구축하는 과정을 안내합니다. 파이프라인은 날씨 데이터를 가져와 S3에 저장하고 AWS Glue로 카탈로그를 작성하고 Amazon Athena로 쿼리할 수 있도록 합니다.
사업개요
이 프로젝트는 여러 도시에서 날씨 데이터를 가져와서 AWS S3에 저장하고, AWS Glue를 통해 카탈로그화하고, Amazon Athena를 사용하여 쿼리할 수 있는 확장 가능한 데이터 파이프라인을 생성합니다.
초기 아키텍처 및 아키텍처 다이어그램
프로젝트 구조 및 전제조건
시작하기 전에 다음 사항을 확인하세요.
설정 가이드
저장소 복제:
<code class="language-bash">git clone https://github.com/Rene-Mayhrem/weather-insights.git cd weather-data-analytics</code>
.env
파일 생성: AWS 자격 증명 및 API 키를 사용하여 루트 디렉터리에 .env
파일을 생성합니다.
<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>
만들기 cities.json
: 만들기 cities.json
도시 목록:
<code class="language-json">{ "cities": [ "London", "New York", "Tokyo", "Paris", "Berlin" ] }</code>
Docker Compose: 빌드 및 실행:
<code class="language-bash">docker compose run terraform init docker compose run python</code>
사용방법
인프라 확인: Terraform이 AWS 콘솔에서 AWS 리소스(S3, Glue 데이터베이스, Glue 크롤러)를 생성했는지 확인하세요.
데이터 업로드 확인: AWS 콘솔을 통해 Python 스크립트가 날씨 데이터(JSON 파일)를 S3 버킷에 업로드했는지 확인하세요.
Glue 크롤러 실행: Glue 크롤러는 자동으로 실행되어야 합니다. Glue 콘솔에서 실행 및 데이터 카탈로그를 확인하세요.
Athena로 쿼리: AWS Management Console을 사용하여 Athena에 액세스하고 카탈로그된 데이터에 대해 SQL 쿼리를 실행합니다.
주요 구성 요소
결론
이 가이드는 AWS 및 OpenWeatherMap을 사용하여 확장 가능한 날씨 데이터 분석 파이프라인을 구축하는 데 도움이 됩니다. 더 많은 도시나 데이터 소스를 포함하도록 파이프라인을 쉽게 확장할 수 있습니다.
위 내용은 AWS 및 OpenWeatherMap API를 사용하여 날씨 데이터 분석 파이프라인 구축의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!