首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据处理基础设施

数据处理基础设施
EN

DevOps用户
提问于 2020-11-17 15:50:45
回答 1查看 24关注 0票数 2

我们正在用AWS构建一个数据科学系统,我们的流程非常简单。

  1. 从redis那里获取数据
  2. 从FSx/EBS获得模型
  3. 跑。

这个过程脚本应该花费5-10秒左右,这取决于数据和模型的大小。到目前一切尚好。

到目前为止,我们所做的是构建一个python应用程序(运行在kubernetes中),它侦听队列并运行数据科学流。我们面临的问题是Pythons的内存泄漏。不管我们做了什么,使用python采取的每一种方法--一个加载/卸载大型对象的长时间运行的应用程序--都会增长和增长,所以我们正在尝试一种新的方法,每次创建和关闭新进程时都在自己的进程上运行脚本(仍然是kubernetes中的)。

我的问题是有没有更好的方法?AWS Lambda -可能是一个很好的解决方案,但它有一个内存/cpu限制,不适合。Kubernetes作业--当脚本本身只运行几秒钟时效率低下。

还有其他解决方案来运行高负载的cpu/内存密集型工作请求吗?(我正在寻找一种资源/基础设施解决方案,而不是软件解决方案。)

EN

回答 1

DevOps用户

发布于 2020-11-18 09:17:44

该服务可以始终侦听队列中的作业,也可以只在新工作到达时由队列启动单个作业。

这种权衡是单任务的启动时间与始终处于服务状态的成本。

定义需求--每天的作业数量、最大延迟、所需的ram/cpu等,然后选择合适的技术,以最经济有效的方式交付。

从AWS,AWS的步进功能,通过K8S乔布斯和AWS,到AWS EC2现场定价,等等。有很多选择,取决于需求。

希望有帮助:)

票数 1
EN
页面原文内容由DevOps提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://devops.stackexchange.com/questions/12779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档