hive中内部表和外部表
hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载。hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行。hive的数据表分为内部表跟外部表。
一、内部表(管理表)
HDFS中为所属数据库目录下的子文件夹。数据完全由Hive管理。删除表(元数据)会删除数据
创表语句:
create table if not exists studennt(
id int,
name string
)
row format delimited fields terminated by '\t' -- 字段分割符
stored as textfile -- 文件格式
location '文件所在路径';-- 路径可以拿出来
如果建表时不指定路径
可以通过 LOAD DATA LOCAL INPATH ‘路径’ OVERWRITE INTO TABLE 表名;
local 可以有可无看数据存放在哪里
有local:从linux本地下获取数据,
无local:从hdfs上获取数据。
overwritre可替换
有overwr