Hive 是基于Hadoop 构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop 分布式文件系统中的数据,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行,通过自己的SQL 去查询分析需

要的内容,这套SQL 简称Hive SQL,使不熟悉mapreduce 的用户很方便的利用SQL 语言查询,汇总,分析数据。而mapreduce开发人员可以把

己写的mapper 和reducer 作为插件来支持Hive 做更复杂的数据分析。

它与关系型数据库的SQL 略有不同,但支持了绝大多数的语句如DDL、DML 以及常见的聚合函数、连接查询、条件查询。HIVE不适合用于联机online)事务处理,也不提供实时查询功能。它最适合应用在基于大量不可变数据的批处理作业。

HIVE的特点:可伸缩(在Hadoop的集群上动态的添加设备),可扩展,容错,输入格式的松散耦合。

Hive 的官方文档中对查询语言有了很详细的描述,请参考:http://wiki.apache.org/hadoop/Hive/LanguageManual ,本文的内容大部分翻译自该页面,期间加入了一些在使用过程中需要注意到的事项。

1.  DDL 操作(Data Definition Language),数据定义语言)

DDL

•建表

•删除表

•修改表结构

•创建/删除视图

•创建数据库

•显示命令

一. HIVE启动的两种方式 :1 直接启动  2 Hive thrift服务
1 Hive 直接启动: 找寻你所安装的hive文件下的hive驱动  我的驱动是在 apps/apache-hive-1.2.1-bin/hive 下  执行驱动就可以将hive启动起来

[hadoop@mini1 ~]$ cd apps/apache-hive-1.2.1-bin/
 
[hadoop@mini1 apache-hive-1.2.1-bin]$ bin/hive
2 Hive thrift服务: 将hive作为一个服务器,通过另一个节点用beeline去连接 具体操作如下:

[hadoop@mini1 ~]$ cd apps/apache-hive-1.2.1-bin/
[hadoop@mini1 apache-hive-1.2.1-bin]$ bin/hiveserver2    //先作为服务器启动
    重新开一个mini1窗口

[hadoop@mini1 ~]$ cd apps/apache-hive-1.2.1-bin/
[hadoop@mini1 apache-hive-1.2.1-bin]$ bin/beeline   //先启动beeline节点,然后在连接你启动的hive服务器
// 当进去beeline节点后执行下面操作
beeline> !connect jdbc:hive2://localhost:10000
Connecting to jdbc:hive2://localhost:10000
Enter username for jdbc:hive2://localhost:10000: hadoop   //该账号为你登录的服务器用户名
Enter password for jdbc:hive2://localhost:10000: ******   //密码为服务器密码

上述就是hive的两种启动方式!

二、 Hive命令
    现在在第一种hive启动方式下进行如下操作:

1 查看数据库: show databases;

2  使用数据库: use  +数据库名;

3  查看表:  show tables;

4  创建内表: create table sust(id int,name string) row format delimited fields terminated by ',';   //以逗号分隔要导入数据的信息

5 向内表导入数据:hadoop  fs -put  sust.tex    /user/hive/warehouse/shizhan03.db/sust

导入的数据内容如下

01,liyaozhou
02,fangjingli
03,wangjun
04,liuyang
05,wangkang
06,malin
07,qianghua
08,gaoyixing
09,huanglichang
10,zhaoliangliang
     6: 查看内部表信息: select * from sust;

现在在第二种hive启动方式下进行如下操作:

7:创建外表:0: jdbc:hive2://localhost:10000>  create  external  table  sust1 (id  int,name string)    //创建表名为sust1

>  row format delimited fields  terminated by ','        //使用逗号进行分隔

>  stored as textfile                                       //存储形式为文本类型

>  location '/SUST';                                       // 指定创建的表存在哪个目录下

8:向外表导入数据: 导入的数据内容和内表的一样

0: jdbc:hive2://localhost:10000> load data local inpath '/home/hadoop/sust.tex' into table sust1;   //引号里面是你要导入数据的路径,后面指明你要导入的表

9: 查看外表信息: select * from sust;

10.外表和内表的区别:

Hive 创建内部表时,会将数据移动到数据仓库指向的路径;若创建外部表,仅记录数据所在的路径,不对数据的位置做任何改变。在删除表的时候,内部表的元数据和数据会被一起删除,而外部表只删除元数据,不删除数据。

Hive 是基于Hadoop 构建的一套数据仓库分析系统相关推荐

  1. srs流媒体服务器windows_基于SRS构建的直播平台的监控系统的搭建思路与实现方法...

    市面直播平台百家争鸣,直播监控系统是判断一个直播平台是否完善的必要条件.文章简要介绍了笔者搭建的一套基于SRS的直播平台,并从设计思路.实现方法与实现过程等方面重点介绍了针对此直播平台建设的监控系统, ...

  2. 基于hadoop的智能软考刷题系统

    基于hadoop的智能软考刷题系统 摘  要:近些年,互联网行业的发展带给了很多人在生活上的便利,互联网能够改变人们的生活和工作的模式.很多企业都在将普通的工作模式结合了互联网,利用互联网的优势提高管 ...

  3. 【人工智能毕设之基于Python+flask+bilstm的评论情感分析系统-哔哩哔哩】 https://b23.tv/QU56eTl

    [人工智能毕设之基于Python+flask+bilstm的评论情感分析系统-哔哩哔哩] https://b23.tv/QU56eTl https://b23.tv/QU56eTl

  4. 基于轻量级CNN的12306验证码识别分析系统

    在我很早的一篇文章中有写过图标型验证码识别的实践项目,这里主要是基于以往的实践经历做出的技术升级,包括:模型轻量化.界面开发.Grad-CAM热力图集成等. 话不多说,首先看效果: 基于CNN的轻量级 ...

  5. 【计算机专业毕设之基于python的nba爬虫数据可视化分析系统】

    [计算机专业毕设之基于python的nba爬虫数据可视化分析系统-哔哩哔哩https://b23.tv/BijZd9L 爬虫+Django+数据分析可视化

  6. 基于大数据的农产品价格信息监测分析系统

    温馨提示:文末有 CSDN 平台官方提供的学长 Wechat / QQ 名片 :) 1. 项目简介 本项目利用网络爬虫技术从某蔬菜网采集所有农产品的价格数据,包括北京.上海.安徽.湖北等全国所有省和直 ...

  7. 基于hadoop构建对象存储系统_Hadoop社区正式支持腾讯云对象存储COS

    8月4日消息,知名大数据开源社区Hadoop近日宣布对腾讯云对象存储COS的正式支持.后续,开发者在基于Hadoop架构进行大数据分析时,能够在不修改代码的情况下,无缝高效地使用腾讯云COS来处理海量 ...

  8. 上海鸥新:基于大数据的商场实时客流分析系统

    公司介绍 上海鸥新软件有限公司专注于室内定位技术和客流统计与分析的研发,如室内定位引擎.客流统计与分析系统.在用户导入客流系统的同时,为商业零售实体店提供了网络覆盖.微信上网,定时定地点向客户进行精准 ...

  9. 毫秒级预测,性能卓越!检测、跟踪、行为识别都搞定!这套行人分析系统重磅开源!...

    行人检测跟踪计数.人员行为分析.人员属性分析.人员操作及穿戴合规监测等场景化能力在工业.安防.金融.能源等行业有着极其广泛的应用需求.以深度学习视觉技术为核心的行人分析能力,则是以上任务的核心关键,也 ...

  10. 基于ELK打造强大的日志收集分析系统(springboot2+logback+logstash+elasticsearch+kibana)

    前言 上一代的日志分析系统springboot+log4j+flume+kafka仿佛还是昨天,现在已经流行起了新一代的springboot2+logback+logstash+elasticsear ...

最新文章

  1. C++程序员学Python:C与Python进行交互
  2. 面试上海阿里体育的一道面试题: 设计模式,多态
  3. 电脑反应慢卡怎么解决_电脑开不了机怎么解决?
  4. ApplicationContextAware接口的拓展和使用
  5. 2018年7月5日笔记
  6. 为什么使用中间件下载时总是收到警告消息Object is in status Wait
  7. nlp3-有限自动机FLandFA
  8. 我的docker随笔5:docker-compose的安装与使用
  9. struts2的国际化(即实现网站整体中英文切换)实例
  10. pdo一次插入多条数据的2种实现方式
  11. 共享您的数据!…从SharePoint加载SQL数据
  12. matlab 关于double和im2double
  13. 【Matlab免费安装】
  14. ShellCode欺骗的艺术!
  15. 5G移动通信 笔记 - 5G接入网架构
  16. TrueType字体变成宋体的方法
  17. 首席新媒体黎想教程:如何打造爆款裂变活动推广?
  18. [译] QUIC Wire Layout Specification - Introduction Overview | QUIC协议标准中文翻译(1) 简介和概述...
  19. Android主线程耗时方法监控
  20. 学生动漫网页设计模板下载 火影忍者(7页)大学生HTML网页制作作品 简单漫画网页设计成品 dreamweaver学生网站模板...

热门文章

  1. php过滤excel文件,phpexcel读取excel内存释放怎么处理
  2. list 如何判空以及为什么
  3. 3-VUE -set
  4. centos7 yum安装zabbix监控
  5. 查询ubuntu系统版本相关信息
  6. Oracle单实例数据库迁移到Oracle RAC 环境之(2)--实施篇
  7. java.io.IOException: Connection reset by peer
  8. Salesforce:下个财年营收我们有望突破100亿美元
  9. Undefined index: submit in的错误处理
  10. [译]Chipmunk教程 - 5 跟踪球体的运动