hadoop伪分布模式的配置和一些常用命令
大数据的发展历史
3V:volume、velocity、variety(结构化和非结构化数据)、value(价值密度低)
大数据带来的技术挑战
- 存储容量不断增加
- 获取有价值的信息的难度:搜索、广告、推荐
- 大容量、多类型、高时效的数据处理场景,使得从数据中获取有价值的信息变得非常困难
hadoop理论概述
hadoop发展简史
- apache nutch项目,是一个开源网络搜索引擎
- 谷歌发表GFS,是HDFS的前身
- 谷歌发表了mapreduce分布式编程思想
- nutch开源实现了mapreduce
hadoop简介
- 是apache软件基金会下的一个开源分布式计算平台
- java语言,跨平台性
- 在分布式环境下提供了海量数据的处理能力
- 几乎所有厂商都围绕hadoop提供开发工具
hadoop核心
- 分布式文件系统HDFS
- 分布式计算MapReduce
hadoop特性
- 高可靠性
- 高效性
- 高可扩展性
- 高容错性
- 成本低
- linux
- 支持多种编程语言
hadoop生态系统
- HDFS:分布式文件系统
- mapreduce:分布式并行编程模型
- yarn:资源管理和调度器
- tez运行在yarn之上的下一代hadoop查询处理框架,他会将很多的mr任务分析优化后构建一个邮箱无环图,保证最高的工作效率
- hive:hadoop上的数据仓库
- hbase:非关系型分布式数据库
- pig:基于hadoop的大规模数据分析平台
- sqoop:用于在hadoop与传统数据库之间进行数据传递
- oozie:工作流管理系统
- zookeeper:提供分布式协调一致性服务
- storm:流计算框架
- flume:分布式海量日志采集、聚合和传输的系统
- ambari:快速部署工具
- kafka:分布式发布订阅消息系统,可以处理消费者规模的网站中所有动作流数据
- spark:类似于hadoop mapreduce的通用并行框架
hadoop伪分布模式安装
主要流程
- 创建用户及用户组
sudo useradd -d /home/zhangyu -m zhangyu
sudo passwd zhangyu
sudo usermod -G sudo zhangyu
su zhangyu
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
ssh localhost
- 创建apps和data目录并修改权限
sudo mkdir /apps
sudo mkdir /data
sudo chown -R zhangyu:zhangyu /apps
sudo chown -R zhangyu:zhangyu /data
- 下载hadoop和java
mkdir -p /data/hadoop1
cd /data/hadoop1
wget java
wget hadoop
tar -xzvf jdk.tar.gz -C /apps
tar -xzvf hadoop.tar.gz -C /apps
cd /apps
mv jdk java
mv hadoop hadoop
- 添加上面两个到环境变量
sudo vim ~/.bashrc
export JAVA_HOME=/apps/java
export PATH=JAVA_HOME/bin:$PATH
export HADOOP_HOME=/apps/hadoop
export PATH=HADOOP_HOME/bin:$PATH
source ~/.bashrc
java
hadoop
- 修改hadoop配置文件
cd /apps/hadoop/etc/hadoop
vim hadoop-env.sh
export JAVA_HOME=/apps/java
vim core-site.xml
//追加
<property>
<name>hadoop.tmp.dir</name> //临时文件存储位置
<value>/data/tmp/hadoop/tmp</value>
</property>
<property>
<name>fs.defaultFS</name> //hdfs文件系统的地址
<value>hdfs://localhost:9000</value>
</property>
mkdir -p /data/tmp/hadoop/tmp
vim hdfs-site.xml
<property>
<name>dfs.namenode.name.dir</name> //配置元数据信息存储位置
<value>/data/tmp/hadoop/hdfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name> //具体数据存储位置
<value>/data/tmp/hadoop/hdfs/data</value>
</property>
<property>
<name>dfs.replication</name> //配置每个数据库备份数,要根据节点数决定
<value>1</value>
</property>
<property>
<name>dfs.permissions.enabled</name> //配置hdfs是否启用权限认证
<value>false</value>
</property>
- 将集群中slave角色的节点的主机名添加进slaves文件中
vim slaves //将集群中的slave角色的节点的主机名添加经slaves文件中
//目前只有一台节点,所以slaves文件内容只有localhost
- 格式化hdfs文件系统
hadoop namenode -format
- 输入jps查看hdfs相关进程是否启动
cd /apps/hadoop/sbin/
./start-dfs.sh
jps
hadoop fs -mkdir /myhadoop1
hadoop fs -ls -R /
- 配置mapreduce
cd /apps/hadoop/etc/hadoop/
mv mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
<property>
<name>mapreduce.framework.name</name> //配置mapreduce任务所使用的框架
<value>yarn</value>
</property>
- 配置yarn并且测试
vim yarn-site.xml
<property>
<name>yarn.nodemanager.aux-services</name> //指定所用服务器
<value>mapreduce_shuffle</value>
</property>
./start-yarn.sh
- 执行测试
cd /apps/hadoop/share/hadoop/mapreduce
hadoop jar hadoop-mapreduce-examples-2.6.0-cdh5.4.5.jar pi 3 3
hadoop开发插件安装
mkdir -p /data/hadoop3
cd /data/hadoop3
wget http://192.168.1.100:60000/allfiles/hadoop3/hadoop-eclipse-plugin-2.6.0.jar
cp /data/hadoop3/hadoop-eclipse-plugin-2.6.0.jar /apps/eclipse/plugins/
- 进入图形界面
window->open perspective->other
选择map/reduce
点击condole右上角蓝色的大象添加相关配置
- 终端命令行
cd /apps/hadoop/sbin
./start-all.sh
hadoop常用命令
开启、关闭hadoop
cd /apps/hadoop/sbin
./start-all.sh
cd /apps/hadoop/sbin
./stop-all.sh
命令格式
hadoop fs -命令 目标
hadoop fs -ls /user
查看版本
hdfs version
hdfs dfsadmin -report //查看系统状态
目录操作
hadoop fs -ls -R /
hadoop fs -mkdir /input
hadoop fs -mkdir -p /test/test1/test2
hadoop fs -rm -rf /input
文件操作
hadoop fs -touchz test.txt
hadoop fs -put test.txt /input //把本地文件上传到input文件加下
hadoop fs -get /input/test.txt /data //把hadoop集群中的test文件下载到data目录下
hadoop fs -cat /input/test.txt
hadoop fs -tail data.txt //同cat
hadoop fs -du -s /data.txt //查看文件大小
hadoop fs -text /test1/data.txt //将源文件输出为文本格式
hadoop fs -stat data.txt //返回指定路径的统计信息
hadoop fs -chown root /data.txt //改变文件所有者
hadoop fs -chmod 777 data.txt //赋予文件777权限
hadoop fs -expunge //清空回收站
模式切换
hdfs dfsadmin -safemode enter
hdfs dfsadmin -safemode leave
hadoop伪分布模式的配置和一些常用命令的更多相关文章
- hadoop 伪分布模式的配置
转自 http://blog.csdn.net/zhaogezhuoyuezhao/article/details/7328313 centos系统自带ssh,版本为openssh4.3 免密码ssh ...
- Linux环境搭建Hadoop伪分布模式
Hadoop有三种分布模式:单机模式.伪分布.全分布模式,相比于其他两种,伪分布是最适合初学者开发学习使用的,可以了解Hadoop的运行原理,是最好的选择.接下来,就开始部署环境. 首先要安装好Lin ...
- Hadoop伪分布模式配置部署
.实验环境说明 注意:本实验需要按照上一节单机模式部署后继续进行操作 1. 环境登录 无需密码自动登录,系统用户名 shiyanlou,密码 shiyanlou 2. 环境介绍 本实验环境采用带桌面的 ...
- Hadoop伪分布模式配置
本作品由Man_华创作,采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可.基于http://www.cnblogs.com/manhua/上的作品创作. 请先按照上一篇文章H ...
- 【原】Hadoop伪分布模式的安装
Hadoop伪分布模式的安装 [环境参数] (1)Host OS:Win7 64bit (2)IDE:Eclipse Version: Luna Service Release 2 (4.4.2) ( ...
- Hadoop伪分布模式操作
http://blog.csdn.net/wangloveall/article/details/20195813 摘要:本文介绍Hadoop伪分布模式操作,适合于Hadoop学习.开发和调试. 关键 ...
- hadoop伪分布模式安装
软件环境 操作系统 : OracleLinux-R6-U6 主机名: hadoop java: jdk1.7.0_75 hadoop: hadoop-2.4.1 环境搭建 1.软件安装 由于所需的软 ...
- Hadoop 伪分布模式安装
( 温馨提示:图片中有id有姓名,不要盗用哦,可参考流程,有问题评论区留言哦 ) 一.任务目标 1.了解Hadoop的3种运行模式 2.熟练掌握Hadoop伪分布模式安装流程 3.培养独立完成Hado ...
- Java的cmd配置(也即Java的JDK配置及相关常用命令)——找不到或无法加载主类 的解决方法
Java的cmd配置(也即Java的JDK配置及相关常用命令) ——找不到或无法加载主类 的解决方法 这段时间一直纠结于cmd下Java无法编译运行的问题.主要问题描述如下: javac 命令可以正 ...
随机推荐
- JAVA网络通信底层调用LINUX探究
前言:该博客花了我一个下午得心血,全部手打,路过给个赞,拒绝抄袭!!!!!!!!!!!!!!!!!!!!!!!!! 简单的SOCKET通信程序 先从一段简单的JAVA程序性开始写起,这里我们才用半双工 ...
- [ch03-02] 交叉熵损失函数
系列博客,原文在笔者所维护的github上:https://aka.ms/beginnerAI, 点击star加星不要吝啬,星越多笔者越努力. 3.2 交叉熵损失函数 交叉熵(Cross Entrop ...
- Git学习笔记01--常用Git命令、cmd命令及Git总结性知识
资源:外国网友制作的 Git Cheat Sheet 第二次学习廖雪峰老师的Git教程,学习过程中把教程中涉及到的Git命令及总结性知识记录下来方便二次复习. 知识点 所有的版本控制系统,其实只能跟踪 ...
- java Random类详解
java Random类位于java.util包下,主要用来生成随机数,本文详解介绍了Random类的用法,希望能帮到大家 Random类 (java.util) Random类中实现的随机算法是伪随 ...
- MyEclispe启动Tomcat7时出现错误The servlets named [LoginServlet] and [com.liu.control.LoginServlet] are both
刚开始尝试写Servlet代码,第一天就碰到这个错误,在网上找了很多资料才找到解决办法,在此记录一下. org.apache.catalina.LifecycleException: Failed t ...
- exc_bad_instruction(code=EXC_I386_INVOP,subcode=0x0) 错误
对象存储异常 对象存储要遵守NSCoding协议 #import "EmotionModel.h" @interface EmotionModel()<NSCoding> ...
- linux免密登录和设置别名
一.免密登录 (1) 配置公钥 ssh-keygen (2)让远程服务器记住公钥 ssh-copy-id 用户名@ip地址或域名 二.设置别名 (3)在~/.ssh目录下创建并编辑conf ...
- tensorflow学习笔记——AlexNet
1,AlexNet网络的创新点 AlexNet将LeNet的思想发扬光大,把CNN的基本原理应用到了很深很宽的网络中.AlexNet主要使用到的新技术点如下: (1)成功使用ReLU作为CNN的激活函 ...
- 智能家居CC2530功率放大组网RFX2401C和AT2401C的区别
两者最大的区别就是RFX2401C的增益为12dbmAT2401C的增益为14dbm这就会导致AT2401C的功耗会比RFX2401C大一点点,但距离也会相对更远,并且增加了EDS防静电等级,多出2个 ...
- openstack Mitaka实验环境安装(centos系统)
本博文仅供参考,具体一定详细学习官方安装文档. 一 准备工作 二安装过程 1 安装NTP服务 2 安装openstack包 3 SQL数据库安装 4 安装消息队列 message queue 5 Me ...