real‑time data ingestion