代码之家  ›  专栏  ›  技术社区  ›  ddd

如何启动EC2实例并按需运行任务

  •  1
  • ddd  · 技术社区  · 7 年前

    我们正在AWS上开发一个深度学习应用程序。模型训练的自动化是相当具有挑战性的。第一步是为训练准备数据,训练包括从数十万个小型2D numpy阵列生成一个巨大的3D numpy阵列(>100GB)。小的numpy数组作为小文件保存在S3 bucket中。转换后,大numpy数组将保存到另一个S3存储桶中。训练脚本将在训练前拾取大3D numpy阵列。因为lambda函数有内存限制,所以我们必须手动启动EC2实例。

    整个工作流程可能会使用AWS step功能实现自动化。

    3 回复  |  直到 7 年前
        1
  •  1
  •   Matus Dubrava    7 年前

    我会选择最简单的解决方案,因为这不是那么复杂的任务(从架构的角度来看)。

    为存储新大3D阵列的存储桶配置S3事件,以便在对象放入存储桶后触发lambda函数(如果在同一个存储桶中存储所有/不同的数据,则可以更细粒度地根据前缀触发lambda函数)。

    user data 脚本,下载必要的文件并运行任务(这可以使用boto3 for Python完成)。

    在这种情况下使用CloudFormation将是过分的(我的观点)。

        2
  •  0
  •   Will Evers    7 年前

        3
  •  0
  •   Julien Simon    7 年前

    你是否考虑过使用Amazon SaGeMaCK?很容易配置可重复的培训作业。我很乐意听取您的反馈并回答任何问题。