最近在找整体存储和分析的方案,海量存储和分析、扩展性都需要考虑,找上了Hadoop,开始只是把它定位到HDFS做存储用,越看越兴奋。
先上HDFS操作这块的测试代码,完整的Eclipse + Tomcat项目,用了Tomcat插件、Hadoop 0.20.0,做海量文件管理器,方便管理;
搭建起来3个入口:
tomcat根路径hfs,具体看web.xml
- /用于文件系统浏览
- /upload.jsp 用于上传文件
- /pic.do用于文件查看
几个配置需要注意,一处是hardcode:fs.HDFSConfig里面,指定默认目录的;
core-site.xml里面 ,配置hdfs的地址和协议:
<property>
<name>fs.default.name</name>
<value>hdfs://namenode:9000</value>
</property>
mapred-site.xml里面,配置用户名和密码:
<property>
<name>hadoop.job.ugi</name>
<value>root,123456</value>
<description>hadoop user access password</description>
</property>
把你们机器hosts文件的 namenode指定到122.224.142.155,就可以测试,周一~周五有效,做了端口映射
参考文章 http://myjavanotebook.blogspot.com/2008/05/hadoop-file-system-tutorial.html
参考资料 http://hadoop.apache.org/
eclipse开发环境配置 http://blog.csdn.net/yanical/archive/2009/08/23/4474991.aspx
Hadoop测试环境安装就不做介绍了,只是简单开发用的测试环境比较简单,建议2个虚拟机,源码下载地址
刚开始接触,多多交流,欢迎微博交流,http://weibo.com/itrs
本来以为将Map/Reduce对nginx日志分析部门一块拿出来,但是代码全部没了,好久没有折腾java、js和linux了,都是一边google一边粘贴;杯具的是硬盘罢工,开发环境全部没了,搞了一个晚上,终于eclipse和tomcat架起来了。
总的结构,简单构想: