我正在使用HDP 2.3
Hadoop版本 - 2.7.1
Hive版本 - 1.2.1
我使用
在hive中创建了一个表dev101create table dev101 (col1 int, col2 char(10));
我使用
插入了两条记录insert into dev101 values (1, 'value1');
insert into dev101 values (2, 'value2');
我使用
将数据导出到HDFSexport table dev101 to '/tmp/dev101';
然后,我使用
创建了一个新表dev102create table dev102 (col1 int, col2 String);
我使用
从/tmp/dev10
dev102
导入数据
import table dev102 from '/tmp/dev101';
我收到了错误:
FAILED:SemanticException [错误10120]:现有表与导入规范不兼容。列架构不匹配
然后我使用
创建了另一个表dev103
create table dev103 (col1 int, col2 char(50));
再次导入:
import table dev103 from '/tmp/dev101';
同样的错误:
FAILED:SemanticException [错误10120]:现有表与导入规范不兼容。列架构不匹配
最后,我使用完全相同的架构
创建表格create table dev104 (col1 int, col2 char(10));
导入
import table dev104 from '/tmp/dev101';
成功导入。
Hive是否需要Hive导出/导入中的确切模式?
答案 0 :(得分:0)
在Hive Export上,它会创建 _metadata 和数据目录,分别保存元数据和数据。
在Hive Import上,您需要新表(不存在于配置单元中)或具有完全相同元数据的空白表。