上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
第1章 Ray概述
人们正以前所未有的速度和广度采集海量数据,这是分布式计算大行其道的原因之一。过去十年间,出现了一大批存储系统、数据处理和分析引擎,这些工具对许多公司的成功至关重要。有趣的是,多数“大数据”技术是专为负责数据采集和处理任务的数据工程师打造并使用的,这么做是为了让数据科学家专注于擅长的工作。作为数据科学从业者,你可能希望专注于训练复杂的机器学习模型、进行高效的超参数调优、创建全新的自定义模型或模拟,或者部署模型以提供服务。
与此同时,将计算任务扩展到计算集群也是大势所趋。为了实现扩展,分布式系统需要支持所有这些细粒度的“大计算”任务,可能还要使用专业的硬件。理想情况下,硬件需要与正在使用的大数据工具链相匹配,并且速度足够快以满足延迟要求。换句话说,分布式计算必须既强大且灵活,这样才能应对复杂的数据科学计算任务,而Ray恰恰满足所有这些要求。
Python是当下最流行的数据科学语言。对于数据科学中的日常工作,Python是最常用的语言。虽然Python已经有30余年的历史,但仍然拥有不断增长和活跃的社区。丰富的PyData生态(https://pydata.org)是数据科学家工具箱的重要组成部分。在利用这些工具的同时,如何扩展计算任务呢?这是一个难题,特别是因为Python社区不能被迫放弃现有工具或编程语言。这意味着必须为Python社区构建分布式计算工具。