What is the "osm database history" you're talking about? I'm not aware of a way to browse OSM history other than changeset history and edit history of individual elements.

I'm not saying we should keep those disused:* nodes forever. We should keep them until a new business appears at the exact same place as the past business, add the new keys on the same node and delete the disused:* key. And if building is demolished, we would delete the disused:* keys along with it.

shop=vacant is an alternative. We could use that instead.

Here are some wiki pages, which encourage to keep the history:

https://wiki.openstreetmap.org/wiki/Tag:shop%3Dvacant
https://wiki.openstreetmap.org/wiki/Keep_the_history