1. DB 설정

    DB_CONFIG = {"host": "100.105.75.47", "port": 5432, "dbname": "postgres", "user": "postgres", "password": "",} #비번은 보안사항

  2. 기본 설정 : 주 야간 생산 분류 - 한국 시간(KST) 로컬 기준

  3. 계획 정지 시간 → 20260130 day와 20260130 night 기준으로 계산할 것

    3-1) 계획 정지 시간 집계

    3-2) 계획 정지 시간 총합 산출

prod_day shift_type from_time to_time Total 계획 정지 시간 total_planned_time updated_at
20260108 day
prod_day shift_type from_time to_time Total 계획 정지 시간 total_planned_time updated_at
20250108 night from_time to_time
  1. 비가동 시간 → 20260130 day와 20260130 night 기준으로 계산할 것

    4-1) 비가동 시간 집계 제외 기준

    4-2) 비가동 시간 집계

    4-3) 컬럼 station의 속성값 별 비가동 시간 총합

    4-4) Vision 비가동 시간 총합 산출

prod_day shift_type 비가동 FCT1 비가동 FCT2 비가동 Vision1 비가동 FCT3 비가동 FCT4 비가동 Vision2 Total Vision 비가동 시간 vision1_non_time vision2_non_time total_vision_non_time updated_at
20260108 day
prod_day shift_type 비가동 FCT1 비가동 FCT2 비가동 Vision1 비가동 FCT3 비가동 FCT4 비가동 Vision2 Total Vision 비가동 시간 vision1_non_time vision2_non_time total_vision_non_time updated_at
20260108 night
  1. 아래와 같이 스키마와 테이블 저장

  1. 윈도우 설정

    주간 : [D-DAY] 08:30:00 ~ 20:29:59 → day 로 설정(08:30:00 & 20:29:59 포함)

    야간 : [D-DAY] 20:30:00 ~ 23:59:59 + [DAY+1일] 00:00:00 ~ 08:29:59 → night 로 설정(20:30:00 & 08:29:59 포함)

  2. 날짜는 [WINDOW]기준 현재날짜 및 현재 시각으로 Default하여 자동으로 전환될 것

  3. 멀티프로세스 = 1개

  4. 무한 루프 인터벌 5초

  5. DB 서버 접속 실패 시 무한 재시도(연결 성공할 때까지 블로킹)

  6. DB 서버 접속 후 중간에 끊어지면 다시 접속 무한 재시도할 것

  7. 백엔드별 상시 연결을 1개로 고정(풀 최소화)

  8. work_mem 폭증 방지: 기존처럼 PG_WORK_MEM 환경변수 읽어서 연결 시 SET work_mem = '4MB' 으로 연결

  9. *DB접속 시 “PK 이후 데이터” 증분 조건은 (Barcode_information, end_day, end_time, station) 기준으로 적용

  10. seen_pk: set[(Barcode_information, end_day, end_time, station )] 중복 방지 캐시 추가할 것