Amazon web services 可以创建只有特定列的雅典娜表吗?
我有一组文件的列比我们实际需要的多。其中,包含的列和顺序可能是可变的。使用此表创建:Amazon web services 可以创建只有特定列的雅典娜表吗?,amazon-web-services,aws-sdk,amazon-athena,Amazon Web Services,Aws Sdk,Amazon Athena,我有一组文件的列比我们实际需要的多。其中,包含的列和顺序可能是可变的。使用此表创建: CREATE EXTERNAL TABLE `test1column`( `column3` string) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' STORED AS INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT 'org.apache.hadoo
CREATE EXTERNAL TABLE `test1column`(
`column3` string)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
STORED AS INPUTFORMAT
'org.apache.hadoop.mapred.TextInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION
's3://bucketpath/folder'
TBLPROPERTIES (
'has_encrypted_data'='false',
'transient_lastDdlTime'='1524150460')
雅典娜只是拉入第一列,因此输出结果是:
column3
---------
column1
val1
val2
val3
我以编程方式创建这些表,这样我就不必通读每一个列名,也不必创建一个包含比我需要的更多数据的表。如果不能用Athena将某些列映射到一个表中,那么我想我必须这样做。我认为不行,你必须创建一个包含所有列的表,然后在从该表中选择数据时,你可以指定列。是的,我一直在查找Hadoop.Hive(Athena的基础)的相关信息而且SerDes似乎没有这种功能