hive删库和表
删除库
判断数据库是否存在,存在了删除。如果数据库不为空,强制删除加上cascade
drop database if exists hive库名;
drop database if exists hive库名 cascade;
删除表
判断表是否存在,存在了删除表以及表结构
drop table hive_table_name;
判断表是否存在,存了,即删除表的数据
truncate table student;
装载数据到表
将数据上传到HDFS上后,导入hive表的操作。
首先,创建一个表:
create table if not exists 库名.表名
(
字段名 字段属性 字段备注,
字段名 字段属性 字段备注
)
comment '表名备注'
row format serde
'org.apache.hadoop.hive.serde2.OpenCSVSerde'
with serdeproperties (
'separatorChar' = ',',
'escapeChar' = '\"'
)
stored as textfile;
序列化和反序列化根据自己需求设置
其次,上传文件到HDFS上
①:为了保证HDFS上有文件地址,首先mkdir文件地址,加-p可以创建多级目录
hadoop fs -mkdir -p /HDFS文件地址
hadoop fs -mkdir /HDFS文件地址
②:将文件上传
hadoop fs -put /本地文件地址 /HDFS地址
最后,加载HDFS上的数据到表中,或者加载HDFS上的数据覆盖到表中数据
load data inpath 'hdfs的文件地址' into table hive表名;
load data inpath 'hdfs的文件地址' overwrite into table hive表名;
装载本地数据的话
load data local inpath '本地文件路径' into table hive表名;