我看到Hive中有添加新列的选项[source] 但是,我有一个外部表与HBase映射,其中包含SERDEPROPERTIES、TBLPROPERTIES和STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'。 在设置了HBase的外部表之后,是否可以添加/修改列? 我只需要为新列使用SERDEPROPERTIES,还是需要重新创建整个表格?
当您尝试使用 ALTER TABLE xx ADD COLUMS( xx string); 时,会出现以下错误。SemanticException [Error 10134]: ALTER TABLE cannot be used for a non-native table hbase_cdr2 看起来似乎没有办法通过添加新列来更新现有表。但是您可以删除Hive表,创建一个具有所需列的新表。由于它是外部表,因此只需通过这样做来更新元数据。