Hive基础(1)-阿里云开发者社区

开发者社区> 数据库> 正文
登录阅读全文

Hive基础(1)

简介: Hive基础(1) Hive的HQL(2) 1. Hive并不是分布式的,它独立于机器之外,类似于Hadoop的客户端。 2. 元数据和数据的区别,前者如表名、列名、字段名等。 3. Hive的三种安装方式 内嵌模式,元数据服务和Hive服务运行在同一个JVM中,同时使用内嵌的Derby数据库作为元数据存储,该模式只能支持同时最多一个用户打开Hive会

Hive基础(1)

Hive的HQL(2)

1. Hive并不是分布式的,它独立于机器之外,类似于Hadoop的客户端。

2. 元数据和数据的区别,前者如表名、列名、字段名等。

3. Hive的三种安装方式

  • 内嵌模式,元数据服务和Hive服务运行在同一个JVM中,同时使用内嵌的Derby数据库作为元数据存储,该模式只能支持同时最多一个用户打开Hive会话。
  • 本地模式,元数据服务和Hive服务运行在同一个JVM中,采用了外置的MySQL作为元数据存储,该种方式支持多个用户同时访问Hive。
  • 远程模式,元数据服务和Hive服务运行在不同的进程内,这样做的好处是,数据库层可以完全地置于防火墙之后,客户端则不需要数据库验证。
  • 推荐,生产环境中,使用本地模式、远程模式。

4. Hive不支持行级别的更新、插入或者删除操作,并且不支持事物。Hive不能做OLTP的“联机”部分,所以对Hive更适合离线计算,对于实时性要求很高的可以选择HBase或者Impala。

5. Hive和关系型数据库的区别

compare Hive RMDBS
查询语言 HQL SQL
数据存储位置 HDFS Raw Device或者Local FS
数据格式 用户定义 系统决定
数据更新 不支持 支持
索引
执行 MapReduce Executor
执行延迟
可扩展性
数据规模

6. Hive的数据类型与存储格式

  • 数据类型
    • 基本数据类型:整型、浮点型、布尔型等
    • 复杂数据类型(集合):STRUCT、MAP、ARRAY
  • 存储格式
    • TEXTFILE(default)
    • 不压缩、磁盘开销大、数据解析开销大
    • SEQUENCEFILE
    • 使用方便、可分割、可压缩、按行切分
    • RCFILE
    • 行列存储相结合,首先,将数据按行分块,保证同一条记录在一个块上,避免读一条记录需要读取多个块。其次,块上的数据按照列式存储,有利于数据压缩和快速地进行行列存取,也就是“先按水平划分再按垂直划分”
    • 自定义
    • 用户可通过实现InputFormat和OutputFormat来自定义输入输出格式。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章
最新文章
相关文章