Hive学习笔记(1)

  • Hive学习笔记
    • 基础操作
      • Hive内部都有什么
      • Hive命令
    • 数据类型和文件格式
      • 基本数据类型
      • 集合数据类型
      • 文本文件数据编码

Hive学习笔记

笔记内容主要来自Hive编程指南

基础操作

Hive内部都有什么

  • $HIVE_HOME/lib 目录下有 jar文件
  • $HIVE_HOME/bin 目录下包含可执行文件,包括hive命令行界面(CLI)
  • Hive 还有一些组件。Thrift服务提供了可远程访问其他进程的功能,也提供使用 JDBC和ODBC 访问 Hive的功能。这些都是基于Thrift服务实现的。
  • 所有的Hive客户端都需要一个metastoreservice(元数据服务) ,Hve使用这个服务来存储表模式信息和其他元数据信息。默认是 使用Derby SQL。生产环境需要切换到 MySQL或者 其他关系型数据库。
  • Hive提供了一个简单的Hive网页界面(HWI) , 提供了远程访问Hive的服务。
  • conf目录下存放了Hive的配置文件。

Hive命令

bin/hive –help
Hive学习笔记(1)_第1张图片

hive服务
Hive学习笔记(1)_第2张图片

hive命名空间
Hive学习笔记(1)_第3张图片

hive中”一次使用命令”

hive -e "SELECT * FROM mytable LIMIT 3";
hive -S -e "SELECT * FROM mytable LIMIT 3";#静默模式

从文件中执行hive查询

hive -f /mypath/test.hql;

hiverc文件

hive -i ...#i选项允许用户指定一个文件,当cli启动时,提提示符出现前会先执行这个文件。Hive会自动在Home目录下寻找名为.hiverc的文件。(如果有这个文件的话)

hive cli 更多介绍
- 自动补全功能
- 查看操作命令历史(存放位置:$HOME/.hivehistory)
- 执行shell命令 ! 命令前加 感叹号
- hive内使用Hadoop的dfs命令
- Hive 脚本中注释用 - -
- 显示字段名称 hive.cli.print.header=true


数据类型和文件格式

基本数据类型

Hive学习笔记(1)_第4张图片

集合数据类型

Hive学习笔记(1)_第5张图片

文本文件数据编码

默认的记录和字段分隔符
Hive学习笔记(1)_第6张图片

指定分隔符:

CREATE TABLE employees(
    name STRING,
    salary FLOAT,
    subordinates ARRAY,
    deductions MAPFLOAT>,
    address STRUCTINT>
)
ROW FORMAT DELIMITED
FILEDS TERMINATED BY '\001'
COLLECTION ITEMS TERMINATED BY '\002',
MAP KEYS TERMINATED BY '\003',
LINES TERMINATED BY '\N'
STORED AS TEXTFILE;

ROW FORMAT DELIMITED 这组关键词必须要写在其他子句(除了 STORED AS…子句)之前。

自定义分割 简单示例(逗号分割字段):

CREATE TABLE some_data(
    first FLOAT,
    second FLOAT,
    third FLOAT
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ',';

你可能感兴趣的:(Hadoop开发)