Hadoop

Hadoop

  • Zookeeper 分布式协作服务
  • HBase 实时分布式数据库
  • Hive 数据仓库
  • Pig 数据流处理
  • Mahout 数据挖掘库
  • MapReduce 分布式计算框架
  • HDFS 分布式文件系统
  • Flume 日志收集工具
  • Sqoop 数据库ETL工具Hadoop
    Hadoop部署模式:
    单机模式、伪分布模式、完全分布式模式

伪分布式安装

vim /etc/sysconfig/network //设置机器名
vim /etc/hosts //添加ip和对应的主机名
//关闭防火墙
service iptables status
chkconfig iptables off
//关闭SELinux
vim /etc/selinux/config
SELINUX=enforcing 改为SELINUX=disabled
//更新OpenSSL
yum update openssl
vim /etc/ssh/sshd_config
	放开一下配置:
	  RSAAuthentication yes
	  PubkeyAuthentication yes
	  AuthorizedKeysFile .ssh/authorized_keys
service sshd restart
//生成私钥和公钥
	ssk-keygen -t rsa
    cp id_rsa.pub authorized_keys
	chmod 400 authorized_keys
tar -xzvf tar
mkdir tmp
mkdir hdfs
mkdir hdfs/name
mkdir hdfs/data
cd hdfs/data
chmod -R 755 data

hadoop-env.sh
由于从1.x版本起,HADOOP_HOME环境变量由HADOOP_PREFIX这个环境变量替代,新版本已经用HADOOP_PREFIX这个环境变量替代HADOOP_HOME了。
使用export HADOOP_HOME_WARN_SUPPRESS=1屏蔽掉警告信息

export JAVA_HOME=jdk路径
export PATH=$PATHhadoop路径
export HADOOP_HOME_WARN_SUPPRESS=1 
source hadoop-env.sh
hadoop version

/etc/profile

export HADOOP_HOME=hadoop路径
export PATH=$HADOOP/bin

core-site.xml

<configuration>
  <property>
    <name>fs.default.nane</name>
    <value>hdfs://hadoop:9000</value>
  </proprty>
  <property>
    <name>hadoop.tmp.dir</name>
    <value>/app/hadoop-1.1.2/tmp</value>
  </proprty>
</configuration>

hdfs-site.xml

<configuration>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
  <property>
    <name>dfs.name.dir</name>
    <value>/app/hadoop-1.1.2/hdfs/name</value>
  </property>
  <property>
    <name>dfs.data.dir</name>
    <value>/app/hadoop-1.1.2/hdfs/data</value>
  </property>
</configuration>

mapred-sit.xml

<property>
    <name>mapred.job.tracker</name>
    <value>hadoop:9001</value>
  </property>
vi masters 主节点
vi slaves 从节点
./hadoop namenode -format
./start-all.sh
./stop-all.sh
启动和停止haoop(不使用start-all.shstop-all.sh
 //start
 //hdfs
 ./hadoop-daemons.sh start namenode
 ./hadoop-daemons.sh start datanode
./hadoop-daemons.sh start secondarynamenode

//mapreduce
./hadoop-daemons.sh start jobtracker
./hadoop-daemons.sh start tasktracker

//stop 顺序和start相反
    ....

执行jps

NameNode
DataNode
SecondaryNameNode
TaskTracker 
JobTracker
Jps
可在浏览器中访问Web页面:

hadoop ip:8088 和 ip:50070

常用命令

删除hdfs文件夹
 hadoop ls -rm dirPath
 hadoop ls -rmr dirPath
查看hdfs文件夹
 hadoop ls -ls dirPath
创建hdfs文件夹
 hadoop ls -mkdir dirPath
查看hdfs文件
 hadoop ls -cat dirPath/fileName
查看所有命令
 hadoop fs	
 hadoop fs -help ls

执行文件

//hdfs创建文件
hadoop fs -mkdir -p /class5
//设置本地环境(hadoop-env.sh文件)
export HADOOP_PATH = //class的目录 
//编译java文件
javac -classpath ../hadoop-core-1.1.2.jar:../../lib/commons-cli-1.2.jar 文件
//上传文件到hdfs
hadoop fs -copyFromLocal fileName.txt /class5/fileName.txt
或者:hadoop fs -put fileName.txt /class5/fileName.txt
hadoop fs -ls /class5
hadoop fs -ls -R /class5
//执行任务
hadoop classFileName arg[?]
//查看hdfs
hadoop fs -cat fileName.txt

MapReduce:

  1. map side join
  2. reduce side join
  3. semi join

执行MapReduce

  1. 编译java文件
  2. 打包jar
  jar cvf ./jarFileName.jar ./classfilName.class
  rm *.jar
  zcat *.gz > fileName.txt //将gz文件合并成txt文件

3.运行程序:

 hadoop jar jarFileName.jar jarFileName arg[?]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值