创建表时需要指定数据切分格式,会用到ROW FORMAT关键字。
下面是java集合框架图,存入hive的数据就是集合中的某一种
所以在创建标的时候就可以指定分隔符:
- 第一个--<字段>,由[ , ]分割----------FIELDS TERMINATED BY ','
- 第二个是--<Array形式>,元素与元素之间由[ - ]分割----------COLLECTION ITEMS TERMINATED BY '-'
- 第三个是--<K-V形式>,每组K-V对内部由[ : ]分割,每组K-V对之间由[ - ]分割----------MAP KEYS TERMINATED BY ':'
- 每条数据之间由换行符分割(默认[ \n ]),如果是其它分割方式(比如[ ; ])----------LINES TERMINATED BY ';'
例如:
create table student (
id sno,
name string,
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
COLLECTION ITEMS TERMINATED BY '-'
MAP KEYS TERMINATED BY ':';