大数据组件包括Hadoop(HDFS、YARN)、Hbase、Spark等等。优劣势是什么?生产环境下会存在哪些问题或隐患?什么类型的场景适合使用这种方式?什么类型的公司适合使用这种架构?
分享一下大猪厂基于 Kubernetes 和 Docker 构建猛犸大数据平台机器学习模块(内部代号Dolphin )的一些思考。
Dolphin 基础设施中包括了 GPU 和 CPU 的混合计算服务节点,通过 Docker 对多种机器学习框架、用户开发环境进行实例化和运行,通过 Kubernetes 提供计算集群的部署、维护、 扩展机制等功能,计算框架主要是 Tensorflow。
Why Tensorflow on Kubernetes?
如果让数据科学家直接使用 Tensorflow,他们会遇到例如租户隔离、资源隔离、网络隔离、难以指定 GPU 进行任务调度等等一系列软件工程问题。
当然,基于当时两个项目在任务管理方面的实际进展,团队也做了相应的优化:
最后,Dolphin 可以根据数据科学家选用的不同的机器学习算法框架,通过 Kubernetes 编排出相应的机器学习计算集群。
如下图所示,通过 Dolphin 调度起来的 Tensorflow 计算集群,创建出 Parameter Server 和 Work 的 POD 以及 SVC,通过 HDFS Mount 模块将用户数据空间映射到 Docker Container 中,执行用户的算法脚本进行模型训练和服务发布。
by 刘勋,网易大数据团队攻城狮
* 版权声明 :社区问答内容由互联网用户编辑提交,本社区不拥有所有权,也不承担相关法律责任。如果您发现本社区中有涉嫌侵权、暴力、色情、反
动等言论,欢迎发送邮件至: 进行举报并提供初步证明,一经查实,本社区将立刻删除相关内容。