Ray是由UCBerkeley开源的一个能够非常快速和简单地去构建分布式应用的框架,RayCore提供了非常友好的API,帮助用户更容易地并行处理任务。Python用户只需要增加几行代码就可以直接并行地执行Python函数和对象。简单来说,用户首先需要importray,调用ray.init()启动Ray服务。正常情况下,在一个循环中调用多次Python函数是顺序执行的,但是如果加上@ray.remote(num_cpus,...)的Python修饰器,就可以去并行执行这些Python函数,最后通过ray.get得到返回值。同样对Pythonclass也能加上@ray.remote,变成Rayactor能够被Ray去远程地启动。在@ray.remote中还可以指定运行所需资源,比如需要多少CPU等,在运行过程中Ray会预留这些资源。Ray可以支持单机和集群上的并行运行。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云EMR是云原生开源大数据平台,为客户提供简单易集成的Hadoop、Hive、Spark、Flink、Presto、ClickHouse、StarRocks、Delta、Hudi等开源大数据计算和存储引擎,计算资源可以根据业务的需要调整。EMR可以部署在阿里云公有云的ECS和ACK平台。