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 命令可以正 ...
随机推荐
- 【2018寒假集训Day 8】【最小生成树】Prim和Kruskal算法模板
Luogu最小生成树模板题 Prim 原理与dijkstra几乎相同,每次找最优的点,用这个点去松弛未连接的点,也就是用这个点去与未连接的点连接. #include<cstdio> #in ...
- linux basic
一:date 语法: 打印日期:date [OPTION]..... [+FORMAT] 设定日期:date [MMDDhhmm] [[cc][YY][.ss] 创建带实时日期的文件 touch $ ...
- Python和Java的区别
这里是我的一些总结,有些是参考别人的(在这里谢谢!!!) 区别: 1.Python比Java简单,学习成本低,开发效率高2.Java运行效率高于Python,尤其是纯Python开发的程序,效率极低3 ...
- 外键(foreign key)的使用及其优缺点
如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键.由此可见,外键表示了两个关系之间的相关联系.以另一个关系的外键作主关键字的表被称为主表,具有此外键的表被称为主表的从表. ...
- golang数据结构之循环链表
循环链表还是挺有难度的: 向链表中插入第一条数据的时候如何进行初始化. 删除循环链表中的数据时要考虑多种情况. 详情在代码中一一说明. 目录结构如下: circleLink.go package li ...
- nginx部署安装
首先需要下载Nginx软件包 nginx软件官方下载地址:[nginx官方下载连接](http://www.nginx.org) 建议选择稳定的软件版本,如果练习使用当然是无所谓,随便什么版本都可以, ...
- 华为ARM64服务器上手体验--不吹不黑,用实际应用来看看TaiShan鲲鹏的表现
背景 中美贸易冲突以来,相信最大的感受,并不是我对你加多少关税,而是我有,可我不卖给你."禁售"成了市场经济中最大的竞争力. 相信也是因为这个原因,华为"备胎转正&quo ...
- 求亿级记录中搜索次数Top N的搜索词(MapReduce实现)
程序事例: 日志信息: 二手车 1345 二手房 3416 洗衣机 2789 输入: N=2 输出: 二手房 洗衣机 map函数如下: import java.io.IOException; impo ...
- mysql-常用组件之触发器
基本概念 触发器是一种特殊的存储过程,不像存储过程需要显示调用,触发器通过监控表事件(增删改操作)自动触发某条 sql 的执行,可以用于购物车加购后库存减少等场景. 触发器基本操作 1. 创建触发器 ...
- chrome浏览器通过ajax的POST请求报403解决方法
方法1 把POST改成GET方式 方法2 添加请求格式contentType:“application/json”,