数据仓库Hive编程——HiveQL的数据定义(五):删除表

分类目录:商业智能《数据仓库Hive编程》总目录

相关文章:
HiveQL的数据定义(一):Hive中的数据库
HiveQL的数据定义(二):修改数据库
HiveQL的数据定义(三):创建表
HiveQL的数据定义(四):分区表和管理表
HiveQL的数据定义(五):删除表
HiveQL的数据定义(六):修改表

Hive支持和SQL中DROP TABLE命令类似的操作:

DROP TABLE IF EXISTS employees;

可以选择是否使用IF EXITST关键字。如果没有使用这个关键字而且表并不存在的话,那么将会抛出一个错误信息。对于管理表,表的元数据信息和表内的数据都会被删除。

事实上,如果用户开启了Hadoop回收站功能(这个功能默认是关闭的),那么数据将会被转移到用户在分布式文件系统中的用户根目录下的.Trash目录下,也就是HDFS中的/user/$USER/.Trash目录。如果想开启这个功能,只需要将配置属性fs.trash.interval的值设置为一个合理的正整数即可。这个值是“回收站检查点”间的时间间隔,单位是分钟。因此如果设置值为1440,那么就表示是24小时。不过并不能保证所有的分布式系统以及所有版本都是支持的这个功能的。如果用户不小心删除了一张存储着重要数据的管理表的话,那么可以先重建表,然后重建所需要的分区,再从.Trash目录中将误删的文件移动到正确的文件目录下(使用文件系统命令)来重新存储数据。

对于外部表,表的元数据信息会被删除,但是表中的数据不会被删除。

你可能感兴趣的:(数据仓库Hive编程)