What is the cheapest way to allow others to download a dataset I have?

Viewed 86

I have some datasets (can go up to 10 GBs (zipped) altogether possibly) for my Machine Learning applications

In order to expose these datasets to others, I believe I have to host a server and let others to download over the network.

  1. what is the cheapest server I can use for this? (I checked AWS free tiers, can these be used?)
  2. Do I need to write up a web server? is there a premade tool that I can use for my use case?
1 Answers

You haven't indicated how much data will be downloaded (GB/month) and that's important because you pay for data transfer out to the internet (about $0.09 per GB) beyond an initial free amount (1 GB/month, I believe, but check if free tier offers more), and that's relevant to both S3 and EC2.

That said, I'd consider a few options.

  1. Storing the files in S3 and serving them from S3 via CloudFront may be cheaper than running a server 24x7 to host and serve the files.

  2. A small EC2 server that fits into the free tier usage plan, running a web or FTP server, serving up your files.

  3. Similar to #1 but you can also configure requester pays for S3 downloads. This option requires your downloaders to have AWS credentials and for you to manage their access. May not be feasible in your case.

  4. Create an EBS volume containing your data, take a snapshot of that volume, and share the snapshot with other AWS accounts, then shut down your EC2 instance. This option requires your users to be AWS account holders and that they share their AWS account numbers with you. May not be feasible in your case.

  5. AWS SFTP serving up data stored in S3.

Related