Answers:
由于您显然拥有一个AWS账户,因此我建议您执行以下操作:
wget http://example.com/my_large_file.csv
。 s3cmd
将文件上传到S3。例如:s3cmd cp my_large_file.csv s3://my.bucket/my_large_file.csv
由于各种AWS服务之间建立的连接利用了AWS的内部网络,因此从EC2实例上传到S3的速度非常快。比从您自己的计算机上载要快得多。通过这种方式,您可以避免将文件下载到计算机上,并节省了潜在的大量时间通过Web界面上载文件。
启动具有足够存储空间的EC2实例
SSH到实例
获取与从本地计算机下载的内容相对应的curl命令。您可以使用Google chrome中的开发者选项->网络标签->复制->复制为curl(对于某些需要身份验证的网站(例如kaggle),此步骤是必需的)
在实例终端上,运行curl
命令(追加-o output_file
到命令)。这将下载并保存文件
配置aws config
AWS 凭证以将实例连接到s3(一种方法是使用命令,提供AWS访问密钥ID和Secret),
使用以下命令将文件上传到s3:
aws s3 cp path-to-file s3://bucket-name/
请参阅Aws文档:http ://aws.amazon.com/code ,其中提供了适用于大多数编程语言的库。因此,您可以创建存储桶并在代码中进行配置,以从url中获取数据并在s3中写入此存储桶
例如在python中:
from boto.s3.key import Key
k = Key(bucket)
k.key = 'foobar'
k.set_contents_from_string(url_data)
您可以将s3存储桶安装到ec2实例,然后将cd安装到/ path / to / s3_mount_on_a_folder,在那里您可以简单地使用以下命令:
wget https://your.download.url/
要将s3安装到ec2上,请使用s3fs。