云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

美国服务器_数据库索引类型_哪个好

小七 141 0

为什么应该使用apachespark+Kubernetes来处理数据

如果您正在运行数据科学管道和机器学习模型工作流以获得真正的业务价值,这可能意味着您需要处理大量的数据。为了以可伸缩的方式实现这一点,并在大量数据中处理复杂的计算步骤(而不需要占用资金),与YARN相比,Kubernetes正在成为调度Spark作业的越来越流行的选择。apachespark是一个可以在非常大的数据集上快速执行处理任务的框架,Kubernetes是一个可移植的、可扩展的、开源的平台,用于跨多台机器集群管理和协调集装箱化工作负载和服务的执行。那么,是什么让这两个组合获胜呢?这篇博客文章将解释三大原因(对于那些想要更深入地了解和了解这项技术的人,请查看按需网络研讨会如何使用Spark+Kubernetes廉价处理大量数据)。更简单的管理Kubernetes允许将基础设施管理统一到一个集群类型下的多个工作负载类型。当然,您可以运行Spark,但也可以运行Python或R代码、笔记本甚至webapps。在传统的Spark-on-YARN世界中,您需要有一个专门的Hadoop集群来处理Spark,以及Python、R等的其他集群。对于同时拥有Hadoop和Kubernetes集群的组织来说,在Kubernetes集群上运行Spark意味着只有一个集群需要管理,这显然更简单。但即使对于目前只使用Hadoop的用户,在Kubernetes集群上部署Spark也更简单,因为Kubernetes带来了:隔离,这意味着您可以防止集群中运行的工作负载相互干扰,因为它们将保留在各自的"名称空间"中。安全性(用于访问集群本身的身份验证)的处理方式与Hadoop集群不同(这不简单也不难,只是不同)。更好的资源管理,因为调度器负责选择要在哪个节点上部署工作负载,再加上在云中,向上/向下扩展集群是快速而简单的,因为这只是在集群中添加或删除vm的问题,而managed Kubernetes产品有助于实现这一点。更轻松的依赖关系管理在Hadoop中管理依赖项是非常耗时的:包必须存在于集群中的所有节点上,这使得隔离(例如,使同一软件的不同版本——如TensorFlow 1.5和TensorFlow 2.0——在同一个节点上共存)和更新环境变得困难。当然,通过提交带有包的zip文件和构建大量的虚拟环境可以在一定程度上缓解这种情况,这对于少量的应用程序来说可能是很好的。但是当数据科学团队和数据项目开始扩大规模时,这个系统就变得非常具有挑战性Kubernetes的Spark,特别是Docker,使整个过程更加容易。作为操作的容器,这些容器被用作计算容器。这些容器打包了执行工作负载所需的代码,也打包了运行该代码所需的所有依赖项,从而消除了在公共基础结构上运行的所有工作负载维护通用依赖关系的麻烦。更灵活的部署如果你在做企业人工智能,并想开始将数据存储转移到云端(或者已经开始这样做),那么厂商锁定的想法可能会非常可怕。这就是为什么今天,越来越多的企业采用云不可知论的方法。在Kubernetes上运行Spark意味着只需构建一次就可以在任何地方部署,这使得云无关的方法具有可伸缩性。[奖金]更便宜Kubernetes的好处是(不仅仅是Spark,还有其他所有方面)所有主要的云供应商都提供托管服务,以提供Kubernetes集群,这些集群构建在云的优点之上,即一个非常灵活和有弹性的基础设施,可以轻松地创建、销毁和扩展以满足工作负载需求这种弹性也反映在云定价模型中,你只需为你使用的东西付费,你可以根据你的工作负载需求调整机器数量和类型。。。还有你的预算。此外,在Kubernetes上运行Spark也可以节省时间。数据科学家和架构师的时间是宝贵的,为这些人和部门带来更多的生产力将允许更多的节省。[额外奖金!]使用Dataiku更容易虽然在Kubernetes上运行Spark在管理方面更简单,更灵活,甚至可以更便宜,但这并不意味着它的设置或使用是万无一失的。有了Dataiku,数据科学家和架构师可以从使用这些技术中获得所有好处,但是所有的复杂性都被抽象掉了。Dataiku使非管理员用户能够快速启动Kubernetes集群(在AWS、Azure或GCP上),以优化Spark或内存作业的执行,从而使用随需应变的弹性资源快速高效地进行扩展。