Hive基本操作

安装mysql、hive步骤
一、什么是hive
Hive是基于Hadoop的一个数据仓库工具(离线),可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。

操作接口采用类SQL语法,提供快速开发的能力, 避免了去写MapReduce,减少开发人员的学习成本, 功能扩展很方便。

用于解决海量结构化日志的数据统计。

本质是:将 HQL 转化成 MapReduce 程序

1、优缺点
优点:(1) 操作接口采用类 SQL 语法,提供快速开发的能力(简单、容易上手)。

           (2)  避免了去写 MapReduce,减少开发人员的学习成本。

           (3)  Hive 的执行延迟比较高,因此 Hive 常用于数据分析,对实时性要求不高的场合。

           (4)  Hive 优势在于处理大数据,对于处理小数据没有优势,因为 Hive 的执行延迟比较高。(不断地开关JVM虚拟机)

  5)  Hive 支持用户自定义函数,用户可以根据自己的需求来实现自己的函数。

缺点: 1.Hive 的 HQL 表达能力有限

           (1)迭代式算法无法表达    (反复调用,mr之间独立,只有一个map一个reduce,反复开关)

           (2)数据挖掘方面不擅长

          2.Hive 的效率比较低

               (1)Hive 自动生成的 MapReduce 作业,通常情况下不够智能化

               (2)Hive 调优比较困难,粒度较粗   (hql根据模板转成mapreduce,不能像自己编写mapreduce一样精细,无法控制在map处理数据还是在reduce处理数据)

2、架构原理

二、启动方式
需要先启动hdfs和yarn,hive数据最终保存在hdfs,操作表需要mr,所以需要yarn资源调度

1、方式一:

[root@hdp-2 lib]# hive
设置一些基本参数,让hive使用起来更便捷,比如:

//让提示符显示当前库:

hive>set hive.cli.print.current.db=true;

//显示查询结果时显示字段名称:

hive>set hive.cli.print.header=true;
但是这样设置只对当前会话有效,重启hive会话后就失效,解决办法:

在linux的当前用户目录中~,编辑一个.hiverc文件,将参数写入其中:

vi .hiverc

set hive.cli.print.header=true;
set hive.cli.print.current.db=true;
2、方式二:

在hdp-1服务器端启动hivesever2 (1)停在这个页面

[root@hdp-1 conf]# hiveserver2
启动hivesever2 (2)信息打印输出台

[root@hdp20-04 hive-1.2.1]# bin/hiveserver2 -hiveconf hive.root.logger=DEBUG,console
启动hivesever2 (2)后台启动

hiveserver2 1>/dev/null 2>&1 &

hive的安装在之前已经写了 地址:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值