creating a historical database, need help making a decision
Your first design is the way to go.  Keep everything about a process on a single record.  Your challenge isn't one of database design, it's one of restartability/disaster recovery.

Since your processes are long-running, you have a higher risk of the data getting out of sync with the processes that are being tracked in the data.  For example, you lose power causing a process to crash.

The solution is that you need to change your processes so that when they start they confirm what the data says.  Does the database say that process X is still unfinished?  Is process X still running?  If not, your data is out of sync and you need to mark the record for process X as failed.

You might want to consider adding a couple of columns to your first table design, for example:


last_update - the date/time when the record was last updated.  Update this periodically during your long-running process.
status - keep a code to indicate "Active", "Complete", "Failed"