我想知道我们是否可以在EFS挂载文件上运行ETL作业..如果是这样的话?是使用Hive还是其他任何服务?我们的目标是将一个安装点中的所有文件减少到一个文件...并将该文件存储在s3中以便更好地处理
EFS本身并不包含特定的数据仓库产品。对于数据仓库和ETL,您可以选择在AWS环境中运行的要使用的内容。
关于你的问题:如果我理解正确,你想要连接或以某种方式将当前EFS安装中的所有文件组合到一个文件中并将其存储在S3中。
您没有提到您拥有的数据类型或要组合的文件类型。这对你如何做到这一点产生了巨大的影响。所以我将不得不提出一般性的建议。如果你有不同类型的数据,来自不同数据库的SQL表,文档,非sql数据;那么你需要确定如何组合这些数据。为此,您将看到可以容纳原始数据的数据集成解决方案。
亚马逊有一些不同的产品可以帮助这个过程,如Redshift,Athena,Snowflake和他们的ETL解决方案胶水。添加产品取决于您公司的需求和预算。
因此,更灵活的数据集成方法是使用ELT(提取,加载,转换)而不是ETL。基本上,您将在S3实例上创建适当的文件。然后,您将一次一个地提取EFS上的每个文件,并将它们加载到您的S3文件中。然后,当您查询S3文件中的数据时,您将在查看查询结果之前执行所需的任何转换。这是一篇文章,更详细地解释了差异:https://blog.panoply.io/etl-vs-elt-the-difference-is-in-the-how。
如果您想调查选项,有一些供应商支持ETL流程,如Talend,Hadoop / Hive / Spark,Teradata和Informatica。