1

我有很多在本地集群上运行的遗留猪脚本,我们正在尝试迁移到 AWS 数据管道 (PigActivity) 并希望使这些猪脚本可以从我的源数据所在的 S3 存储桶中读取数据。On-Prem Pig 脚本使用 Hcatalog 加载器来读取配置单元表模式。那么,如果我在这些 S3 存储桶上创建 Athena 表,有没有办法从 pig 脚本中的那些 Athena 表中读取模式?使用某种类似于 hcatloader 的加载器?

当前:下面的代码有效,但我必须在猪脚本中定义模式

%default SOURCE_LOC 's3://s3bucket/input/abc'
inp_data = LOAD '$SOURCE_LOC' USING PigStorage('\001') AS 
(id: bigint, val_id: int, provision: chararray);

想要:改为从 Athena 表中读取

Athena table: database_name.abc (schema as id:bigint, val_id:int, provision:string)

所以,寻找类似下面的东西:所以我不必在猪脚本中定义模式

%default SOURCE_LOC 'database_name.abc'
inp_data = LOAD '$SOURCE_LOC' USING athenaloader(); 

是否有读取 Athena 的加载程序实用程序?或者是否有我需要的替代解决方案。请帮忙

4

0 回答 0