Hadoop Hortonworks(HDP)到Cloudera(CDP)迁移后无法创建托管配置单元表

Hadoop Hortonworks(HDP)到Cloudera(CDP)迁移后无法创建托管配置单元表,hadoop,hive,hdfs,cloudera,cloudera-cdp,Hadoop,Hive,Hdfs,Cloudera,Cloudera Cdp,我们正在测试Hadoop应用程序,作为从Hortonworks数据平台(HDPV3.x)迁移到Cloudera数据平台(CDP)7.1版的一部分。在测试过程中,我们在尝试创建托管配置单元表时发现以下问题。请就可能的解决办法提出建议。谢谢大家! 错误:编译语句时出错:失败:执行错误,从org.apache.hadoop.hive.ql.ddl.ddlstask返回代码40000。MetaException(消息:托管表的位置应位于托管仓库根目录或其数据库的managedLocationUri内。托

我们正在测试Hadoop应用程序,作为从Hortonworks数据平台(HDPV3.x)迁移到Cloudera数据平台(CDP)7.1版的一部分。在测试过程中,我们在尝试创建托管配置单元表时发现以下问题。请就可能的解决办法提出建议。谢谢大家!

错误:编译语句时出错:失败:执行错误,从org.apache.hadoop.hive.ql.ddl.ddlstask返回代码40000。MetaException(消息:托管表的位置应位于托管仓库根目录或其数据库的managedLocationUri内。托管表的位置无效:hdfs://cluster/prj/Warehouse/Secure/APP/managed_tbl_a,管理仓库:hdfs://cluster/warehouse/tablespace/managed/hive) (状态=08S01,代码=40000)

DDL脚本

create table if not exists MANAGED_TBL_A
(
   name string,
   id varchar(20),
   created_on TIMESTAMP,
   created_by VARCHAR(10)
)
partitioned by (partition_date varchar(20))
clustered by (id) into 5 buckets
stored as orc
location '/prj/Warehouse/Secure/APP/managed_tbl_a'
tblproperties ('compactorthreshold.hive.compactor.delta.num.threshold'='1','compactorthreshold.hive.compactor.delta.pct.threshold'='0.5','transactional'='true','orc.create.index'='true','orc.compress.size'='8192');

hive.metastore.warehouse.dir
是仓库根目录

创建数据库时,为托管表指定
MANAGEDLOCATION
-位置根,为外部表指定
location
-根

MANAGEDLOCATION
位于
hive.metastore.warehouse.dir中

metastore.warehouse.tenant.colocation
属性设置为
true
可以在仓库根目录之外为托管表(MANAGEDLOCATION)提供一个公共位置,从而为设置配额和其他策略提供基于租户的公共根目录


请参阅本手册中的更多详细信息:。

非常感谢。在设置指向表位置根目录的MANAGEDLOCATION后,它起了作用!!(alter database testDB set MANAGEDLOCATION'hdfs://cluster/prj/Warehouse/';)