Impala 最小 DDL
Impala minimum DDL
我知道我们可以创建一个 Impala table 像
CREATE EXTERNAL TABLE SCHEMA.TableName LIKE PARQUET
'/rootDir/SecondLevelDir/RawFileThatKnowsDataTypes.parquet'
但我不确定 Impala 是否可以从没有已知格式的文件(最好是文本文件)创建 table。所以换句话说,如果我只是使用 put 命令将一个随机文件转储到 hadoop 中,我可以在它周围包装一个 Impala DDL 并创建一个 table。谁能告诉我?
如果您的文件是换行符分隔的,我相信如果您使用 ROW FORMAT 子句提供列定界符,它应该可以工作,因为文本文件是默认格式。去掉你的 LIKE
子句,然后像这样为你的列选择名称和数据类型:
CREATE EXTERNAL TABLE SCHEMA.TableName (col1 STRING, col2 INT, col3 FLOAT)
'/rootDir/SecondLevelDir/RawFile'
row format delimited fields terminated by ",";
我知道我们可以创建一个 Impala table 像
CREATE EXTERNAL TABLE SCHEMA.TableName LIKE PARQUET
'/rootDir/SecondLevelDir/RawFileThatKnowsDataTypes.parquet'
但我不确定 Impala 是否可以从没有已知格式的文件(最好是文本文件)创建 table。所以换句话说,如果我只是使用 put 命令将一个随机文件转储到 hadoop 中,我可以在它周围包装一个 Impala DDL 并创建一个 table。谁能告诉我?
如果您的文件是换行符分隔的,我相信如果您使用 ROW FORMAT 子句提供列定界符,它应该可以工作,因为文本文件是默认格式。去掉你的 LIKE
子句,然后像这样为你的列选择名称和数据类型:
CREATE EXTERNAL TABLE SCHEMA.TableName (col1 STRING, col2 INT, col3 FLOAT)
'/rootDir/SecondLevelDir/RawFile'
row format delimited fields terminated by ",";