百度 Alexand(亚历山大)简单使用教程

来源:互联网 发布:业务网站php源码 编辑:程序博客网 时间:2024/04/29 14:58

百度 Alexand(亚历山大)简单使用教程 

亚历山大其实是一个集成的hadoop集群使用的网址是http://ihadoop.baidu.com:8070/ (百度内网才能正常访问)他有自己的hadoop客户端 hadoop-client 和配置文件hadoop-site.xml 还有一个alexapi文件夹,这些文件夹可以在个人的百度网盘中下载首先将其(需要的文件包括alexapi文件夹和hadoop客户端文件 hadoop-client.tar.gz)下载到自己的测试机器上。然后修改/alexapi/python/conf/alex_conf.py的USERNAME和PASSWORD这两个是百度账号用于搜集结果使用。  

一般要求跟管理员联系在集群上创建一个新的文件夹,检查是否获取了文件权限的方法有./hadoop-client/hadoop/bin/hadoop fs -conf hadoop-site.xml -ls /user/alexander/查看有没有自己的文件夹,没有的话要自己申请。

然后需要自己编写自己的sh文件,这里以运行一个python文件作为例子讲解。要编写 run.sh 脚本 内容为 python helloworld.py。run.sh的作用是运行一个helloworld.py的python脚本。还要有一个helloworld.py的脚本文件 其内容为

#!/usr/bin/env python 

# -*- coding:utf-8 -*

print "RET "+"Hello,World!"+" 0"

文件上传之前一般需要打包 tar zxvf FileName.tar.gz helloworld.py run.sh 。然后将打包的压缩文件上传到已申请好的HDFS上。从本地上传到HDFS上的命令为./hadoop-client/hadoop/bin/hadoop fs -conf hadoop-site.xml -copyFromLocal ./自己的文件 /user/alexander/ 添加自己申请的HDFS文件中。

然后就是在http://ihadoop.baidu.com:8070/中的操作了,创建一个新的Alex job 选择normal 创建好了之后一般会有一个JobId用于获取结果。一般仅需修改 step和 user_program_paths step 是{"count":1,"step1":[{"cmd":"export PATH=./python-2.7/bin:$PATH;sh run.sh","ratio":1}]} 这个是首先添加python 2.7的环境,然后启动run.sh。如果使用的python环境时2.7,则需要添加python2.7的路径。user_program_paths是脚本运行依赖的环境,如果自己上传的文件是一个压缩文件(tar.gz)结尾"hdfs://nj01-inf-szwg-ch603.nj01.baidu.com:13261/user/alexander/xuliufeng/wangzhao/panshuangqing.tar.gz#." 前面的是Hadoop集群地址,后面的是自己的文件。还可以添加一些依赖环境。例如"hdfs://nj01-inf-szwg-ch603.nj01.baidu.com:13261/system/share/python27.tar.gz#."集群中的python 2.7压缩文件。设置 round_start,concurrent(自己问写程序的人) 改为希望多少个线程跑自己的程序这个是需要并发跑多少进程。需要自己设定。 最后获取结果 获取结果的命令会在本地生成 result文件 python alexapi/python/client.py getData 唯一的JobId result result 会自动生成本地文件夹 getData参数


0 0
原创粉丝点击