Files
wiki/tasks/flightradar24/docs/ARCHITECTURE.md
2026-04-19 14:20:01 +03:00

1.6 KiB
Raw Blame History

Архитектура RTL-SDR ingest-контура для FR24 / noisemap

1. Назначение

Этот документ описывает контейнерную архитектуру локального ADS-B контура на RTL-SDR внутри одной VM в PVE.

Цель контура:

  • принимать ADS-B поток в real time
  • хранить сырьё с retention 3 дня
  • автоматически догонять пропуски после сбоя
  • хранить данные в PostgreSQL/PostGIS
  • отдавать данные в noisemap / карту

2. Контейнеры

2.1 postgres

Хранит:

  • captures
  • raw_packets
  • aircraft
  • flights
  • tracks
  • track_points
  • processing_state
  • noise_results

2.2 capture

  • читает USB RTL-SDR
  • пишет captures и raw_packets
  • не занимается нормализацией

2.3 preprocess

  • читает raw_packets
  • строит aircraft, flights, tracks, track_points
  • управляет processing_state
  • поддерживает recovery

2.4 api

  • читает те же таблицы
  • отдаёт данные для noisemap UI
  • не пересчитывает геометрию на лету

2.5 monitoring

  • отдельный контейнер
  • healthchecks, disk/DB/capture status, alerts

3. Docker Compose порядок

Минимальный состав:

  • postgres
  • capture
  • preprocess
  • api
  • monitoring

4. Контракт ingest↔API

Контрактом является схема PostgreSQL. Детали — в docs/INGEST_API_CONTRACT.md.