摘要: 1 // 树结点定义2 typedef struct TNode3 {4 int value;5 TNode *left;6 TNode *right;7 }*PTNode;1. 前序遍历的非递归实现(借鉴递归思想实现)思想:访问到一结点时,先将其入栈,假设入栈节点为P。访问... 阅读全文
posted @ 2014-08-25 17:20 maybob 阅读(970) 评论(0) 推荐(0) 编辑
摘要: 以下为在CentOS-6.4下hadoop-1.2.0源码编译步骤。1. 安装并且配置ant 下载ant,将ant目录下的bin文件夹加入到PATH变量中。2. 安装git,安装autoconf,安装automake,安装libtool3. 修改saveVersion.sh文件 修改hadoop工程目录src目录下的saveVersion.sh文件,将user=‘whoami’中的‘whoami’改为实际的名字(如我的名字maybob,则改为:user=maybob)。4. 执行ant编译hadoop源码 cd切换到hadoop工程目录,执行命令ant。5. Note: 由于编译时要下... 阅读全文
posted @ 2014-04-10 17:56 maybob 阅读(416) 评论(0) 推荐(0) 编辑
摘要: linux、windows下通用,亲测。下面以window为例,假设:hadoop工程目录位于D:\work\eclipse64\hadoop-1.2.0.1.3.0.0,eclipse安装目录为E:\DevelopTools\eclipse64。 1.安装ant ant安装不再介绍。 2. 导入hadoop eclipse插件工程 hadoop eclipse工程位于hadoop工程目录的src\contrib\eclipse-plugin下,其默认的项目名称是 MapReduceTools。 3.导入所需jar包。 a. 将hadoop-core-*.jar(如... 阅读全文
posted @ 2014-04-08 17:53 maybob 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 最近在编写MapReduce程序时遇到了一个错误,错误提示信息为:Error: java.lang.ClassNotFoundException: org.apache.hadoop.hbase.HBaseConfiguration断断续续解决了好几天都没有解决,最终发现是由于我的Mapper中的setup()方法引用了HBase库的缘故,也即引用了第三方Jar包。于是上网搜索“MapReduce如何调用第三方jar包”,最终参考网友的方法得到解决。三种解决方案如下:在你的java工程里建立一个lib文件夹,然后把所有引用到的第三方jar包放到里面,最后打包成Jar的时候把lib目录和clas 阅读全文
posted @ 2014-03-13 11:30 maybob 阅读(1412) 评论(0) 推荐(0) 编辑
摘要: Proxy 模式简介代理模式的两个应用:打开文档时加载大图片例如:如果有个对象是一张很大的图片,而这张图片需要花费很长时间才能显示出来,那么当这个图片包含在文档中的后面时,使用编辑器或浏览器打开这个文档时,文档打开必须很迅速,不能等待这张大图片处理完成(或者读取完成),所以这时需要做个图片Proxy来代替真正的图片,直到真正卷动文档至该图片的页数时,这时再载入图片,这样可以提高打开文档速度,给用户更好的体验。如上图所示,当打开文档时,ImageProxy对象代理Image对象被载入,在还没卷动至图片所在页时,也就是还没有调用 ImageProxy的draw()时,图片并不会被载入,因而可以加速 阅读全文
posted @ 2014-02-27 10:37 maybob 阅读(361) 评论(0) 推荐(0) 编辑
摘要: 背景局域网不能上外网情况下同步集群时间,搭建NTP服务器,并设置其他主机每小时同步时间(假设使用地址为192.168.3.21的主机作为NTP服务器)安装NTP$ sudo yum install ntp配置NTP$ sudo vi /etc/ntp.conf修改文件内容如下:driftfile /var/lib/ntp/driftrestrict default nomodify notrap noqueryrestrict 127.0.0.1restrict 0.0.0.0 mask 0.0.0.0 nomodify notrapserver 127.127.1.0fudge 127.12 阅读全文
posted @ 2013-09-21 20:32 maybob 阅读(796) 评论(0) 推荐(0) 编辑
摘要: SSH配置主机cloudgis22.edu.cn:192.168.3.21主机cloudgis33.edu.cn:192.168.2.174假设需要配置主机A无密码登录主机A,主机B,先确保所有主机的防火墙处于关闭状态。在主机A上执行如下:$ cd ~/.ssh$ ssh-keygen -t rsa然后一直按回车键,就会按照默认的选项将生成的密钥保存在.ssh/id_rsa文件中。$ cp id_rsa.pub authorized_keys这步完成后,正常情况下就可以无密码登录本机了,即ssh localhost,无需输入密码。$ scp authorized_keys cloudgis@1 阅读全文
posted @ 2013-09-03 15:57 maybob 阅读(762) 评论(0) 推荐(0) 编辑
摘要: 由于CentOS安装之后,普通用户无sudo权限,故应该设置sudo权限。此处假设当前用户为“cloudgis”。1. 设置sudo权限,则设置如下:$ su root输入root 密码$ vi /etc/sudoers在root ALL=(ALL) ALL这一行之后添加:cloudgis ALL=(ALL) ALL2. 如果想设置sudo执行命令免密码,则设置如下:在root ALL=(ALL) ALL这一行之后添加:cloudgis ALL=NOPASSWD:ALL 阅读全文
posted @ 2013-09-03 15:37 maybob 阅读(635) 评论(0) 推荐(0) 编辑
摘要: 集群重启后启动ambari-server访问Web页面无法启动集群解决 使用ambari部署的集群重新启动后,必须手动重启ambari-server和所有集群主机上的ambari-agent。ambari-server服务器上执行: $ sudo ambari-server start所有集... 阅读全文
posted @ 2013-08-29 17:09 maybob 阅读(3562) 评论(1) 推荐(0) 编辑
摘要: 准备工作1. 设置sudo免密码登陆由于CentOS安装之后,普通用户无sudo权限,故应该设置sudo权限。参考文章:http://www.cnblogs.com/maybob/p/3298846.html2. 设置SSH无密码登陆远程主机 参考文章:http://www.cnblogs.com/maybob/p/3298903.html3. 集群时间同步(Enable NTP on the Cluster and on the Browser Host)The clocks of all the nodes in your cluster and the machine that run. 阅读全文
posted @ 2013-08-23 15:01 maybob 阅读(2161) 评论(0) 推荐(0) 编辑