It depends on your process and business rules. I've seen this handled with shadow tables, slowing down the updates (smaller batches), or even adding to the table as new rows, but including a join to a "live" record in another table. Add a live record when the new data is ready, remove the old "live" record.