为什么使用Hive
使用Hadoop MapReduce直接处理数据所面临的问题
人员学习成本太高需要掌握java、Python等编程语言
MapReduce实现复杂查询逻辑开发难度太大
使用Hive处理数据的好处
操作接口采用类SQL语法,提供快速开发的能力(简单、容易上手)
底层执行MapReduce, 可以完成分布式海量数据的SQL处理
1.什么是分布式SQL计算?
以分布式的形式,执行SQL语句,进行数据统计分析。
2.kp∂cheHh'e是做什么的?
很简单, 将SQL语句翻译成MapReduce程序, 从而提供用户分布式SQL计算的能力。
传统MapReduce开发: 写MR代码->得到结果
使用Hive开发: 写SQL->得到结果
底层都是MR在运行,但是使用层面上更加简单了。
HDFS的Shell命令
Hadoop提供了文件系统的shell命令使用格式如下: hadoop fs 或者 hdfs dfs
-ls 格式: hadoop fs -ls URI
作用:类似于Linux的ls命令,显示文件列表
应用:hadoop fs -ls / #显示文件列表 hadoop fs –ls -R / #递归显示文件列表
mkdir命令 格式 : hadoop fs –mkdir [-p]
作用 : 以中的URI作为参数,创建目录。使用-p参数可以递归创建目录
应用: hadoop fs -mkdir /dir1 hadoop fs -mkdir -p /aaa/bbb/ccc
mv命令 格式 : hadoop fs -mv
作用: 将hdfs上的文件从原路径src移动到目标路径dst,该命令不能夸文件系统
应用: hadoop fs -mv /dir1/1.txt /dir2
rm命令 格式: hadoop fs -rm [-r] [-skipTrash] URI [URI 。。。]
作用: 删除参数指定的文件和目录,参数可以有多个,删除目录需要加-r参数 如果指定-skipTrash选项,那么在回收站可用的情况下,该选项将跳过回收站而直接删除文件; 否则,在回收站可用时,在HDFS Shell 中执行此命令,会将文件暂时放到回收站中。
应用: hadoop fs -rm /initial-setup-ks.cfg #删除文件 hadoop fs -rm -r /dir2 #删除目录
cp命令 格式: hadoop fs -cp
作用: 将文件拷贝到目标路径中
应用: hadoop fs -cp /dir1/1.txt /dir2
cat命令 格式: hadoop fs -cat
作用: 将参数所指示的文件内容输出到控制台
应用: hadoop fs -cat /dir1/1.txt
put命令 格式 : hadoop fs -put ...
作用 : 将单个的源文件或者多个源文件srcs从本地文件系统上传到目标文件系统中