Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

시간대별 날씨 업데이트 batch #18

Open
jun108059 opened this issue Nov 9, 2024 · 0 comments
Open

시간대별 날씨 업데이트 batch #18

jun108059 opened this issue Nov 9, 2024 · 0 comments
Assignees
Labels
Milestone

Comments

@jun108059
Copy link
Member

Feature

  1. 시간대별 날씨 데이터 업데이트: 각 스키 리조트에 대해 오늘 오전 8시부터 다음날 오전 2시까지 2시간 단위의 날씨 데이터를 hourly_weather 테이블에 업데이트
  2. 주간 날씨 데이터 업데이트: daily_weather 테이블에서 d_day가 0(오늘)과 1(내일)인 데이터 업데이트

Flow

  1. API 호출 및 데이터 파싱:
    • 기상청 단기예보조회 API(getVilageFcst)를 호출하여 필요한 데이터 조회
    • 응답 데이터를 파싱하여 필요한 항목(TMP, POP, SKY, PTY)을 추출
  2. 시간대별 날씨 데이터 생성 및 저장:
    • 지정된 시간대(08:00부터 02:00까지 2시간 간격)에 해당하는 데이터를 추출
    • 각 시간대별로 우선순위(priority)를 설정
    • hourly_weather 테이블에 데이터를 저장
  3. 주간 날씨 데이터 업데이트:
    • 오늘과 내일(d_day가 0과 1)에 대한 데이터를 처리
    • 해당 일자의 모든 강수확률(POP) 중 최대값을 precipitation_chance로 설정
    • 하늘상태(SKY)와 강수형태(PTY)를 기반으로 가장 나쁜 상태를 condition으로 설정
    • daily_weather 테이블에 데이터 갱신

기상청 단기 예보 조회

http://apis.data.go.kr/1360000/VilageFcstInfoService_2.0/getVilageFcst?serviceKey=p6zNXOJrrBY4cuX7OYtdDMtmR8hiGeUaBLf0z6BXnm%2FqniV8wB0SuPwBgqKDTKV%2F24EW7xiRY3DCS21Ess%2F42Q%3D%3D&pageNo=1&numOfRows=1000&dataType=JSON&base_date=20241110&base_time=0200&nx=72&ny=129

{
  "response": {
    "header": {
      "resultCode": "00",
      "resultMsg": "NORMAL_SERVICE"
    },
    "body": {
      "dataType": "JSON",
      "items": {
        "item": [
          {
            "baseDate": "20241110",
            "baseTime": "0200",
            "category": "TMP",
            "fcstDate": "20241110",
            "fcstTime": "0300",
            "fcstValue": "6",
            "nx": 72,
            "ny": 129
          },
          {
            "baseDate": "20241110",
            "baseTime": "0200",
            "category": "UUU",
            "fcstDate": "20241110",
            "fcstTime": "0300",
            "fcstValue": "-0.4",
            "nx": 72,
            "ny": 129
          }
        ]
      },
      "pageNo": 1,
      "numOfRows": 1000,
      "totalCount": 846
    }
  }
}
@jun108059 jun108059 added the batch label Nov 9, 2024
@jun108059 jun108059 added this to the Phase1-mvp milestone Nov 9, 2024
@jun108059 jun108059 self-assigned this Nov 9, 2024
jun108059 added a commit that referenced this issue Nov 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant