피드로 돌아가기
From NDVI to a Generic Spectral Engine: Architecting Scalable Earth Observation Pipelines.
Dev.toDev.to
Infrastructure

하드코딩된 NDVI 파이프라인을 Generic Spectral Engine으로 추상화하여 확장성 확보

From NDVI to a Generic Spectral Engine: Architecting Scalable Earth Observation Pipelines.

Rahim Ranxx2026년 6월 28일5intermediate

Context

단일 지표(NDVI) 기반의 하드코딩된 파이프라인으로 인한 코드 비대화 및 중복 발생. 새로운 지표(NDMI) 추가 시 위성 제공자별(Sentinel-2, Landsat, MODIS) 중복 구현이 필요했던 아키텍처적 병목 상황.

Technical Solution

  • Spectral Formulas를 비즈니스 로직에서 분리하여 중앙 집중형 Registry 기반의 설정 데이터로 전환
  • Sensor Band Names를 추상화하여 제공자별 상이한 밴드 명칭을 universal identifier(nir, red, green, swir1)로 매핑
  • index-specific loader를 제거하고 Resolve-Load-Apply-Mask-Return 단계의 단일 Generic Compute Engine 설계
  • 데이터 기반 모델 채택을 통해 조건문(if index == NDVI)을 제거하고 formula 등록만으로 지표 확장 가능 구조 구현
  • Celery 및 Redis Sentinel을 활용한 큐 라우팅 최적화로 분석 결과의 하위 자동화 워크플로우 연결

1. 새로운 기능 요청 시 'N번째 지표'가 아닌 'N+5번째'를 위한 범용 구조인지 검토

2. 외부 provider의 명명 규칙이 내부 코드에 침투했는지 확인 후 추상 레이어 도입

3. 하드코딩된 조건문이 반복되는 지점을 찾아 Registry 패턴 기반의 데이터 주도 설계로 전환

4. 비즈니스 로직 내에 포함된 수식이나 상수를 설정 파일 또는 DB로 분리

원문 읽기