分布式处理与数据建模实战
1. 分布式处理基础
在分布式处理中,我们可以通过不同方式利用远程机器来完成任务,主要包括在远程机器上运行普通命令、直接在远程机器间分发本地数据以及将文件发送到远程机器进行处理并取回结果。
1.1 获取运行中的 AWS EC2 实例列表
若使用 Amazon Web Services,可通过命令行工具aws来获取运行中的 EC2 实例列表。若未使用 Data Science Toolbox,需先使用pip安装awscli:
$ pip install awscli使用aws ec2 describe-instances命令可返回所有 EC2 实例的详细信息,以 JSON 格式呈现。我们使用jq工具提取相关字段:
$ aws ec2 describe-instances | jq '.Reservations[].Instances[] | '\ > '{public_dns: .PublicDnsName, state: .State.Name}'由于我们仅能将任务分发到运行中的实例,因此需过滤掉非运行状态的实例:
$ aws ec2 describe-instance