Leggi da una replica o da uno snapshot (mai dal primary), pagina con keyset pagination invece di OFFSET, applica throttling al rate di lettura, e fai streaming dei risultati direttamente verso l'object storage. L'obiettivo è esportare 500M di righe senza tenere lock lunghi, senza far spikare la CPU del primary, né far esplodere la memoria.
Pipeline di export
Primary DB ──async replication──▶ Read replica / snapshot
│ (isolated from live traffic)
▼
Export worker
keyset page: WHERE id > :last
│ throttle (sleep / rate limit)
▼
Stream (batches)
│
▼
S3 / GCS (NDJSON / Parquet)
