我们在蜂巢中有像贝娄一样的表,
create external table caremanagermongo(
id int ,
cregiver_id int ,
patient_id int ,
caremanager_id int ,
provider_id int ,
is_active int ,
createddate timestamp ,
createdby String
);
如果我们需要通过添加
来更改此表stored by "org.yong3.hive.mongo.MongoStorageHandler"
with serdeproperties ( "mongo.column.mapping" = "id,cregiver_id,patient_id,caremanager_id,provider_id,is_active,createddate,createdby" )
tblproperties ( "mongo.host" = "localhost", "mongo.port" = "27017",
"mongo.db" = "careticker", "mongo.collection" = "caremanager" )
如何可能,请您为此提供解决方案
答案 0 :(得分:1)
步骤1:当您创建外部表而不使用存储的时,则它是 - 外部原生表
步骤2:您正尝试使用存储的方式更改它 - 使其外部 - 非原生。 (根据我的理解,这是不可能的)
根据我的理解,无法将原生转换为非原生。
顺便说一句,非本地表尚不支持ALTER TABLE,根据cwiki> hive> storagehandlers
希望这有助于:)