繁体   English   中英

AWS中最简单的工具即可实现非常简单的ETL(转换)?

[英]Simplest tool in AWS for very simple (transform in) ETL?

S3中有大量文件,总计数十GB。 我们需要将它们转换为CSV格式,当前文件中的分隔符不是逗号。 通常,我会在使用sed的服务器上执行此操作,但我不想将文件传输到服务器,我想直接从S3中读取,逐行转换为CSV,然后将结果写回到新的S3文件中。

胶水似乎可以做到这一点,但我觉得学习曲线和完成这种简单任务的设置实在是太过分了。

有没有简单的方法可以执行诸如EMR或其他AWS工具这样的简单任务? 我们使用雅典娜,我想知道是否可以在使用雅典娜的SQL语句中完成? 谢谢

是的,这应该非常容易,并且您不需要任何外部ETL工具或胶水。 假设您有一个基于管道分隔文件的,名为“ cust_transaction_pipe”的管道分隔表,并且可以使用Athena查询该表而不会出现任何问题。 要将表转换为逗号分隔,只需使用以下查询:

create table cust_transaction_csv 
with (external_location = 's3://YOUR_S3_BUCKET_NAME/cust_tx_csv/',format='TEXTFILE',field_delimiter = ',')
as 
select * from cust_transaction_pipe

完成后,您可以检查指定的位置。 将以逗号分隔。 您可以在WITH()中指定许多其他选项。 有关完整的选项集,请参阅此处的Athena AWS文档链接。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM