Hive:无法填充索引
Hive: can't fill index
我正在使用 Hive 14.0,并且在索引 table 时遇到了挑战。如果我想在没有 DEFERRED REBUILD 的情况下构建索引,Hive 不会为我创建索引-table。如果我将它与 DEFERRED REBUILD 一起使用,则会构建索引-table,但在 REBUILD 之后什么也没有发生。我的测试 table 将 myKey 作为 int 类型的键。 Table 存储为 ORC。
CREATE INDEX ix_test ON TABLE testtable(myKey) as 'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler';
什么都没发生...
CREATE INDEX ix_test ON TABLE testtable(myKey) as 'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler' WITH DEFERRED REBUILD;
ALTER INDEX ix_test ON testtable REBUILD;
看到索引table,但是没有数据。尝试在创建索引之前将数据放入并在创建索引之后加载数据(但在使用 REBUILD 之前)。效果一样。
期待任何人有想法。谢谢
我找到了。命令是 运行,但仅在 hive-shell 并且不使用蜂蜡。蜂蜡忽略重建命令。
我正在使用 Hive 14.0,并且在索引 table 时遇到了挑战。如果我想在没有 DEFERRED REBUILD 的情况下构建索引,Hive 不会为我创建索引-table。如果我将它与 DEFERRED REBUILD 一起使用,则会构建索引-table,但在 REBUILD 之后什么也没有发生。我的测试 table 将 myKey 作为 int 类型的键。 Table 存储为 ORC。
CREATE INDEX ix_test ON TABLE testtable(myKey) as 'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler';
什么都没发生...
CREATE INDEX ix_test ON TABLE testtable(myKey) as 'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler' WITH DEFERRED REBUILD;
ALTER INDEX ix_test ON testtable REBUILD;
看到索引table,但是没有数据。尝试在创建索引之前将数据放入并在创建索引之后加载数据(但在使用 REBUILD 之前)。效果一样。
期待任何人有想法。谢谢
我找到了。命令是 运行,但仅在 hive-shell 并且不使用蜂蜡。蜂蜡忽略重建命令。