I don't totally understand the value of the second, but isn't the first already exist in things like BigQuery?
You can truncate a BQ table and reload it if you want to change things. Had to do this at a previous gig (twice a day!) because the data warehouse people would only take data from BQ but the main data was in Firebase (yes, it was an insane place.)