Hive基础
跳到导航
跳到搜索
参数设置
优先级: 配置文件 < 命令行参数 < 终端里输入命令
注意某些系统级的参数, 例如 log4j 的设定必须用前两种方式设定, 因为那些参数的读取在会话建立以前已经完成了。
- 配置文件方式 hive-default.xml 和 hive-site.xml
- 命令行参数方式 启动 Hive 时,hive -hiveconf mapred.reduce.tasks=10
- 终端里输入命令
set 查看所有配置
set xxx 查看xxx参数的值
set xxx 1 设置xxx参数的值
基础命令
hive -e “sql语句”
hive -f “sql文件路径”
分割符
Hive中默认的分割符为:
列:^A
行:\n
在数据文件中显示为:"1000^AHello, World!\n",数据中如果包含:"\001","\n"等分隔符,需要提前处理掉。
如果需要自定义分隔符,需要设置:
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
LINES TERMINATED BY '\n'
数据类型
基本数据类型
Hive 数据类型 | Java 数据类型 |
---|---|
TINYINT | byte |
SMALINT | short |
INT | int |
BIGINT | long |
BOOLEAN | boolean |
FLOAT | float |
DOUBLE | double |
STRING | string |
TIMESTAMP
String 类型相当于数据库的 varchar 类型, 该类型是一个可变的字符串,理论上它可以存储 2GB 的字符数
集合数据类型
- STRUCT struct<street:string, city:string>
- MAP map<string, int>
- Array array<string>
注意
- order by 中的字段, 必须在 select 中出现
- 子查询表必须有别名