Can you store the hash in the database for each record? This will persist the hash value over server restarts. Also, this process may work better if you can find a way to load the spread sheet into a temp table in the DB, and then process the inserts and updates on the DB side. Then you can quickly determine whether or not a record has changed by hashing the records in the temp table and simply joining it to the real table where the hashes don’t match.
~Brad