Hive——Hive的数据模型_内部表(6)

Hive的数据存储

  • 基于HDFS
  • 没有专门的数据存储格式
  • 存储结构主要包括:数据库、文件、表、视图
  • 可以直接加载文本文件(.txt文件)
  • 创建表时,指定Hive数据的列分隔符与行分隔符

Inner Table(内部表)

  • 与数据库(MySQL、Oracle)中的 Table 在概念上是类似
  • 默认的列分隔符是:tab键
  • 每一个 Table 在 Hive 中都有一个相应的目录存储数据
  • 所有的 Table 数据(不包括 External Table)都保存在这个目录中
  • 删除表时,元数据与数据都会被删除

举例:创建一个员工表 emp表
数据 7654,MARTIN,SALESMAN,7698,1981/9/28,1250,1400,30

导入数据:
insert语句
load语句:相当于ctrl+x
    (1)导入HDFS的数据   load data inpath '/scott/emp.csv' into table emp;
    (2)导入本地Linux的数据:load data local inpath '/root/temp/emp.csv' into table emp1;

Hive——Hive的数据模型_内部表(6)Hive——Hive的数据模型_内部表(6)

创建一个员工表 emp1表,并且指定分隔符是:逗号

Hive——Hive的数据模型_内部表(6)

在Hive中,定义了一种类SQL语言HiveQL。可以看成是仍SQL到Map-Reduce的映射器,有些SQL就转换成Map-Reduce了,而有些SQL不会转换成Map-Reduce。因此在Hive中并不是所有的SQL都会转换成Map-Reduce。看如下示例:

Hive——Hive的数据模型_内部表(6)

Hive——Hive的数据模型_内部表(6)客户端的静默模式:不打印日志

Hive——Hive的数据模型_内部表(6)