我使用 CDH 4.7 创建了一个简单的四节点 Hadoop 集群,包括 Impala 1.1。我能够将 CSV 文件复制到 HDFS 并按照教程中的描述创建和查询 Impala 表。但我无法在不同的数据节点上查询同一张表:
[example.com:21000] > select * from tab1;
Query: select * from tab1
ERROR: AnalysisException: Table does not exist: default.tab1
我想也许我需要CREATE TABLE
在第二个节点上重新发出语句,但是它突然知道表在那里:
[example.com:21000] > CREATE EXTERNAL TABLE tab1
> (
> id INT,
> col_1 BOOLEAN,
> col_2 DOUBLE,
> col_3 TIMESTAMP
> )
> ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
> LOCATION '/user/dwheeler/sample_data/tab1';
Query: create EXTERNAL TABLE tab1
(
id INT,
col_1 BOOLEAN,
col_2 DOUBLE,
col_3 TIMESTAMP
)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
LOCATION '/user/theory/sample_data/tab1'
ERROR: AlreadyExistsException: Table tab1 already exists
所以它知道它在那里,但我不能查询它---或刷新它:
[example.com:21000] > refresh tab1;
Query: refresh tab1
ERROR: AnalysisException: Table does not exist: default.tab1
是否需要执行一些命令才能让所有impalad
数据节点上的 s 运行以创建可查询的表?