Amazon s3 AWS管道中的PigActivity是否有办法从S3存储桶上创建的Athena表中读取模式
我有很多在prem集群上运行的传统pig脚本,我们正在尝试转移到AWS数据管道(PigActivity),并希望这些pig脚本能够从我的源数据所在的S3存储桶中读取数据。在Prem Pig脚本上,使用Hcatalog加载程序读取配置单元表模式。所以,如果我在这些S3存储桶上创建Athena表,有没有办法从pig脚本中的那些Athena表中读取模式?使用类似于hcatloader的加载程序 当前:下面的代码可以工作,但我必须在pig脚本中定义模式Amazon s3 AWS管道中的PigActivity是否有办法从S3存储桶上创建的Athena表中读取模式,amazon-s3,apache-pig,amazon-athena,aws-data-pipeline,Amazon S3,Apache Pig,Amazon Athena,Aws Data Pipeline,我有很多在prem集群上运行的传统pig脚本,我们正在尝试转移到AWS数据管道(PigActivity),并希望这些pig脚本能够从我的源数据所在的S3存储桶中读取数据。在Prem Pig脚本上,使用Hcatalog加载程序读取配置单元表模式。所以,如果我在这些S3存储桶上创建Athena表,有没有办法从pig脚本中的那些Athena表中读取模式?使用类似于hcatloader的加载程序 当前:下面的代码可以工作,但我必须在pig脚本中定义模式 %default SOURCE_LOC 's3:/
%default SOURCE_LOC 's3://s3bucket/input/abc'
inp_data = LOAD '$SOURCE_LOC' USING PigStorage('\001') AS
(id: bigint, val_id: int, provision: chararray);
%default SOURCE_LOC 'database_name.abc'
inp_data = LOAD '$SOURCE_LOC' USING athenaloader();
想要:
从雅典娜的桌子上读
Athena table: database_name.abc (schema as id:bigint, val_id:int, provision:string)
因此,寻找如下内容:因此我不必在pig脚本中定义模式
%default SOURCE_LOC 's3://s3bucket/input/abc'
inp_data = LOAD '$SOURCE_LOC' USING PigStorage('\001') AS
(id: bigint, val_id: int, provision: chararray);
%default SOURCE_LOC 'database_name.abc'
inp_data = LOAD '$SOURCE_LOC' USING athenaloader();
有读取雅典娜的加载工具吗?或者有没有其他解决方案来满足我的需求。请帮忙