【问题标题】:How do I download data from the internet to an S3 bucket via EC2?如何通过 EC2 从 Internet 将数据下载到 S3 存储桶?
【发布时间】:2020-07-02 18:20:20
【问题描述】:

我想从互联网上下载几个大文件(特别是从网站 PushShift 提交的 Reddit 每月提交的文件)到 S3 存储桶中。我通过 SSH 连接到 EC2 实例并运行 Jupyter 笔记本。

理想情况下,我希望能够在我的 EC2 实例的 Jupyter 笔记本中编写 Python 脚本,该脚本从 Internet 下载文件,然后将其推送到我的 S3 存储桶。我该怎么做呢?

【问题讨论】:

  • 这本质上是两个问题“如何从 S3 下载文件?”和“如何将文件上传到 S3?”。这两个问题已经在这个网站和其他地方有大量的答案。
  • 我不想下载和上传,我本质上是想使用 EC2 将文件直接从网站流式传输到 S3

标签: python amazon-web-services amazon-s3 amazon-ec2 jupyter-notebook


【解决方案1】:

无法“将数据从 Internet 下载到 Amazon S3”。

Amazon S3 是一种对象存储服务。您可以将数据上传到 S3 并从 S3 下载数据,但无法告诉 S3 从其他位置下载数据并存储它

您将需要一个运行某处的程序,该程序从 Internet 获取数据,然后将其上传(创建一个对象)到 Amazon S3。这样的程序可能足够聪明,可以通过在内存中下载内容然后将其发送到 S3 来将数据“流式传输”到 S3,而无需在两者之间保存到磁盘,但您需要编写该代码。

至于此类程序可能运行的“位置”,将此类代码作为 AWS Lambda 函数或在与 Amazon S3 存储桶位于同一区域的 Amazon EC2 实例上运行此类代码最为有效。

由于您在 Amazon EC2 实例上运行 Jupyter 笔记本,因此最简单的方法是将文件下载到本地存储,然后将其上传到 S3。

【讨论】:

    猜你喜欢
    • 2013-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多