生鲜网站建设规划书,网站服务器在那里找,西安新站网站推广优化,建设银行江苏省分行网站文章目录 一、实验目的二、实验要求三、实验原理四、实验环境五、实验内容和步骤#xff08;一#xff09;安装部署#xff08;二#xff09;配置HDFS#xff08;三#xff09;启动Hive 六、实验结果#xff08;一#xff09;启动结果#xff08;二#xff09;Hive基… 文章目录 一、实验目的二、实验要求三、实验原理四、实验环境五、实验内容和步骤一安装部署二配置HDFS三启动Hive 六、实验结果一启动结果二Hive基本命令 七、实验心得 一、实验目的
理解Hive存在的原因理解Hive的工作原理理解Hive的体系架构并学会如何进行内嵌模式部署启动Hive然后将元数据存储在HDFS上。
二、实验要求
完成Hive的内嵌模式部署能够将Hive数据存储在HDFS上待Hive环境搭建好后能够启动并执行一般命令。
三、实验原理
Hive是Hadoop 大数据生态圈中的数据仓库其提供以表格的方式来组织与管理HDFS上的数据、以类SQL的方式来操作表格里的数据Hive的设计目的是能够以类SQL的方式查询存放在HDFS上的大规模数据集不必开发专门的MapReduce应用。
Hive本质上相当于一个MapReduce和HDFS的翻译终端用户提交Hive脚本后Hive运行时环境会将这些脚本翻译成MapReduce和HDFS操作并向集群提交这些操作。
当用户向Hive提交其编写的HiveQL后首先Hive运行时环境会将这些脚本翻译成MapReduce和HDFS操作紧接着Hive运行时环境使用Hadoop命令行接口向Hadoop集群提交这些MapReduce和HDFS操作最后Hadoop集群逐步执行这些MapReduce和HDFS操作整个过程可概括如下 1用户编写HiveQL并向Hive运行时环境提交该HiveQL。 2Hive运行时环境将该HiveQL翻译成MapReduce和HDFS操作。 3Hive运行时环境调用Hadoop命令行接口或程序接口向Hadoop集群提交翻译后的HiveQL。 4Hadoop集群执行HiveQL翻译后的MapReduce-APP或HDFS-APP。
由上述执行过程可知Hive的核心是其运行时环境该环境能够将类SQL语句编译成MapReduce。
Hive构建在基于静态批处理的Hadoop之上Hadoop通常都有较高的延迟并且在作业提交和调度的时候需要大量的开销。因此Hive并不能够在大规模数据集上实现低延迟快速的查询例如Hive在几百MB的数据集上执行查询一般有分钟级的时间延迟。
因此Hive并不适合那些需要低延迟的应用例如联机事务处理OLTP。Hive查询操作过程严格遵守Hadoop MapReduce的作业执行模型Hive将用户的HiveQL语句通过解释器转换为MapReduce作业提交到Hadoop集群上Hadoop监控作业执行过程然后返回作业执行结果给用户。Hive并非为联机事务处理而设计Hive 并不提供实时的查询和基于行级的数据更新操作。Hive的最佳使用场合是大数据集的批处理作业例如网络日志分析。
Hive架构与基本组成如图所示 四、实验环境
云创大数据实验平台 Java 版本jdk1.7.0_79Hadoop 版本hadoop-2.7.1Hive 版本hive-1.2.1
五、实验内容和步骤
相对于其他组件Hive部署要复杂得多按metastore存储位置的不同其部署模式分为内嵌模式、本地模式和完全远程模式三种。当使用完全模式时可以提供很多用户同时访问并操作Hive并且此模式还提供各类接口BeeLineCLI甚至是Pig这里我们以内嵌模式为例。 由于使用内嵌模式时其Hive会使用内置的Derby数据库来存储数据库此时无须考虑数据库部署连接问题整个部署过程可概括如下。
一安装部署
在master机上操作首先确定存在Hive
ls /usr/cstor/hive/ 二配置HDFS
先为Hive配置Hadoop安装路径。
待解压完成后进入Hive的配置文件夹conf目录下接着将Hive的环境变量模板文件复制成环境变量文件。
cd /usr/cstor/hive/conf
cp hive-env.sh.template hive-env.sh
vim hive-env.sh这里使用cp命令而不是mv命令是因为我们可以备份一份之前的文件我们只是复制一份修改而不是替换。
在配置文件中加入以下语句
HADOOP_HOME/usr/cstor/hadoop然后在HDFS里新建Hive的存储目录进入hadoop的bin目录内
cd /usr/cstor/hadoop/在HDFS中新建/tmp和/usr/hive/warehouse两个文件目录并对同组用户增加写权限。
bin/hadoop fs -mkdir /tmp
bin/hadoop fs -mkdir -p /usr/hive/warehouse
bin/hadoop fs -chmod gw /tmp
bin/hadoop fs -chmod gw /usr/hive/warehouse三启动Hive
在内嵌模式下启动Hive指的是启动Hive运行时环境用户可使用下述命令进入Hive运行时环境。
启动Hive命令行
cd /usr/cstor/hive/
bin/hive六、实验结果
一启动结果
使用bin/hive命令进入Hive环境验证Hive是否启动成功。
cd /usr/cstor/hive/
bin/hive二Hive基本命令
进入Hive环境后使用show tablesshow function后如下图所示则表示配置成功。
显示表
show tables;因为目前我们没有创建表所以返回了一个OK。
显示Hive内置函数
show functions;退出Hive环境
exit;七、实验心得 通过本次Hive部署实验我深刻理解了Hive在Hadoop大数据生态圈中的重要地位和作用。Hive作为一个数据仓库不仅提供了以表格方式组织和管理HDFS上数据的便利更以类SQL的方式简化了对大规模数据集的操作极大地降低了开发成本。 在实验过程中我学习了Hive的内嵌模式部署方法掌握了如何将Hive数据存储在HDFS上并成功启动了Hive环境。通过实际操作我深刻体会到了Hive环境搭建的复杂性和细致性每一个步骤都需要谨慎操作稍有疏忽就可能导致部署失败。 同时我也认识到Hive并非为联机事务处理而设计其查询操作过程严格遵守Hadoop MapReduce的作业执行模型因此在大规模数据集上实现低延迟快速查询方面存在一定的局限性。这使我更加明确了Hive的最佳使用场合——大数据集的批处理作业。此外我还学会了使用Hive的基本命令如查看表格和函数等这些命令为我在后续的实验和学习中提供了有力的支持。 总之本次Hive部署实验不仅让我掌握了Hive的部署和使用方法更让我对Hive的工作原理和体系架构有了更深入的理解。我相信在未来的学习和工作中我将能够更好地运用Hive来处理和分析大规模数据集。 附以上文中的数据文件及相关资源下载地址 链接https://pan.quark.cn/s/b0f6f0d06704 提取码PNp2