如何使用HadoopMapReduce将数据从aws3导入HDFS



我知道Apache Hadoop提供了discp来将文件从aws s3复制到HDFS。但它似乎没有那么高效,日志记录也不灵活。

在我的项目中,每次文件传输到HDFS成功或失败后,都需要以我们定制的格式编写日志。由于数据加载量大,使用Hadoop MapReduce将aws数据加载到HDFS集群中肯定是最高效的,比如说我要写一个类似于discp的Hadoop MapReduce作业。

我的计划是让每个节点上的每个Mapper用aws Java SDK加载一个s3目录,因为有很多s3目录要加载到HDFS。有人能就如何实现这一目标提出一些建议吗?提前感谢!

您尝试过s3a吗?s3a是最初的s3n的继任者-消除了一些限制(文件大小)并提高了性能?另外,distcp的问题似乎是什么?您将哪个文件系统用于S3(s3n还是s3a?)?最近在distcp中已经做了一些工作——可能值得检查最新版本。

相关内容

  • 没有找到相关文章

最新更新