Uploading Files For Processing

I need to add the ability for users to upload a file which contains scheduling information in the form of a CSV or equivalent. I need to process the data in the file and then send out notifications based on the data in the file at a future time. I am thinking of two possible ways of doing this and wanted to see what people suggest.

  1. User uploads file and the contents are processed at that point with the needed information being extracted and stored in the DB. File is deleted after being processed. Then, when the time comes, the service acts based on the information in the DB.

  2. User uploads file and no processing is done at this time. Then, when the time comes, the file is processed and the service acts on that information as the data is processed. Once done, file is deleted. Nothing is added to the DB.

I have not done anything like this and wanted to see if any had advice on either of these.

Also, carrierwave is the way to go for uploading files?

Thanks.

I need to add the ability for users to upload a file which contains
scheduling information in the form of a CSV or equivalent. I need to process
the data in the file and then send out notifications based on the data in
the file at a future time. I am thinking of two possible ways of doing this
and wanted to see what people suggest.

1. User uploads file and the contents are processed at that point with the
needed information being extracted and stored in the DB. File is deleted
after being processed. Then, when the time comes, the service acts based on
the information in the DB.

2. User uploads file and no processing is done at this time. Then, when the
time comes, the file is processed and the service acts on that information
as the data is processed. Once done, file is deleted. Nothing is added to
the DB.

1 has the disadvantage that there is more work to do before the
response is sent to the user so it will slow down the response. Does
it have any advantages over 2?

I have not done anything like this and wanted to see if any had advice on
either of these.

Also, carrierwave is the way to go for uploading files?

Paperclip seems to be popular for this, but I cannot comment personally.

Colin

I guess the advantage of the first would be is that I do not have to really store the file and can just delete it after I am done with it. perhaps, I can use a background process to do it so that the response is not that slow.

I had assumed CarrierWave is more widely used now?