主题>>: cloudEra hadoop Ecosystem sim Unscramble; ruiy哥个人理解总结,其实我无非也还是站在那"砖家/叫兽"的肩上瞎扯扯(至于名词我就乱引用了,木关它神马领域?在此用用吧,你要是想改改啥,随你吧,搞技术的随意最好),不是巨人肩啊,如今已经没有牛顿了,更没他的肩给我们搭,哈哈其实我也是瞎说下啦,请口下留情莫喷我,当然不排除有大牛,玩技术犹如庖丁解牛般...!,本文核心在于简单谈谈hadoop ecosystem,顺便简单搭建bigData analysis Platform测试环境,具体关于Hdfs,ndfs,Mapredce,spark,MPI,hbase请继续关注本站后续有空了ruiy哥搞搞copy,paste吧,哈哈,但哥可是几经波折后再淘宝的哦亲!,想弄的(搞java MP(海量并发)开发的哥们去吧,哥不搞这方面开发的,ruiy哥搞啥的,关注本站吧,其实ruiy哥自己也不清楚哈!)请查看google GFS,bigTable,MapReduce,毕竟它们是hadoop ecosystem的祖辈!;
hadoop ecosystem components;
1,hive warehourse(derby一个运行在JVM上的数据库,用于存储hdfs metadata,可以用mysql替;)
2,hbase Nosql Database(分布式,面向列的Nosql数据库,运行于JVM上),包括hbase和zookeeper组件,其分成3中运行模式standalone(不使用HDFS,而是使用本地的文件系统) pseudo-distributed(使用单机HDFS),distributed完全使用HDFS,至少3简单,zookeeper集群至少3node,其中其简单数应为奇数,distributed时,配置conf/hbase-site.xml。设定hbase.rootdir来指定Hbase运行在哪个HDFS上;
具体的我就不一一点名了;
完全分布式还需指定
在配置hbase时需修改/etc/security/limits.conf
添加如下语句
- hadoop - nofile 65535
- hadoop soft/hard nproc 65535
-
在 /etc/pam.d/common-session 加上这一行:
session required pam_limits.so
否则在 /etc/security/limits.conf上的配置不会生效.
不然会报拒绝连接错误,这个是肯定的,因为你要是弄过socket编程就明白了,我们在设定socket服务器的listen函数时backlog参数就是设定最大的客户端数量,当实际的访问用户数大于backlog时,后面陆续的访问用户接收到信息均是拒绝连接在linux系统下 你可以用命令lsof|wc -l查看当前以打开的文件数 ,系统默认最大的打开数为1024,这个数目是肯定不够跑的,瞎扯的未到科学院实验拿证书!自己无聊瞎想的,你不要信,信不信由你,反正我信了,请飘过!;
别的属性值设置
hadoop简单集群测试环境核心配置文件实例,我就简单点了,大牛你请自便,毕竟咱弄的仅仅是测试环境,又请注意了,hadoop优势在海量数据处理上,你测的太小的数据量就不要往这上面丢了,否则跑的太慢,你们又说人家这家伙能力不照,伤人家心啊,人家可是生来就不干這事的,自己理解吧,ruiy哥先飘了!
hbase在HAdoop主节点60010口上有个GUI,
hive warehorse
附:hadoop+hive+hbase完全分布式搭建,仅用于测试环境,生产环境需修改增加相应的属性值及系统内核相关参数,否则请慎用!!!
updating and upgrading!!!!!!;;
配置hive
cp -r hive-0.8.1/conf $HIVE_CONF_DIR/
cd $HIVE_CONF_DIR/ 我指定的就是hive根目录下的conf/
cp hive-default.xml.template hive-default.xml 还有一个是hive-site.xml(这个优先权大于default);
cat hive-env.sh
export HADOOP_HEAPSIZE=512
export HIVE_CONF_DIR=/home/hadoop/hive-conf
export HADOOP_HOME=/usr/local/hadoop02
配置用mysql来装载hdfs的metastore
修改hive-site.xml或是hive-default.xml
添加如下行 或是直接放在hive-site.xml中,default与site共存,同时下下面的数据库及权限你提前要在mysql下弄好;
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://slave1:3306/hive?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hivepass</value>
</property>
hbase完全分布式配置
hadoop完全分布式在此就省了,有点阅历的运维10分钟内搞不定3节点简单集群环境,自个面壁去;
后续退出shell自动跑来部署此环境请继续关注;