最近遇到了一个问题,就是因为资源原因,需要把存储时间较长的数据转移到另外一个数据库中,操作其实很简单。
假设我们要将A库里面的employee_table转移到B库里面的同框架employee_record表中,
首先,在B库里面建立一个和A.employee_table一样的表,
然后用一下语句:
hive -e "alter table B.employee_record add partition (dt='${date}') location “此处为A.employee_table在dt='${date}'分区的存储路径”
将数据灌入到新表中。
其中,存储路径和建表语句都可以用show create table A.exployee_table查看。
找到存储路径后,如果不知道该表分区是怎么存的,可以直接 hadoop fs -ls 存储路径 来查看。