Am I correct in assuming that your .qvw creates the QVD? If so then you simply schedule the reload of the .qvw with a reload task on the server. This will create a new QVD with new data that will overwrite the old one.
If you are not sure how qvd:s are created then this is an example of how this is done. First the table is loaded (Customers then you refer to that loaded table (see the area marked in red). This table is then stored into a .qvd with the STORE function. When the QVD has been created we no longer need the previously loaded table (in this case Customers and can drop this table from the data model. The .qvw used to create the QVD can be used to create multiple qvd:s but is generally only used for QVD creation (using the drop statement will make sure that you are not storing unnecessary data in this file)